Reading data from BMS (via RS485)

Joined
Feb 26, 2018
Messages
154
How can a computer read data fra a BMS that can communicate via RS485?

The BMS can provide data such as SOC, SOH, Cell voltage etc.

Let's say i get an USB-RS485 converter then i guess there can be communication.
But how does the computer get the data?
 
Just like any other device you want to communicate with, you'd need the software from the manufacturer of the device to talk to the device over the cable (that you would build or buy).

Or you would need to get the communications protocol the device manufacturer used (the device command set to send to it to get data back, and what the returned data means), and then write your own software to get the data and display it. (or use a terminal program to manually send the commands and see the data on screen then hand-translate it for each command and set of returned data).
 
I have not seen any information provided.
Only thing i have seen is this device that can read the data from the BMS.
Which is nice. But would rather know how to do it with my computer
2018010950696061.png
 
If the device is a common one for this purpose, not custom-made by the BMS company for themselves, then the source for them (original device manufacturer) may have the information needed to create yourself a computer program to ask for and interpret the data.


If the manufacturer of the BMS (or the device) can't or won't provide the information, and no one else has already done this, you could use one of the devices and a terminal program on a computer fed by the USB-485 cable wired to "sniff" the data stream back and forth from device to BMS, and figure out which parts of the data stream mean what, then experiment by sending some of the commands you find to the BMS and what data you get back. It's a tedious process, one that I've not done for this kind of thing, but others have, so it's possible to do.

Alternately, if the BMS has a standard MCU on it with a documented command set for talking to it over the port, you might be able to use that as a starting point (but my guess is that the software for that stuff is made by the BMS company, so the MCU documentation won't have any info on it).

If this BMS is basically the same, with the same features and communications, as another BMS by some other manufacturer, you might be able to get the info (or software, etc) from that manufacturer and see if this BMS responds to it.


I wish it was simpler than that...but it's pretty much the same problem as controllers and their displays: They use basically the same wiring and hardware connections, and data protocols, but not the same data formats or contents, so they are not all inter-compatible, and there's no single "standard" out there that lets someone communicate with a controller via their own display. People have, however, sniffed the data between a working display/controller setup for all the various things it can show or command, and then taken this to make their own display, or their own software for a display, to work with it.

So you might find some info on how to do this in the various open-source display threads (not sure if it's in there or not, but it's a place to start).
 
Back
Top