Automatically start the MultiPlus battery charger mode based on SOC using a BMV712!

Hybrid system, 24 Eco-Worthy 195-watt solar panels

Multiplus 2,000 watts, with an integrated 12-volt, 80-amp charger

3 Victron MPPTs 150/85

Cerbo-S GX and GX Touch 50 screen. The whole system is connected via Bluetooth, cellular and VRM/VEConfigure.

I simply want the Victron to automatically start the Multiplus charger when the BMV 712 shunt or another device indicates a certain SOC. For example, at 50%, the Multiplus turns on the charger, and at 60% SOC it turns it off!

I’ve tried everything with the assistant, etc., and with artificial intelligence tools, notably ChatGPT and Google AI. Nothing works. Here’s the latest configuration I tried, which doesn’t work!

Please specify whether the Multiplus mechanical or virtual switch should be set to ON, OFF or Charger Only.

The BMV-712 has a programmable relay that is designed exactly for this scenario. Set the relay to close when SoC drops to 50% and open again at 60%, then wire it to the MultiPlus charger remote on/off input (or use the two-signal BMS assistant in VE.Configure) so the relay enables and disables charging automatically. Keep the MultiPlus switch in the ON position so it keeps inverting and the relay only controls the charger. One caveat: this stays accurate only if the BMV-712 SoC is synchronized regularly, so make sure the batteries still reach a full charge often enough to resync.

Since you have a Cerbo in the system and presumably everything connected to it and working OK the otjer option is to load Node-RED onto the Cerbo and program a flow in Node-RED to turn the inverter mode to charging based on the BMV SOC.

Whichever you find easier, hard wiring as above or software programming.

I did try it with the BMV 712 and MultiPlus wiring. Then I went into VEConfigure and installed various assistants so the MultiPlus would understand the message, but nothing worked!

Two years ago, I did an in-depth course on Node-RED and installed the programs using VRM, etc., but I couldn’t get the nodes to activate on the Cerbo or MultiPlus — nothing worked. I even looked for ready-made Node-RED flows on the community forum, but that was a dead end. I must have spent at least 50 hours tearing my hair out over it. Now I’m going to see whether activating ESS works with minimum SOC management and a schedule for maximum SOC!

The relay wiring approach actually needs no VEConfigure assistant at all — the BMV relay simply closes the MultiPlus remote on/off circuit, so adding assistants was likely fighting the setup rather than helping. Try removing the assistants, wire the relay to the MultiPlus remote terminals, and leave the MultiPlus physical switch set to ON. Then set your low-SOC set and clear thresholds in the BMV relay menu and the charger will kick in and out automatically.

Which assistants have you programmed, or had you programmed, and in what order?

This can be done through the GX in th GUI. There is a different option there - inverter only.
And is also possible to manipulate and automate with node red. But the state you use will depend on what exactly you are trying to achieve.

This through the physical switch
On - means connected to grid (and this may or may not cause charging depending on other programming used)
Off means no power at all and definitely no charging.
Charger menaas it will charge and pass through grid to loads.

Are you allowed to use ESS or is this a mobile application?

Since you already have a Cerbo with Node-RED, you can do this without wiring or assistants. I run SoC-based control on my Cerbo (for a miner) and it works reliably.

Remove the assistants and leave the MultiPlus front switch on ON. The remote mode only works when the physical switch is ON.
In Node-RED add a Victron Battery Monitor input node (your BMV-712) → measurement State of charge.
Add a function node with hysteresis:
js
const soc = msg.payload;
let mode = context.get(‘mode’) || 2;
if (soc <= 50) mode = 3; // On = charge from AC input
else if (soc >= 60) mode = 2; // Inverter only = ignore AC input
if (mode === context.get(‘mode’)) return null;
context.set(‘mode’, mode);
return { payload: mode };
Connect it to a Victron VE.Bus System output node → Switch position (Mode). Values: 1 = Charger only, 2 = Inverter only, 3 = On, 4 = Off.
Deploy, and you can watch the mode change in the GX GUI.

If you prefer it to only charge without passing AC to the loads, use 1 instead of 3.

I’ve tried a whole lot of them. Now I’m trying with the ESS.

The dry relay method hasn’t worked so far. That’s what’s driving me crazy. It should be the simplest thing in the world!

Programming a Node-RED flow is a nightmare. I sat through the Victron-specific videos on Node-RED. I did exactly what the presenter was doing on screen, but it didn’t work for me lol!

Could I have a photo of your nod setup?