How to Connect SBMS to Victron Cerbo GX

612 views
Skip to first unread message

Chris R8

unread,
Oct 10, 2023, 8:42:53 PM10/10/23
to electrodacus
Hi all,
I wanna connect the SBMS to my cerbo GX. How can I do that?
The 3rd party BMSs normally show up in Cerbo like a Battery monitor. Is there a way I can get the cell voltages on my cerbo. Its all installed in my catamaran and Victron Cerbo integrates then nicely with eg the raymarine chartplotter showing me all data at helm station and on my status monitor (yet to build but I need data in cerbo for that).
Till now I have the SBMS running on an old Ipad1 via Web interface but that is a) very unreliable as it often crashes and b) the cerbo can do all sorts alarm and automation plus all integrated. SBMS is installed with Victron equipment in a locker.
THANKS.

Helge Flataker

unread,
Oct 12, 2023, 12:28:59 PM10/12/23
to electrodacus
Not a trivial task, but you could probably adapt https://github.com/Louisvdw/dbus-serialbattery to do this if you have decent programming experience.. If not contact the author and he might be willing to put in the work for a donation
I am not affiliated with the project in any way, just been eyeing it for a while.

Chris R8

unread,
Oct 13, 2023, 6:36:25 PM10/13/23
to electrodacus
Yes I am aware and asked Louis, if more would vote for it he would do it.

Peter

unread,
Sep 21, 2024, 7:00:44 AM9/21/24
to electrodacus
Have you found another solution for this? 
Where to vote for it? SBMS doesnt seem to be listed on github? 
I havent got the victron stuff to play with it, so i am just scouting different paths...

wmckeenster

unread,
Sep 21, 2024, 10:58:09 AM9/21/24
to electrodacus
I will contribute big time (assuming USB) as I'm tired of the unreliable Wifi connection and love the Victron online metrics. 

How do we make this happen?

Dacian Todea (electrodacus)

unread,
Sep 21, 2024, 11:45:10 AM9/21/24
to electrodacus
All source code for the SBMS is linked in the user manual last page and it is hosted on my website.
The data sent over USB is described in the user manual and if you have any extra questions just let me know.
At the beginning of summer I wrote some small applications in C that read and store the compressed USB data to a file and another one that  converts that data and stores it in a csv.  There is also one that plots that data.
I just did not had time to upload all that and explain how it works.
You should find how the conversion from compressed USB data is done. The USB data is sent by SBMS at a fixed interval you set in the SBMS menu so no request is need you just need to read the data and store or do whatever you want with it.
Data is just 60 bytes and contains all the SBMS0 measured data like all cell voltages, current measurements, temperature ....
I attached the convert2.c file.

So in Linux:

You just connect the SBMS0 to computer USB (USB micro to USB A cable) set the SBMS0 on UART and 115.2kbps
Then open a terminal and check that cable and connection is good

lsusb  and in the probably long list you should see
"QinHeng Electronics CH340 serial converter"

Then dmesg | grep tty and you should see
"usb 3-4.4: ch341-uart converter now attached to ttyUSB0"

So in this case is ttyUSB0 the equivalent to COM1 on windows.

Next you need to set the port speed in command line  (make sure SBMS0 is set to USB not WiFi and the speed is set to 115200)
stty -F /dev/ttyUSB0 115200 cs8 -cstopb -parenb

Now you can test if you receive data (best to set Log interval to 1s in SBMS0 UART settings while testing)
cat -v /dev/ttyUSB0
and you should see the data every second (assuming SBMS0 is set to output data every second as you can set any value between 1 second and 4 minutes in one second increments)
"
#$$#%T#TG|H.H<H&H.H.H'H+*?##-##*#####################$@5%N(
#$$#%U#TG|H.H=H&H.H.H'H,*=##+##%#####################$@/%N(
#$$#%V#TG|H.H=H&H/H.H'H,*8##-##&#####################$@/%N(
#$$#%W#TG|H.H=H&H.H.H'H,*:##+##%#####################$@.%N(
#$$#%X#TG|H.H<H'H.H.H'H+*:##+##%#####################$@.%N(
#$$#%Y#TG|H.H<H'H.H.H'H+*=##+##%#####################$@2%N(

"
You can use Control  and C to stop this and if you want to save all this to a file you will use
  
cat -v /dev/ttyUSB0 -> yourfile.txt

Now that you have the file with the logged data you can convert it to .csv using the converter I will provide soon (I do not have a name for it but say it is "convert")
You will provide the input file and how you want to name the output file

./convert2 yourfile.txt yourfileconverted.csv
You will need to compile the convert2.c but I guess you are more interested in the source to write your own program.
convert2.c.zip

Dacian Todea (electrodacus)

unread,
Sep 21, 2024, 11:48:05 AM9/21/24
to electrodacus
Here is an example of the converted data (csv file) opened in a spreadsheet.
calc.png

Dacian Todea (electrodacus)

unread,
Sep 21, 2024, 11:49:27 AM9/21/24
to electrodacus
calc.png

wmckeenster

unread,
Sep 21, 2024, 12:06:34 PM9/21/24
to electrodacus
Thank you Dacian for the info and quick reply! Unfortunately I'm not a coder but I am willing to contribute resources and $ to make this happen and Im sure Im not alone. Who can and will step up to get this done? The SBMS community needs this BADLY and Im sure alot more SBMS0's will be sold if there is Victron integration.

Lets get this done SBMS community! Reach out if anyone has the skills to get this done.

On Saturday, September 21, 2024 at 8:49:27 AM UTC-7 electr...@gmail.com wrote:
calc.png

Dacian Todea (electrodacus)

unread,
Sep 21, 2024, 12:42:54 PM9/21/24
to electrodacus
Not sure if there are that many interested in Victron integration.
The SBMS already measures everything with higher accuracy.
For example I have the Victron MPPT100/50 that I tested against the DSSR50 as a comparison a few months ago.
The SBMS0 measures battery current and PV charge current already so it will know the PV current the battery current and calculates the Load current.
If I where to read the data provided by the Victron MPPT 100/50 then it will not provide any extra information over what SBMS0 already offers.
The Victron MPPT 100/50  can read the total battery voltage, and PV current both of witch SBMS0 will do with better resolution and more accurately.
Same will be the case with a Victron Inverter where inverter can provide the AC Load current and battery voltage.   The SBMS0 will measure battery voltage at the battery terminal without the voltage drop on the inverter cable and will calculate the DC Load current much more useful than just the AC Load current and also with higher resolution and accuracy.


Now in terms of battery protection using the EXT IOx on SBMS0 will be much more safe especially in an OFF grid application  as Loads and charge sources will be turned OFF fully instead of using some serial communication protocol where devices will need to still be active to listen for serial commands so they can not be fully turned OFF and can over-discharge and damage the battery. For a grid connected battery is not such a problem as you can always charge the battery from grid if it gets over discharged.

I got some used mini computers similar in performance and power consumption with a Raspbery Pi but they are Intel X86. Those have two Display port output so a large monitors can be connected and I will write an app for that so it can display all the SBMS0 info connected to it over USB.
I only looked at what sort of graphic I can use I have not started working on that. The minicomputers with a small Linux disto installed and the app that I need to find the time and write will be available for 79CAD maybe in winter or spring.
This was for those few people that asked for data to be seen on a larger screen. It was less expensive to recycle some old mini computers that build a custom device with some fixed screen size. This way people can install any monitor size they want.

This is just a screenshot of me playing with the graphic in Linux and bench-marking the performance.

Screenshot at 2024-09-21 10-26-44.png

wmckeenster

unread,
Sep 21, 2024, 1:20:00 PM9/21/24
to electrodacus
K now you are talking about some exciting stuff Dacian! I pray you get this done and I will buy more SBMS's for this reason. I agree that it is risky using serial communications for charge/load but the ability to "see" the SBMS on a big screen and remotely is paramount to the SBMS being the best BMS on the market. Victron integration would be nice for the stored metrics and history and people with Victron equipment so all info is available on one slick interface.

Thanks again for the exciting news, cant wait!!

Wayne

Chris R8

unread,
Sep 23, 2024, 6:24:20 AM9/23/24
to electrodacus
Darcian and all,
Victron or home assiasstant integration is extremely important to have eg remote monitoring in Victron VRM and/or home assistant. As Darcian explained the ExtIO are safer then eg a Victron serial communication, that’s why I let the SBMS do all the security cutoffs. But on top of that I like to control and steer the switch on or off of equipment like water heater, watermaker….based on cell voltages, not only on SOC to optimize battery and solar usage and have warnings sent when critical SOC or cell voltages levels are reached. the SBMS has simply too less EXTIO to do all that steering or to issue warnings and that’s much easier done with home assistant and/or Victron OS done. But for that I need the cell levels and SOC.
I am liveaboard on catamaran doing a 10 years world circumnavigation and compared to an offgrid installation where you just sit in the dark and eg wait till sunrise so you get some energy into the battery, battery power is life dependent equipment to be able to raise the anchor or start the engine if wind pushes you direction shore or onto a cliff or have bilge pumps running because a seacock broke and water leaking into vessel. I also have much more charge sources like 4 alternators, 2 on each engine to avoid a generator,  a hydrogen to produce energy while sailing where sails shade solar and reduce production significantly.
Also ISO (europe), ABYC (US) and Loyds (leisure and commercial ships), which you have to comply to get insurance, require an independent shut down in case BMS fails (I use a Victron BMV 712 that cuts at 10V or 14,7V with it relay output all loads and charge as last independent resort) and request pre-warnings when critical SOC or cell voltages are reached. SBMS has simply to less ExtIO to do all this warning tasks and it’s also very complicated as I need to run cable which is a big pain in the ass in a vessel. With Victron and home assistant I can do this wireless/via BT and also use already existing devices like tablets, phone, chartplotter, boat stereo… but I need cell and SOC level in Victron or home assistant (both are linked so I don‘t care how or which of the 2) to be able to do that.
Also the SBMS is the part of a big monitoring dashboard of the whole vessel which is displayed on a big TV in the salon as well as on an old tablet at the helmstation.
So to sum up, we and I don‘t need the development of a standalone app or program as that’s all their already BUT we need an integration newbies and normal users without coding skills (copy and paste of code into a Plattform is ok) into at least one widely supported and use platforms like home assistant, Victron, signalK…to get the data into one of these systems. From their already adapters/converters to other exist eg. Home assistant to Victron or to NMEA exist to integrate that and have any dashboard shown on as big and different screens as you like.
The integration via wifi and MQTT into Victron was a fail as also not working reliable and would need constant adaption/maintenance with different Victron releases. The connection via USB must be used to have reliability and then best an interface adapter that simply converts the data from SBMS into a standard input interface into eg home assistant so there is no constant release management needed.
I am no programmer who can do that but available to test and do bug reports for integration into Venus OS or home assistant.

Chris R8

unread,
Sep 23, 2024, 6:35:32 AM9/23/24
to electrodacus
My way around this I use the SOC and voltage measured via the Victron BMV 712 into Victron and home assistant but need to make sure eg SOC of SBMS and Victron is identical or close…sucks and to have cell voltages there would make it much more usable and can do much more, 
I would be also willing to pay for such an interface eg a cable where you can connect SBMS to Victron via VE-direct or VE-can or via an usb dongle into home assistant pc. That’s what we need, no a stand-alone pc program that shows the data on a big screen.

Dacian Todea (electrodacus)

unread,
Sep 23, 2024, 1:06:46 PM9/23/24
to electrodacus
Chris,

I understand what you will like the SBMS0 data for and that you want the data over USB (more reliable that wireless).
Not sure why you think cell voltages are more useful that SOC for automating Load's and or charge sources ?
If setup correctly SOC on the SBMS will be accurate withing 1 or 2% while cell voltage will depend significantly on the current in or out of the battery so it has no value other than for BMS to be able to protect the battery from overcharge and over discharge.

So cell voltage can be say 3.3V if SOC is 50% or if it is 95% thus cell voltage will not be able to provide any info for automating Loads. That is even ignoring the cell voltage measurement fluctuation during cell balancing.
It is true that SBMS0 only has 4 available EXT IOx and if you use one for solar and one for Load ON/OFF control then there are only two available for automation.
If as you mentioned need a fail safe in case something goes wrong then another EXT IOx set as type 5 will be used to trip a circuit breaker or relay that will isolate the battery from both Loads and Charge sources.
Thus at most you are left with one EXT IOx that can be used to control some Load or Loads based on SOC level.

But there are not many loads that can be arbitrarily turn ON or off mostly what you mentioned a water heating thank that can be considered a thermal battery.

The new DEXT that will soon be available (I have the PCB's just need to wait for some components to assemble the first batch) will allow for multiple EXT IOx (still only 4 types) and have the circuit to be able to directly trip a circuit breaker or if set that way to control a large relay (dual contacts) or two relays to be able to isolate battery from Load and charge sources in case of equipment fault.
Of course there is no way to add an alarm for when this will happen as we discussed before unless you are OK with a 5 or 10 second delay. The solution for that is having two separate batteries for redundancy then you can have an alarm to inform you when one of the two separate systems is down.  Same idea as on computer servers where there are two power supplies each capable of powering the computer and you get an alarm when one of the two fails.


Building an adapter that converts SBMS0 USB data in to standard Victron VE-direct can be done I'm just not interested in spending the time to Learn the Victron protocol and build such a converter for maybe no more than 10 or 20 people that will want to use this.  It will just not be an economical use of my time.
What will be needed is a small micro controller with a USB interface on one end to read the SBMS0 data convert that data to whatever Victron needs and then send that over VE-direct interface. Likely the only useful data from all of that will be the SOC to do the sort of automation you mentioned (turning ON some large loads like water heaters to prevent/delay the battery form fully charging).
The same can be done with one of the for EXT IOx.

Say hot water is a luxury and you only need that when you can afford (excess solar energy). Then you can use the already used EXT IOx that controls charging to know when battery is fully charged  and then have a timer to allow the water heater to turn ON for say two hours.
If say water heater is set at 60C water and is 100 liters assuming cold starting temperature is 20C then  40C delta * 100 liters * 1.16 = 4.64kWh.  Say your battery is 15kWh capacity then if worst case after battery is fully charged there is no more solar available the water tank will take about 30% of your battery to heat the water to 60C thus battery will be at 70% by the end of this.
If heating element is say 1500W then it means it will require 3h to heat to fully heat the water so you take the signal from battery fully charged (EXT IO4 that is already used to control your solar charger) and provide that to a 3h timer from that starting point will ensure that water heater will not use more than 30% of your battery capacity and will only restart the timer when battery is again at full charge.  This way you do not need a fee EXT IOx but you need a timer.

Dave McCampbell

unread,
Sep 23, 2024, 11:56:36 PM9/23/24
to electrodacus
As an alternative, we on SV Soggy Paws are using a mini computer with Node Red to display all the Electrodacus SBMS0 data in a format we like to our large screen we also use for navigation with OpenCPN.  We are using the MQTT transmit from the wifi version of the Electrodacus to a (free) mosquitto broker on a PC (also runs on RPi) to monitor our setup.  I also have data coming from 2 WS500'sl(serial data via com port) and 1 solar controller (Morningstar TS-60, via Modbus serial).  It all goes into a node-red instance that I put together myself.  Some programming but lots of snap together software pieces available on node-red.  We have just bought another Victron MPPT, but not the Cerbo, and will use just a VE.direct cable to another serial port to gather data from the Victron MPPT.  It all comes together on a big screen monitor, showing currrent status, and daily statistics (highs and lows for the day, etc).  We did a writeup on it which is available on our website, here, with a "Getting Started Guide" and screen shots.  I'm happy to share my node-red code, but it isn't plug and play, there are things you'll have to change to make it work on your system.  https://svsoggypaws.com/electrodacus.htm

Peter

unread,
Sep 30, 2024, 8:21:49 AM9/30/24
to electrodacus
@kampfsch: When you say MQTT Wifi connections fails and is not reliable, are you talking about this thread/method?
What is the problem with this approach? 

I managed to register the SBMS in Venus OS as battery. I "think" it is properly registered as a battery that can be used for further automation within the victron environment. I don't have any victron gear to test yet.
Anmerkung 2024-09-30 132637.jpgAnmerkung 2024-09-30 132610.jpg

Workflow is: 
- SBMS sends parameters per MQTT
- MQTT is deciphered with java script in iobroker
- MQTT is then reformated for Venus OS to understand and published
- dbus-mqtt-devices (running on the Raspi) registers and updates the Battery in Venus

this package currently doesnt include the battery services, but there is an old PR which works fine. It should eventually be updated to use the current official battery config: 

It is not very elegant but seems to work as expected. I will leave that running for some time and see if I find any issues. It would obviously be a lot less ugly, if the MQTT translation would be done int he Venus OS. That is how I understand the mr-manuels approach, but I havent tried it, so has anybody else?
MQTT to Venus.txt
MQTT from SBMS.txt

Peter

unread,
Oct 1, 2024, 10:06:02 AM10/1/24
to electrodacus
So I moved the MQTT handling to node red on the Venus large. That cuts out the iobroker middle man and means a pretty much direct connection between the SBMS and Venus (but still wireless). I think I am happy with that, if its stable. 

Anmerkung 2024-10-01 155747.jpg

My plan would be to make the automation within the victron system. I think that would be better in my grid-tie situation (zero feed in with Victron ESS).
I would use the EXTIO as wired last resort for the shutdown of inverter/charger. I am still curious, what the problem was with the other approach...

Jonathan Vardy

unread,
Oct 15, 2024, 6:37:30 AM10/15/24
to electrodacus
I've added a new request on the dbus-serialbattery GitHub. Please upvote to see if we can get it added:

sailingharry

unread,
Oct 15, 2024, 5:59:11 PM10/15/24
to electrodacus
This has my attention.  I don't have a Dacus or an LFP bank, but I'm working up my shopping list for all the big buys in probably November.  I have Victron stuff, but no Cerbo (and can't really justify one).  I've never even held a Pi, let alone programmed one.  But I'm fairly techi, have done some programming in my life (taught my self 8088 assembly back in the day) and like what I see on your screen shots.

So, as I understand it:
*  I buy a Pi, and all the associated bits to make it functional (case and power supply at least).  Maybe a monitor, but I think it can talk direct to a cell phone as a screen, right?
*  I install the Victron provided OS/Software to make the Pi look like a Cerbo
*  I wire the MPPT and Multiplus to the Pi (I think I completely understand that part).
*  Peform some sot of connection between the 'Dacus and the Pi (you indicate wireless -- is that bluetooth or wifi?).  Are any extra physical parts needed?
*  Using the routines you've been working on, a "snap in subroutine" so to speak, the 'Dacus will talk to the Pi and present the screen you show.

Is it this simple?  is it really $100 or so in parts and some effort?  The fact that I'm about to DIY a bank with a 'Dacus and integrate it with my Balmar alternator controllers, 4 MPPT controllers, and a Multiplus means I'm willing to spend the time and thought to do sort of complex things.  In particular, if this gets me a single screen showing battery status that can be mounted a ways (maybe 20 feet) away from the 'Dacus where it can be easily seen, would be a major plus.

Peter

unread,
Oct 16, 2024, 6:53:42 AM10/16/24
to electrodacus
yes, that is basically how i have it running a couple of days, sofar no problems. Connection Pi-SBMS is currently indirectly MQTT over wifi, so you would rely on a wifi router and MQTT broker for the connection. The venus large has mqtt broker included, which could also be leveraged for the SBMS to nodered communication, but i havent tested that...

Instead I am currently looking into using the serial connection via CH341 of the SBMS extension board to feed into nodered, which on a first short try seems to work as expected with https://flows.nodered.org/node/node-red-node-serialport
This would then be a directly wired connection and theoretically be hardware-wise the most reliable (and provide additional metrics not available in the standard MQTT message eg the dual pv level). But there is much yet to be tested. Like i am not sure, if the CH341 could loose its mounting point if other USB hardware (>MK3 adapter) is connected (ttyUSB1 instead of ttyUSB0)...

I have also started using the above mentioned venus services from mr-manuel:  
https://github.com/mr-manuel/venus-os_dbus-mqtt-solar-charger
This also seems to work as expected with the benefit of not having to use a non-maintained modification of the https://github.com/freakent/dbus-mqtt-devices and also giving me the option of showing the SBMS DC - Solar charging in venus os (see below)
So I would still like to know, what the problem with those adapters was, that were mentioned by others!?

So final thought regarding the upvote to include the SBMS in 
I dont really see the need for this, unless I am missing something everything is still there, it just needs to be plugged together. Also even if it were used instead of the nodered conversion, you still would miss the pv charging or convince mrmanuel to include the pv charging part of SBMS0 service into his generic bms service, which sounds unlikely... 

Screenshot_20241016_103549_Kiwi Browser.jpg

Helge Flataker

unread,
Oct 17, 2024, 11:38:37 AM10/17/24
to electrodacus
If the Venus image has a MQTT broker already installed and accepts data that way, you can quite easily change adapt the firmware of the wifi unit to match the MQTT topics the Cerbo expects and integrate the SBMS0 directly with the Cerbo using MQTT over wifi.

The source for the firmware is here: https://github.com/armageddon421/electrodacus-esp32 

Peter

unread,
Oct 19, 2024, 11:05:54 AM10/19/24
to electrodacus
Well, as I understand it, venus doesnt directly accept a device via MQTT that's what mr-manuel's different services are for. But i can confirm, that for those you can utilize the venus- onboard broker, as mentioned before. Also the idea now is to have a wired and direct communication from SBMS to venus, which seem to work, so far no problem (SBMS0 > CH341 Serial2USB > NodeRed > onboard MQTT > mr-manuels solar charger & battery > venusos)

Chris R8

unread,
Oct 20, 2024, 9:50:17 PM10/20/24
to electrodacus
Hi Dacian,
The simple answer why steering via voltage and not SOC is simple preciseness and reliability. Compared to offgrid in marine we have huge banks and in relation to solar. I have eg 1800AH with 1650W of solar and will add another 600AH because cells are supercheap to make sure I have more buffer for another week without sun. What that means is I have times where I am not reaching 100%SOC for 3 or 4 month as well as not the the low end and SOC simply fades. I also have a BMV712 and SBMS showing both same SOC to 1% difference but SBMS SOCs fade much more over time then the BMV712 does.
One ExtIO controls load and another charge except of the alternators. Another ExtIO switches off the 4 alternatos and I need that reliable at 13.6V as if the overvoltage lock shuts them off that won‘t be good. At the moment I do with SOC 95% but fading SOC and the 3% hystisis switching it off far too early. Another ExtIO switches on/off the active balancer 98%.  Same issue here a faded SOC just started the balancer at 3,3V cell voltage. Both cannot happen if steering via voltage. SBMS balancing I just shut off, it’s not powerful enough for a big bank like mine and needs a powerful active balancer who keeps it within 5mV deviation.
The last resort shutoff is done by the BMV712, also in case the SBMS fails, that is required by ISO, ABYC, Loyds for all mobile installations also to get sign off by insurance.
You also seem to be unaware that the SBMS is the only proven contractor BMS below 500Euro if you don‘t want or cannot use a mosfet BMS eg starting from the house battery or running a bowtruster where even small ones have massive surges north of 1000A+reverse current that kills immediately any mosfet BMS available. Just designed a bowtruster bank for a boat with an SBMS an 2p4S EVE 314AH which also needs an active balancer as the high surges with up to 3C will destroy the top balance otherwise very quickly.
The same you underestimate the need for an interface to Venus OS as majority of SBMS users use Victron products. Also many here actually don‘t know what for 100Euro with a raspi to run Venus OS they then can all do and how powerful this is. The most requested/used via Venus OS is remote monitoring and steering.
I know 25 SBMS installations, 15 I done/supported that would immediately buy such a cable to Victron and I know 5 installations which need/want an Venus integration and use JK BMS because of that but would have used an SBMS if that integration is there. And I am 1000% sure that’s just the top of the iceberg….and one of the major reasons people don‘t consider an SBMS as communication and integration is what even now the cheap Chinese BMS offering and owners want/request.

Chris R8

unread,
Oct 20, 2024, 9:54:42 PM10/20/24
to electrodacus
That Victron broker is exactly my issue as it connects successfully to SBMS but doesn’t forward/process the data from SBMS into MQTT doesn‘t matter what I do.

Chris R8

unread,
Oct 20, 2024, 10:17:24 PM10/20/24
to electrodacus
Hi Peter,
That is genius and exactly what I need. Could you please put together a detailed step by step guide how you achieved this and a download of your MQTT workflow. Or help me through it with a video call and I put the guide together after mine works if you have no time to do that. 
The devil is here in the detail as I figured…one missing checkbox or one step in the wrong order and nothing works. I nearly bricked my cerbo last time trying which a very kind pro from xda forum fixed via remote support after screaming for help. A raspi you simply reinstall Venus OS on the SD card and start from scratch, not possible with the cerbo.
My issue is the MQTT broker of cerbo as well as the wifi connection crashes frequently, fixed IPs made it better but still happens to often to be used to eg steer an active balancer.
Thank you 
Chris.

Peter

unread,
Oct 21, 2024, 7:25:02 AM10/21/24
to electrodacus
sure, I can write down some notes, I am stuck home with a broken foot anyway :-(
I am also interested to see what your/others experience with this approach is, to find bugs.
however, if the MQTT broker is crashing on your cerbo, the described way will also not work, it needs the venus broker (or another one, but than it is relying again on external hardware, but could be Ethernet). What was happening exactly, which venus FW? It doesnt seem to have happend on my install yet...
Also keep in mind, that I currently have zero victron equipement running in the system, so dont get too excited ;-) 
I am looking into a Multiplus 2 so i want a VenusOS device running before I invest the money for the inverter.

Chris R8

unread,
Oct 24, 2024, 12:31:58 AM10/24/24
to electrodacus
Hi Peter,
Broken foot sucks…wish you good recovery.
Looking forward to your docs.
A while ago that I tried. If I remember right the broker connected to the SBMS and received some data and also MQTT flow connected but I could never get data into the flow. If really broker crashed or whatever caused that. I have an old iPad at navstation of my cat and via browser shows the web interface of SBMS all the time and that crashes minimum all 3 days once.
Best
Christian

Peter

unread,
Oct 25, 2024, 3:55:25 AM10/25/24
to electrodacus
ok, so i tried to retrace all my steps, but i didnt start from scratch, so hopefully I didnt miss anything.
keep us posted on how you go!
flow 1.json
SBMS to VenusOS.pdf
flow 2.json

Chris R8

unread,
Oct 26, 2024, 10:50:03 PM10/26/24
to electrodacus
Hi Peter,
Thanks for the writeup.
1. what is CH431?
2. did you connect the USB C of the SBMS wifi module with the USB A of the cerbo? Would use flow 2

Thanks
Christian 

Chris R8

unread,
Oct 26, 2024, 10:53:42 PM10/26/24
to electrodacus

Forgot is it a simple usb c to usb A cable using to connect the SBMS to cerbo?

Dacian Todea (electrodacus)

unread,
Oct 27, 2024, 1:17:23 AM10/27/24
to electrodacus
Christian,

The SBMS has a micro USB (not USB C) connector.
And yes all you need is an USB A to micro USB cable to connect and the CH431 is a USB to UART converter that is part of the SBMS (just an IC that converts UART to USB) and is mostly plug and play no driver is needed in most operating systems.

Don Fukushima

unread,
Oct 27, 2024, 11:48:19 AM10/27/24
to electrodacus
I've not been here for a long time. I still have an SBMS connected to visually show cell voltage in the battery bay but have gone full Victron, particularly that Cerbo easily is the integrated display monitor. My needs are pedestrian and the Cerbo although not perfect satisfies my need for remote connectivity, monitoring, and management.

I am no fan of their solar controllers, especially when compared to the SBMS. But without better integration with the Victron universe, it has limited my use of the SBMS and postponed indefinitely any further purchases.

My vote is cast with gusto for SBMS to fully integrate with Victron Cerbo, my order will be right behind it.

Peter

unread,
Oct 27, 2024, 12:16:39 PM10/27/24
to electrodacus
The described approach brings all values the SBMS offers into the victron world, not only the overview on the dashboard. So I dont know, what else one would want: 
Anmerkung 2024-10-27 170107.jpg

wmckeenster

unread,
Oct 27, 2024, 12:31:12 PM10/27/24
to electrodacus
Peter,

WELL DONE!!! Very impressive!

This is exactly what I need for my many SBMS0 systems. I will pay you to assist me in setting this up for all my systems if you are willing. Can I email you privately?

I have the capability to design a hardware interface for the SBMS0 micro USB to Victron CAN and/or Vebus or is that not even needed?

Thanks,

Wayne

Jonathan Vardy

unread,
Oct 27, 2024, 1:58:37 PM10/27/24
to electrodacus

Peter

unread,
Oct 27, 2024, 3:28:54 PM10/27/24
to electrodacus
@Wayne: The description is two posts above in the pdf. If you run into issues, I can try to help, but I am no expert by a long shot. Anyhow before rolling out to multiple installations do some stability testing on one first. My primary concern is, that with multiple USB devices, the port can be lost, because apparently that is not persistent (eg. ttyUSB0), if so that needs to be adressed somehow.
Regarding hardware, I dont think that is necessary. If this approach turns out to be a bad idea, I think the next best thing would be adding the SBMS to 

@Jonathan: 
Based on my limited understanding, DVCC should be possible, at least it can be selected as "Controlling BMS". The BMS parameters need to be manually set in the node red function. 
Anmerkung 2024-10-27 200123.jpgAnmerkung 2024-10-27 200200.jpg

sailingharry

unread,
Oct 30, 2024, 3:06:00 PM10/30/24
to electrodacus
Peter,

I'm a Cerbo beginner.  Hell, I'm an LFP beginner.  I don't have any of this stuff, I'm must learning!

I have 4 smaller MPPT controllers (all with VE.Direct) and a Multi that I could have the 'Dacus directly disable.  But, using the VE.Direct as charge enable makes it impossible to use the VE.Direct to link in a Cerbo.  I've had a strong recommendation to handle the MPPT by inserting a Battery Protect in the common output, but I'm not terribly happy with that idea.

My question.  Your image up-thread shows Allow to Charge and a slider.  Do I understand correctly that you are successfully importing the 'Dacus control signals (in this case, a Type 1) into the Cerbo, and that the Cerbo would then disable all the Victron charge sources via the Victron networks?  And in the Cerbo, since you have also imported all cell voltages, could I create a different "type 1" (same theory as the 'Dacus, but a few mV less) that would allow the Cerbo to shut down all charge sources, and if that didn't happen the 'Dacus could  open the Battery Protect directly (solving my concerns about the BP routinely opening the output of the MPPTs).

If the Cerbo could leverage all the 'Dacus goodness into an even more flexible and powerful platform, it is a game changer!

Peter

unread,
Oct 30, 2024, 5:15:43 PM10/30/24
to electrodacus
Hi Harry

First off: I don't have any actual victron gear in this install, so no experience yet.

But the plan is to have a Multiplus controlled by the venus in ESS. SBMS integration would be a bonus, but i was planning on using the EXTIO for wired charge and load release. But once the data is in there I SUPPOSE that all regular victron automation like VDCC are working "just like that".Having the venus shut off the mppt I would think ist part of what the venus is for. However not all status condition are reported by SBMS: low temperature cut off and the SOC max hysteresis for example can't be known by venus based on the data available on serial other than if indirectly determined, by some additional logic. This would still need to be implemented....

Control based on customized cell voltages is probably not part of the regular victron automation. I think cell voltages is just for visualization bycstandard. You could however make your own rules through the node red automation which let's you access every connected devices as I see it, but requires some meddling. 

If all that (eg controlling charge sources) over this kind of workflow is a good idea? I don't think so
With a second layer of defense and some close monitoring? maybe, let's find out :-)

1000035054.jpg

sailingharry

unread,
Oct 30, 2024, 6:21:47 PM10/30/24
to electrodacus
This stuff is making my head spin.  I'm overwhelmed, but also eager to try.

I'll build my system using a Battery Protect as my 'Dacus controlled cutoff, so my VE.Direct ports are all open.  It should all work super simple on the 'Dacus.  But then, when that project is done, getting a Cerbo (or the software on another device) opens up all sorts of possibilities!

Oh, wow.  My lawn will be even taller.....LOL

Tony Doust

unread,
Jan 14, 2025, 2:54:26 AMJan 14
to electrodacus
Hi Guys
I have found a very simple way to connect a SBMS120 or any SBMS0 or the new one to be released to Homeassistant & VenusOS or a GX
James from   https://shop.jamestronics.com/. sells a unit called iBMS that will connect to a range of SBMS & now the SBM0 & SBMS120 via the tty 3v3 RX/TX grnd & 2 wires for power from the battery. Then its a simple matter of following the instruction provided with the iBMS to connect it to you Network via WIFI & the router provides an ip address & then the iBMS is viewable from any web page & also from your mobile device over the local network. The good thing hear is the pages are designed to fit nicely across the mobile screen.
Now that the iBMS is on  the local ip network.To make the iBMS available to Home assistant you install a couple of files provided with the iBMS & following the instructions provided to install iBMS in Homeassistant. Then the iBMS will show up in Homeassistant. its literally that easy.

If you want to have the SBMS data from iBMS included in VenusOS or GX simply add a RJ45 cable from the iBMS Can port to your RPi Can hat or adapter or use the Victron  type A cable to connect to a VIctron GX.
Once connected to VenusOS or GX the data will then be available to the Venus. Again very easy to achieve Plug & Play.
No mucking around with trying to write code or find some other way using MQTT to achieve what is literally PLUG & PLAY

Have a look at James Page. Sure you have to spend a few dollars but it also opens up many possibilities if you also want to talk & control Victron equipment connected to your system. I personally like the Victron MPPT solar controllers that have Vebus & remote connection via N/C SBMS120 i/o as a safety should VEbus coms fail.
This way you have the best of both worlds. 
if you have multiple VeBus devices here is another piece of gear USB to 4 x Vebus ports with connecters allowing your RPi to talk to multiple VeBus devices & only using one valuable RPiPort.  USB/VeBus https://www.duppa.net/shop/isolated-4-port-usb-to-ttl-uart-ftdi/?v=8bcc25c96aa5
Look at the 4th one from left has plastic sleeve & connectors & then the next picture to this are the connectors from the card to VeBus.

Thought i would share this because is easy to set up & no programming

Have Fun stay charged
Cheers Tony

Chris R8

unread,
May 18, 2025, 10:53:02 PMMay 18
to electrodacus

Toni, do you have the SBMS Running via the iBMS into cerbo or home Assistent?
Is the Connection stable and 100% reliable? 
As Peter described the USB can be lost as the ttyUSB0 and I tried Peters approach and is not stable enough. And I also tried wifi which also is not stable enough as it’s losging Connection every few days.

Tony Doust

unread,
May 19, 2025, 12:53:02 AMMay 19
to electrodacus
Hi
I have an older system SBMS120 But this is the same as far as TTL output is concerned on the SBMS.
My system consists of a SBMS120 with 20 Solar panels connected to The DMPPT450 & this is set to supply 80A to the 800AH batteries
I Also have another 18 Solar Panels connected to Victron 150/60 MPPTs which have a VeDirect, Bletooth & Remote ON/OFF
The MPPTs Remote ON/OFF are connected to the SBMS120 so as the SBMS as full control of all Charge/Discharge sources & will Isolate all Charge sources & Discharge sources
I Have 1xRPi Running Home Assistant & 1xRpi Running Venus OS with a Waveshare Can/RS485 Hat. You could also use a Can to USB dongle if you wanted to
The 2 RPIs are connected via Ethernet cables to my home ethernet network.

Venus RPi has 
1 x CAN Hat
1 x DUPPA 4port TTL->USB & the Victron MPPTs Ve-Direct ports plug into the DUPPA
1 x iBMS from Jamestronics connected to the SBMS1210 via TTL & connected to my Venus OS via CAN interface
 
1 x Home Assistant RPi
Currently the Home Assistant doesn't do any control only display. This will change on due course.

The iBMS connection from the SBMS120 is stable & is running 24/7
The iBMS connection via the CAN Hat interface is stable & is running 24/7
The iBMS Connection via the wireless connection to the Home Assistant is stable & is running 24/7 without need for any reboots
          All the Above equipment are located in the battery room outside the house. The Internet/Router/Data switch are located inside the house & all equipment              obtain there fixed  ip address from the router located in the House.
          The wifi signal from the router to the iBMS for the Home Assistant connection goes through 3 internal & i External walls & 100% stable

With the iBMS connected to the SBMS120 & Victron all the relevant data is included in the Victron for Display & Control if one so desires . By using the MPPT 150/60 with the remote control the SBMS has final & full control of all Charge & Discharge sources. I cant stress enough the the SBMS120 or SBMS0 has final say in all Charge/Discharge sources. The SBMS120/SBMS0 are the Battery Protection Full Stop

With the iBMS all Data from the SBM120/SBMS0 is available in the Home Assistant RPi & thus opens up discussion making using Home assistant to be able to Automate A/C ON/OFF, or irrigation or control of the Aquaponics-Hydroponics system. Is the re enough battery capacity to run this if not then decide what to switch off to maintain home systems depending on weather conditions & sunshine & time of day etc. etc. etc. just to name a couple

Hope this answers you questions
Final sum up every thing is rock stable 100% no intervention & has been running now for more than 6 months.

I might ad that i also have a RPi in the house running my background music which starts @ 0600Hrs & shuts off 1800Hrs as well as a wall mounted TV connected to this RPi which runs 4xWeb pages that display Home Assistant. iBMS which is essentially all the SBMS120/SBMS data, Venus OS

Stay Charged
Regards Tony
Reply all
Reply to author
Forward
0 new messages