Rated 4.9 out of 5

Customer Reviews

REC and WS500 User Forum

Please or Register to create posts and topics.

How to manage state of charge while on shore power

My ABMS system has been in service for a month and I'm delighted at how well it is has integrated with the Victron system I installed at the same time.  Another pleasant surprise was the Victron icon that popped up on my boat's B&G chartplotter when I connected the Cerbo to the boat network.

As I spend more time on the dock finishing up my other projects I'm trying to fight my predisposition to keep my batteries topped-up.   5 years of lead-acid battery experience has me wanting to "make hay while the sun shines".  Lead acid banks thrive on full time full charge.  LiFePO4 banks: not so much.

To keep my batteries at or below 50% SOC I've been fiddling with the end-of-charging parameter CHAR.  Setting it to 3.3 on my LiFePO4 bank leads to the batteries backing down to around 50% SOC.  But there is an unfortunate side effect.  That same variable seems to trigger a recalibration of the SOC to 100%.  This all straightens itself out when I set the CHAR variable back to a higher level, say 3.4, but it does lead to a false indication.

Before I start grabbing other levers and yanking on them, I thought I'd ask if anyone on here has developed a strategy for forcing their SOC to lower values - especially when the system is hooked to shore power for extended periods.

This is an interesting question.   My first thought would be to leave the BMS with its standard parameters and just reduce the settings on my shore power battery charger and MPPTs, but that may have issues that I havent considered as well.

There is also quite a bit of interaction between many of the BMS parameters so you need to be careful on that front too.

I am interested to hear how other users tackle this one, if at all.  Are we just overthinking it?  I wonder how an EV car charging system works if the car is left connected in the garage for long periods.

Rich and Rick,

How best to "store" our house bank of LiFePo4 managed by a REC Active BMS has been an ongoing concern for us since installing the system 2 years ago. Our system includes a Victron Multiplus, Cerbo GX, Victron MPPT, and Wakespeed WS500  all controlled via CANbus by the REC.

I have messed around with the End of Charge voltage, but have seen odd effects with that scenario on occasion (like the bank cycling down to under 20% SOC). What really concerns me about this approach, is it does not seem completely repeatable (which seems very odd, but is my experience).

The other issue I have with the lack of any "storage" mode, is that our solar sits completely unused most of the time, as the REC (even when functioning properly) shallow cycles the battery bank (drops ~5% then kicks in charge sources, which will include solar if it happens to be day time when this happens).

I would love a control like our Tesla, where you set the SOC% you want the car to charge to, and then it just sits at that SOC while connected to shore power.

Another thread discussed changing a charge limit on the Cerbo GX (DVCC Charge Limit, if I recall correctly), but I have been unable to access that parameter on my system.  May need a firmware update, or just a more careful investigation.

Following with interest!


There are different ways to do.

A easy way is in a GX product, under DVCC, set MAX voltage to 13.1V or 13.2V.

Negative side effect:

If you do this for a long time,  batteries can become slowly out off balance, maybe the BMS, can never get the cells balanced again.

Although this can be solved with a manual balance.


Balancing at lower voltage then 14.0V seams also not usefully and has negative side effects.

Above are just some personal insights created from different test and setups.

This is an interesting topic and there are some good points here.

After more than 10 years experience with various LFP cells, like Ben I have found that trying to maintain an LFP pack at a partial state of charge for long periods has been a challenge.  Because the mid range profile of LFP cells is so flat it becomes almost impossible to balance them in that range.  You really need to have them in the 3.4V range and up where there is a measurable change in cell voltage vs charge %.

Maybe taking the cells up to 100% once every month and then let them drop back to 60% is an idea, but would that even be practical in a real time scenario?

As Ben points out, you need to weigh the benefits of letting you cells float at 60% and then when you come back to use the boat, possibly contend with potential trips and warnings, as the BMS tries to deal with an out of balance pack, vs keeping them topped up and balanced.

I would love to hear if anyone has a practical working solution for this one.

Packs that comes out off balance is mainly cheaper cells.

I dont see this with Winston cells for example.

I think balancing below 3.5V has negative side effects.


I've seen a system 3s, 4p, no bridging between strings, and it's in balance after 4 years.
Good cells are amazing

Only way to do SOC control I know is using switched outputs on BMV712 to trigger charge limits. Problem is it's designed for Low not High limits, so it gets a bit ugly.

BUT - if you don't get to high enough voltage, then BMV will drift / not be calibrated.

May be able to hack equalize function very carefully to get a weekly balance.

My battery is a 2p4s built from 230Ah cells. When at the dock, I set the Victron DVCC level to 13.3v for storage. If I'm heading out for anything more than a day sail, I'll remote in the day before and remove the DVCC limit, letting the system go back to what the REC wants. So far this works for me, and the biggest difference in my cells is 0.01v even after having it on for the past couple of months.

Pete and Rich Marshall have reacted to this post.
PeteRich Marshall

While on shore power, I wrote charge control functions in Node Red on the Cerbo GX.

At first I tried keeping it between 30% and 60% but I've found it easiest to charge to 100% and run them down over the week to 25 or so % and then charge back up to 100%....

I'm not using the BMS to do this. I use it for checking SOC and cell voltages to decide when to turn on/off charging but the charge on/off is decided in Node Red.

I also have it in a Slack channel so it tells me when charging starts/stops, bilge pump status.... I can also tell the boat to 'wake up' (charge to 100% and keep it there) so everything is topped off before I arrive.

Rick-admin and Rich Marshall have reacted to this post.
Rick-adminRich Marshall

I like your thinking here.  Use your BMS to provide a single critical function and let your Cerbo provide specialized supervisory control.

If you would care to share any of your node-red that would be great.  Many people are not familiar with its power and flow chart based programmability for JS and this would be a great example

Thanks. I'll see if I can break out / export the relevant bits and post them here.

Here's a screen shot showing basic operations. The Functions not shown sent various alerts to the slack channel as well as turning on/off the charger and inverter as needed.

Node Red can get addictive. I have a script to have Alexa turn on the inverter 🙂


Uploaded files:
  • nodered.jpg
Rich Marshall has reacted to this post.
Rich Marshall

You can use the generator start/stop functions associated with relay 1 on the Cerbo to "gate" or modify the charge enable signals from the REC BMS (assuming the REC active has charge enable similar to the REC Q/SI) to other charging sources (like a muliplus, wakespeed, mppt or all of the above).

Rich Marshall has reacted to this post.
Rich Marshall