Possible to manually change "Active SOC Limit" on Victron

Hi Guys

Is it possible to manually change the Active SOC Limit on a Victron?

Reason I ask is that we’ve had a few cloudy days so my SOC limit has gone up to 40% but there are clear skies ahead so I’d like to drop this back down to 20% if possible. I would imagine that it is possible via SSH on the command line but haven’t been able to find any documentation on it.


I “think” what you can do is just use the “without battery life” option while in summer time.

I’ve used the “without battery life” option a few times. For me it works better, because I’m willing to actively manage my system. If I dropped down to 30% (my min SoC) I don’t want the PV to be used to charge the battery first up to 38% before using it in the house, because I know I have way more PV than I need, so whatever I purchased from Eskom during that 5% goes to waste because I can’t put it back.

Thanks, yeah I did think of the “without battery life” option but wondered if there was a way to alter the Active SOC, there must be :thinking:

Battery Life will override the active SOC, so without battery life is the way to go.

For my Lithiums I don’t run with battery life. If you have Lead batteries then Battery Life is very good. Not so important for Lithiums.

If you’ve rooted the GX, you can ssh into it, then run “dbus-spy” (it’s a bit like editing the registry in windows), go to com.victronenergy.settings, then scroll down to /Settings/CGwacs/BatteryLife/SocLimit and set to whatever value you want. That’s the “active” one. For obvious reasons, it is not exposed via modbus-tcp or the gui.


That did the trick thanks @plonkster

I know it’s an old post but just a quick question on the Active SOC variable. Any idea if it will it ever be made available via Modbus as a ReadOnly register? I would like to monitor this value.

That is actually not the worst suggestion I’ve received this week…

It shall be done soon. Possible in 2.71, or sooner if you want to patch it yourself.

Do share the worst, please?

1 Like

Hell Yea!! Let’s give it a shot. Send some hints this way please.

Download attributes.csv from git repo. Replace /opt/victronenergy/dbus-modbustcp/attributes.csv with that one. Reboot (or simply stop modbus and start it again via gui).

1 Like

Thanks @plonkster , working like a charm.


This last hour or two’s interaction between @plonkster and @djagerif speaks volumes for the Victron flexibility and ability to serve customer needs (within reason I know!)


Nice dash. What guages are you using?

They are all hand-made/layered gauges on top of each other. The App is a custom designed app to integrate my Comfort II Ultra Alarm/Home automation system with Cbus integration and Modbus poller.


A quick question to @plonkster Below is my actual value read via Modbus (30%), but my Venus is set to Min SOC 35%
The process followed yesterday was: Min SOC was set at 35%, Active SOC was at 70% due to all the ups and downs. After the Active SOC setting to 35% via dbus-spy all looked to be in order until now.

Is this normal? Shouldn’t 35% Active SOC be my absolute minimum? That said, the two values, Modbus and GUI, aren’t the same also.

Well, the “active” one would be the higher of the two. On the GUI the active one shows where it will stop (35%, because that is the higher of the two). Or to put it differently, the one you see with the question mark is not a direct representation of what is in settings… it is an interpreted value explaining what will actually happen in real life.

Hmm… Ok. I’m not going to say I understand your explanation as I thought the value that I now have on my monitoring tool would reflect the GUI value. So you say in essence that it will not go below 35% during normal operation? Help me understand why the modbus value would be 30 then?

Just to put you in the picture of why I want to monitor this value. Under normal situations I want to pull my batteries down to the min level possible for max benefit, I aim for 20% (not there yet…)

As you know the situation here is that we need capacity for load shedding and so far all notifications for LS has come with fair warning (well mostly). In that time I can then raised the Min SOC value to EG. 35% to carry me through one session at minimal power, ok perhaps 40% or 45% but that is besides the point.

What I am saying is that I don’t want to be caught having Min SOC at 20% thinking it’s at 40% and then wake up in total darkness because I ‘forgot’ to up the value. The modbus register is my way to see what it is. If this value is now NOT the one on the GUI, how would I get the GUI value via modbus?

I have Optimised (Without BatteryLife) set as I have LifePO4’s. The active is then ignored… much easier then to use NodeRed without the GX making decisions for you. I can also change the setting via Telegram using a Bot from my phone.

Thanks. I’ll look into that option.