How to limit shore charging to a specific SOC range (e.g. 20% → 60%)?

Hi everyone,

We are working on several marine applications using Victron systems with lithium batteries, Cerbo GX, Quattro/MultiPlus and MPPT solar chargers.

Previously, we did not need to implement any special software logic for battery SOC limits. However, with larger solar arrays on newer boats, we are now facing a different requirement.

When the boat is connected to shore power in the marina, the customer does not want the batteries to be charged to 100% continuously.

Can this type of SOC-based shore charging strategy be implemented directly using ESS or would it be better to implement this logic using Node-RED on the Cerbo GX?

Any practical experience or examples from similar marine installations would be highly appreciated

If your quattro or multi uses AC out 2, why don’t you use assistants to control when shore power kicks in?

In my case, all loads are on AC out 1. In that situation, I use a contactor in concert with a programmable relay and an assistant.

There might be other ways.

Yes, I have done this on a few installations using Node Red.

We have what is called an “Unattended at Dock” mode, this is a soft switch in the Victron Display. When this is selected the inverter/charger mode is controlled by Node Red: Mode is inverter only normally, and once a low SoC is reached or load goes high for a few seconds mode is changed to On. Once SoC reaches high SP or load goes low, mode reverts to inverter only.

Such a restriction can be done in different ways, for example using ESS or Node-red

Using ESS
Presets:

  1. Settings – System Setup – ESS – Mode: Optimized without Battery Life
  2. Settings – System Setup – ESS – Minimum SOC (unless grid fails) : 60
  3. Settings – System Setup – ESS – Maximum Inverter Power: 0
  4. * Settings – System Setup – ESS –Scheduled charge level: up to 5 Schedule

In this mode

  1. Without mains input – it will operate as a standard inverter without any limitations.
  2. When grid power is available, it will operate in pass-through mode, maintaining the charge level between 55% and 60%. Since the inverter itself is powered by the DC bus, the battery charge will be consumed to power the inverter; when the level drops to 5% below the Minimum SOC, the inverter will recharge it to 60%.
  3. If you configure the “Scheduled charge level,” you can specify the day, time, and SOC level up to which the battery is permitted to charge above the Minimum SOC.

Using NODE-RED
Presets:

  1. Settings – System Setup – Charge Control – DVCC : Enable
  2. Settings – System Setup – Charge Control - Limit Charge Current : Enable
  3. Settings – System Setup – Charge Control - Maximum Charge Current : [value]

In this mode:
Node-RED receives updates on the battery SOC, the ESS Minimum SOC, and the Charge Control Maximum Charge Current; it then limits the Maximum Charge Current based on the SOC and the ESS Minimum SOC—essentially creating a Node-RED-based ESS.

Here is an example of the flow : ess.txt (5.5 КБ)

thanks for your reply,
I think you clearly understand what I want to do.
I must check the Node red documents and applications.

I could try using smart contactors or relay, but I don’t think that would be a definitive solution for emergencies and other conditions. I believe a programmed system would be more practical.

Many thanks

A few points to consider:

  1. all charge level limits are based on measurements of the current state, followed by the actual limiting of the charging current;
  2. any limits are calculated based on the minimum value among the Inverter/ESS (Node-RED)/Battery—specifically, the lowest limit is applied. If you set the ESS limit of 35 amps but the Battery sets one of 5 amps, the limit will be 5 amps.

But you shouldn’t use ESS on a boat? I don’t know the effect or if it’s even practical to reprogram when you dock and then go boating again.

I can’t really say whether it’s worth it or not, since I don’t own a boat and use the MultiPlus in a home setting. There might be issues with input current limiting in ESS mode—in that case, it would be better to go with the Node-RED option.

Was assistant specifically is not recommended for boats or temporary connect systems.

Ignoring ac is usually a better way to go or limiting charged voltage

One important detail for the Node-RED route on a boat: DVCC’s Limit Charge Current applies to every charge source, so gate it on the AC input status — otherwise you’ll also cap solar charging once the boat leaves the dock. Also build a few percent of hysteresis around the 60% target (stop at 62, restart at 58) so the charger doesn’t cycle on and off exactly at the threshold. And since these are temporary shore connections, lxonline’s point is worth heeding — ESS is really designed for permanently connected systems, so the simpler the control logic, the fewer surprises when the cable gets unplugged.