Monitoring multiple batteries with Cerbo/Ekrano GX using CAN-bus BMS HV Protocol

I have several high voltage batteries connected in parallel. I’ve written a protocol translator that collects metrics and alarms from each of the BMS and pushes them to my Ekrano GX via the VE CAN 2 port using the Victron CAN-bus BMS HV Protocol. This is working well, I can see all the details I need, however the GX and VRM only ever show metrics and alarms for the first battery.

Based on the HV protocol itself, I was expecting to be able to see information specific to each battery, as the CAN ID includes a battery ID, ranging from 0 to 15. As such the protocol allows a full set of parameters, alerts, metrics, etc to be sent for every battery I have.

Can anyone confirm if the GX can only ever show details for a single battery (or aggregated/averaged details to appear as a single battery)? Can VRM somehow show more details that aren’t displayed on the GX?

Here’s an overview of the CAN IDs I’m sending:

Battery Module 0
0x0351
0x0355
0x0356
0x035A
0x0372
0x0373
0x0379
0x035F
0x035E

Battery Module 1
0x1351
0x1355
0x1356
0x135A
0x1372
0x1373
0x1379
0x135F
0x135E

etc…

i can´t help you with the high voltage batterym have 52V myself

Here i´m using dbus-serialbattery - this shows values for each of my 2 banks, also individual alarms

So it musst be defietly somehow possible

Did you try NodeRED / virtual devices?

This likely will work better using nodered and its virtual battery functionality.
You will still need to translate the can packets but socketcan makes this straightforward.
Several other projects doing this.

Thank you both for the tips, I ended up using a python script on the GX to receive, interpret and send all the data to d-bus. I now have details for all the individual batteries, plus a nice aggregated “virtual” battery for the main display. Problem solved.