Error code 5 is a command format error returned from the BMS, which probably means it didn't receive the query correctly. The most likely cause is that something else is accessing the serial device on your PI ( the script does no locking. ) If you're 100% sure that this isn't the case, check the...
It will almost certainly be because you've got two devices on the same line - the script makes no attempt to perform any arbitration of the bus.
As I mentioned it was only ever meant as a proof of concept - I'm actually using it ( or a version of it ) for myself but I have a 1:1 connection so...
Looks as though something else might be using the serial port and interfering with the data. Do you have any remote serial software running ( such as ser2net ) or is anything else using it? What does
sudo lsof | grep ttyUSB0
show? ( Obviously if your BMS isn't on ttyUSB0 change to the correct...
There are no real usage instructions other than what I wrote in the first post. The only data it decodes is the battery data, so if you run
./query_seplos.sh 4201
then you should see human readable information about the status, including cell voltages and temperature.
As I mentioned, it's not...
In case anyone's interested, I've created a quick and dirty shell script to read the telemetry data from a Seplos BMS here. It should work on something like a Raspberry PI with a standard Debian install, with the BMS connected via a USB to RS485 serial. You will need to edit the serial device (...