DIY Serial battery driver for Victron GX

It’s working! Thanks for the pointers.

I was working with v2.51 factory reset version Which seems a bit silly in hindsight.

Updating to v2.72 and/or paying closer attention to restarting seems to have done the trick :smiley:

1 Like

Glad it is working now. Which BMS are you using? JBD or Daly?
The latest V0.6 beta release also has support for the ANT bms and MNB bms, but you are not using that version :slight_smile:

That’s exciting - nice work.
It’s a JBD BMS.

1 Like

A new version v0.6 has been released.
It includes support for the ANT bms & MNB bms.
It also add units to all values and remaining Ah capacity if the battery supports it.

1 Like

A new version v0.7 has been released
It now include support for the Daly Sinowealth based BMS ( normally the 3/4 cell Daly versions) and also the JKBMS / Heltec BMS

There is a new beta v0.8beta1 that include Venus OS v2.80 compatibility changes for the driver.

To upgrade a V2.72 / V2.73 device you will need to update the battery driver first, then update the Venus firmware to 2.80 and the battery will still be there on V2.80.

(You can still upgrade the driver after the firmware, but then the battery will not offline until the new driver is installed and device rebooted)

I’ve searched but can’t find an answer.

Is this driver only for lifepo4 or also for lithium 18650/21700?

And on the other hand, of the compatible bms which is more recommended for functionality, compatibility and price?

That is a very good question. I’ll have to update the wiki and add the detail for this.
The driver is set up for LiFePo4 (3.2V per cell), but othe lithium cells will also work. You will need to edit the and change


to something the othe lithiums will handle like:


That is the only change that is needed.

As to which BMS I would currently recommend either JBD or JKBMS. Both work very well and have good support in the driver. JBD is more flexable in the setup and JKBMS just works and has active balancer. ANT is also good, but setting up the PC link takes a bit more effort.

I’m still wrong but my intention is to use a bms to monitor the cells and that it is the victron inverter that cuts the charge or discharge depending on the voltage of the complete battery or if a series reaches the limit and that the bms does not intervene in this aspect and thus be able to put a low-power and economical bms.
The inverter that I am going to put will take a maximum of 50A continuously and peaks of 80A but, can I put a bms of 30A or less and not make this current pass through it?

for example is this 20 A valid for the multiplus II 48/3000?

Yes ,but No. Don’t

You are correct in that the driver will give the Victron system (that can be the Inverter and/or the MPPTs) the data and instruction of how much to charge and discharge the battery and when to stop.

But the Victron system is not responsable for the protection of the battery. That is the job of the BMS. And as such it can (and will) still charge/discharge in some instances even if the battery tells it not to. Some micro charges always flow. More details in this thread.

The short answer: Get the correct BMS and don’t bypass it’s protection. Burning down your house is not worth the saving for a smaller BMS and at 1/2 the price of 1 cell in your battery. Not worth it.


Has anyone tried the beta with Venus OS v2.80? It’s been running on my setup using V2.8 large image, but I wonder if anyone else has had success on a Venus OS v2.80 setup.

If you want to just test and revert to V2.72 you can just switch back to that version in the firmware menu and all your data/settings is kept.

I upgraded my Rpi to v2.80~7, BMS is not appearing.

Looking why it is not picking up the BMS.


I’m stabbing in the dark here:

@400000006145d9bb0a0f6e8c INFO:root:failed to identify battery at 10 : failed to get slave id from 10 : Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 2 bytes (0 received)
@400000006145d9bb0a204edc INFO:root:found 0 batteries

After the Venus OS upgrade, and the new driver, my Victron RS485 to USB and the RS485 to USB failed to connect BMS to the Pi.

Don’t want to reboot the BMS as the carefully crafted SOC will be “lost” … Edit: … had to reboot BMS, SOC was rested. Still no luck.

Now to figure how to get the older version driver back … Edit: Ok, got it back and working under v0.7.1, and v2.73 OS … let’s try again v0.8beta1 and v2.80~7 …

1 Like

Ok, at last, I got it working … had to delete all the files that were downloaded prior, previous attempts, before if “took”.

Maybe an idea to delete “older” files with a new install?


Fixed … the beta 1 to B1 … :wink:

1 Like

I’m back on Monday. Then we can look. There are some settings that only get applied when you start up (reboot) that might be the cause

What I think happened:
The previous tar file was under root called: venus-data.tar.gz

Then one upgrades, new version file is downloaded, but now it is called: venus-data.tar.gz.1 and 2 and 3 and so forth … hence BMS not being picked up as it kept on installing the “old” version.

Once I saw those files there, deleted them, it worked at the first attempt.

Ps. Had to Google how to do a Dir, delete a file, on Linux. :stuck_out_tongue_winking_eye:

1 Like

What am i missing here?

my system Venus OS large 2.8 large V20 on raspberry pi to victron 75/15, visible through remote console on LAN. all working.

JBD bms connected to raspberry pi usb with UART box that came with the JBD bms.

v0.8beta 1, copied venus-data.tar.gz to root of usb stick

insert usb stick then reboot venus OS on raspberry pi , but nothing happens. no extra devices listed.
I’m sure it user error but i cant see it , any suggestions?

Just to confirm you are using a FAT32 USB stick?
And you are using the latest beta build? Venus OS v2.8 is only supported in the v0.8beta1 build at this stage.

It was my first install so I went back and started a fresh install to venus v2.7 OS and a clean usb stick with vO.7 all works great. fantastic to see all my data together. Back to work tomorrow so I will try an update to v2.8 OS and v0.8beta1 later in the week.
thanks for a great driver

1 Like