CAN communication between battery cluster and Arduino

Hello everyone,

I have a question regarding the CAN bus communication. I have six battery cluster and each cluster consists of 14 batteries and one high voltage box. So, in total 6 HV boxes and 84 batteries. All clusters are the connected to a central Battery Management Unit (BMU). The high voltage boxes has CAN port, as shown in the image, a PC can be connected to one of the high voltage boxes through a CAN analyzer.
Using the software on the PC, provided by manufacturer, one can see the status of all 6 clusters like their voltages, cell voltages, SOC, SOH, etc. We can also adjust the values using the software, for instance, one can calibrate the SOC. And that is exactly what I want to achieve using an Arduino. The SOC of each cluster is measured independently. And it can happen that the SOC of the clusters diverges to different values. For example, one could be 50% so other could be 40% etc.
What I want to do is to read one cluster and then set the SOC of all other clusters with the same value. I want to know if it is possible to do it like that. I have experience with CAN and don't know how to achieve it. Attached is the protocol of the clusters. Looking forward to your answer. Thank you


BMS CAN Communication Protocol_V1.7.pdf (998.6 KB)

reading that datasheet, its abit unclear to me how to setup the CAN message "BMS System Controls" to Tx the request various control operations.

However, the datasheet also suggest that the BMS should be broadcasting messages. do you have a log of that (ideally thru so arduino setup)? do you have an arduino setup already to monitor the CAN bus?

if yes, could you please share as it would be insightful on how to read the datasheet.

also on the datasheets it does not mention anything about "Cell Balancing" so not sure if your BMS is capable of doing that.... :thinking:

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.