OK, so on USB0 you have this running (although 2 seconds is a bit soon… it may still be doing hardware detection this early):
/service/dbus-serialbattery.ttyUSB0: up (pid 1877) 2 seconds
And on USB1 you have:
/service/dbus-serialbattery.ttyUSB1: up (pid 1676) 82 seconds
One of those devices (I’d guess USB0) is the MPPT, but it is being served by the wrong driver and therefore it is not working. @Louisvdw, are you sure your driver correctly terminates if the device on the other end is not the expected BMS?
After many tests, I see the following problem:
Only with the ve-direct connected to the raspberry pi, this is the output from USB0:
root@raspberrypi2:~# svstat /service/*ttyUSB0
/service/dbus-serialbattery.ttyUSB0: up (pid 1427) 1 seconds
this should be:
/service/vedirect-interface.ttyUSB0: up 31 seconds
I disconnect the vedirect USB and connect the USB Sbattery and I have the same result.
this is normal and it works
root@raspberrypi2:~# svstat /service/*ttyUSB0
/service/dbus-serialbattery.ttyUSB0: up (pid 1610) 65 seconds
root@raspberrypi2:~# svstat /service/*ttyUSB1
/service/*ttyUSB1: unable to chdir: file does not exist
no results on USB1 because nothing is connected
I delete the serial-starter file and reboot, I have this result:
root@raspberrypi2:~# svstat /service/*ttyUSB0
/service/gps-dbus.ttyUSB0: down 68 seconds
/service/vedirect-interface.ttyUSB0: up (pid 1353) 61 seconds, normally down
charger controller work ok on devide list
It is a clean installation of the version venus 2.60 after formatting the SD. The only thing that is installed is for the original 7 "raspberry display, nothing else
More test:
without any USB connected gives this result:
/service/dbus-serialbattery.ttyUSB0: down 11 seconds, normally up
root@raspberrypi2:~# svstat /service/*ttyUSB0
/service/dbus-serialbattery.ttyUSB0: down 13 seconds, normally up
Solved
rename USB TTL serial converter. manufacturer, product description and serial number VE series with FT prog.
Now it works,
not properly programmed VE.Direct USB cable
iManufacturer FTDI
iProduct FT232R or USB TTL UART
iSerial FT6IQB5W
I have tried another USB Serial cable and it does not work for me. that does not allow to change the name or the description, you change it but it is not stored in the eeprom, and this cable does not work with raspberry pi. I have ordered the ft232r chip to replace and use them.
There are models that cannot edit the FT232R chip EEPROM, these are not valid.it’s just some chinese models
It is very possible that some USB Serial converters give problems.(all USB converter FT232R chip) with windows the USB converter works correctly.
checked on two different SD venus v2.60, they all work.
1 Like
The driver will send a serial command to the BMS for it’s hardware version.
If it does get a reply and the reply is properly terminated then it will stick to that serial device. It will try this 3 times (0.5 seconds apart)
However if after 3 attempts it does not get an reply or the reply is not correct it will exit the driver.
Log when it fails and exit:
INFO:main:dbus-serialbattery
ERROR:main:>>> ERROR: No reply - returning
ERROR:main:>>> ERROR: No reply - returning
ERROR:main:>>> ERROR: No reply - returning
ERROR:main:ERROR >>> No battery connection at /dev/ttyUSB2
Log when it does connect successfully:
INFO:main:dbus-serialbattery
INFO:main:SP15S008C-L15S-100A
INFO:main:Battery connected to dbus from /dev/ttyUSB2
The USB serial cable’s manufacturer and product description are used by the venusOS to know which drivers to start for that device. If the name was incorrect then it might not start the correct driver.
1 Like
Confirmed, the USB cables that you can not modify the EEPROM to change the manufacturer name and description, do not work.
The Venus OS has some trickery built in to recognise the USB device and try the right kind of software on the device it expects to be at the end of it. When you use genuine cables, no problem. When you start using cheap cables, sometimes it works, sometimes not.
You see, all the cables used by Victron has an ftdi chip inside: The RS485 cables, the VE.Direct ones, and even the MK3-USB (for those who use that). If you use a generic usb-serial converter from eBay (especially if it is one of those china clones), there is a good chance it might not work.
It can be made to work, of course, but you need to know how the system goes together. If you contact support… they will tell you to buy the proper cable…
I remember that one day when a tech spent almost the whole day trying to work out what is going wrong, and then asked for a picture of the device… and got this…
1 Like
This I have not tried, but the MK3-USB does not work right ?, with an FTDI RS285 ???
I have the original MK3, but have not tested with an FTDI Standart
the MK3 cable carries the FTDI chip plus a PIC microcontroller to convert the protocol to VEBUS
I understand that the MK3> USB is not possible to use a generic FTDI.
The MK3 cable will work for connecting to your Multiplus inverter.
It will not work for the serial battery as it is not a standard RS232 or RS485 even though it does use the FTDI chip.
Correct. But what I mean to say is that because everything uses the same generic chip, Venus relies somewhat heavily on detecting the original cable by it’s programmed name. When you use a generic usb-serial cable, sometimes it works (it will assume it is a solar charger), and sometimes not.
If you wanted to prove a point, you could There is an older mk2.2b dongle which is rs232 to vebus. It’s no longer manufactured (I believe) but there is still stock. You could in theory cobble together your own thing that terminates in a generic ftdi… but excluding the obviously pedantic example here, you are right, that is not generally something you need to worry about.