diy solar

diy solar

EG4 LL BMS to Victron Cerbo

It is just a matter of time before one of those EG4-LL batteries would set someone's house on fire and they will find themselves out of business due to a class action lawsuit. See my post:

I’ve got three EG4-LL v1s just like you, connected to a USA split-phase Victron Quattro/Cerbo GX/MPPT setup.

After the first week with the batteries last September, I decided to lower the float/absorption voltages to 55.5 V on the Quattros and MPPT. I raised that to 56.0V now, but will never ever push them any higher due to excessive imbalances i saw during the early days.

All of the cells are nicely balanced now, but it took many many months. I have not been checking too closely as BMS-Tools is, uh, not very inspiring to say the least.

I’m not interested in squeezing 5% more performance out of them at this point, but I am considering making the CAN bus cable and seeing what the Cerbo does with the BMS information. But given that the BMS cutoff voltage level is insanely high, and we don’t have the password, I‘m not sure what the benefit would be at this point.

PS Thanks for the clear photo you provided on Victron’s support pages, I can see the proper dipswitch settings on the eg4-lls.
And thanks for documenting your experiences here.
I’ve installed a smoke alarm directly above the battery rack.
 
Last edited:
After some time away from this, I came back to this and finally got it working!

I have an EG4 llv2 48V battery.

I am using a raspberry pi 3 as a cerbo.

I have an Innomaker USB to Canbus cable, with a 9 pin serial interface.

I have an RJ45 to 9 pin serial adapter, which allows me to plug in the pins however I see fit.

Taking a standard RJ45 Ethernet cable, and plugging it into the Canbus port on the battery, I plugged the other end into the RJ45 to serial adapter.

On the Innomaker, CAN-H is pin7, CAN-L is pin2, and GND is pin6.

Knowing that CAN-H is pin4 and CAN-L is pin5 and GND pin6 on the battery, I routed the pins on the serial adapter. I left the others unplugged.

RJ45-->serial
4-7
5-2
6-6

At this point, the pi, after plugging it all in, the pi knew it had a can0 interface, but was giving me errors. Turns out the default bitrate on the USB can interface is wrong for the battery. In an ssh session to the pi, I did:

can-set-rate can0 500000

and 5 seconds later, the battery showed up in the GUI!!!!


I created /data/rc.local with 3 lines:

#!/bin/bash
sleep 15
can-set-rate can0 500000

Then,

chmod 755 /data/rc.local

Now, 15+5 seconds after a boot of the pi, the battery shows up!

I had to add the sleep as apparently the can interface takes awhile to start up after a boot.

There is probably a
better/official way to set the bitrate that I will ask Victron.

But for now I am happy.

Links for the Innomaker and the RJ45 to serial adapter are here:



Note: I had already set the 'inverter' protocol to Victron on the battery.

And now I do not need a battery shunt!
 
Last edited:
I do not need the script on the system.

All I need to do is set can bus profile in the GUI to Can Bus BMS 500 in:

Settings->Devices->can0->Can Bus BMS 500.

And again, I do not need a battery shunt. ?
 
I do not need the script on the system.

All I need to do is set can bus profile in the GUI to Can Bus BMS 500 in:

Settings->Devices->can0->Can Bus BMS 500.

And again, I do not need a battery shunt. ?
Thank you cdsolar for the excellent documenting of your experience!
 
Back
Top