question

jonnyhottub avatar image
jonnyhottub asked

ESS State of Charge

screenshot-2023-01-29-at-122415.pngHi, I have set up and very happy with an ESS system which comprises of MPPT solar charger and old solar edge inverter and Easysolar paralleled with a Multiplus on one phase. (Now I am happy with system but I will upgrade to three phase) BUT my question is this, I have a Loxone home automation system that monitors the Victron system and can fully control it via Modbus commands. What I would like to do using the information to my Loxone (ie tomorrows PV forecast) is to calculate using the PV forecast and the current SOC at 00:00 to decide how long I charge the batteries for (with some overage) or max SOC during my cheap electricity tariff so I dont waste any solar charge during the next day and I keep the batteries and at healthy level. I can not find the mod addresses that might do this with out creating my own complete charge routine in Loxone and going complete manual ESS on the Victron. So is there away of setting a modulus address for maximum charge during a schedule charge?

ESSSOC
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

3 Answers
nickdb avatar image
nickdb answered ·

ESS has no notion of max state of charge, only minimum. Scheduled charging from grid permits a stop at soc, but once the sun comes up solar will power loads first and charge battery second on self-consumption modes.

Considering soc tends to drift, it is a poor metric to use if it has not been permitted to sync with some regularity, cell balancing issues at lower states of charge notwithstanding.

2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

johnone avatar image
johnone answered ·

This seems like a very reasonable question to be asking - as our PV yield increases (in the Northern hemisphere Spring), how do we control battery target SOC during a Scheduled charge, based on PV forecast data, during a cheap rate tariff period. This is obviously the essence of self-consumption optimisation.

So, why the oblique, cryptic 'no' to that question from the expert users on here?

It seems to me it's not that difficult (using MQTT, ModbusTCP, D-bus or node red) to simulate a scheduled charge: using python/ModbusTCP, set 100/2700 (grid setpoint) to (in my case) 12000 (i.e. grid input of 12kW), set 100/2701 (enable charge) to 100, monitor 255/266 (battery SOC) until it reaches the target, based on PV forecast algorithm. With target SOC reached, continue using cheap tariff grid power by setting 100/2702 to 0 (disable inverter) - PV could still charge battery. At end of cheap rate set all back to 'normal' ESS state: 100/2700 to 30, 100/2701 and 100/2702 to 100.

The big problem with the above is UPS functionality - would ESS override the above if there's a grid failure. Does anyone know the answer to this? And f no, then how do we dynamically alter a scheduled charge target SOC given the PV forecast?

1 comment
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

nickdb avatar image nickdb ♦♦ commented ·
Grid failures override everything. ESS, after all, is a technology designed to work with grid.

Like me you have been fiddling with PV forecasts, it's not perfect, there seems to be a desire to see how this can be integrated with dynamic scheduling/pricing etc. The ecosystem has never sat still and you will see enhancements coming, because not everyone is comfortable to do some dev work and there is demand for these capabilities.

Like all things, you can't make everyone happy all the time but to Victron's credit, they do tend to try.


0 Likes 0 ·
jonnyhottub avatar image
jonnyhottub answered ·

I would love to know more exactly what the modbus commands 2900 do?

What are the difference between the 3 self consumption ones?

And is the best way to manual control the ESS system?

0=Unused, BL disabled;1=Restarting;2=Self-consumption;3=Self-consumption;4=Self-consumption;5=Discharge disabled;6=Force charge;7=Sustain;8=Low Soc Recharge;9=Keep batteries charged;10=BL Disabled;11=BL Disabled (Low

2 comments
2 |3000

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

nickdb avatar image nickdb ♦♦ commented ·
If you don't mind doing some dev, you can get creative.

From a solar perspective there is little benefit or desire to limit a commercial battery's charge in a conventional self-consumption mode. The DIY blokes have a bee in their bonnet , but that is a different challenge and it can be dealt with in other ways.

Scheduled charging, and soon to be scheduled discharging, you can choose the times and where to stop charging from grid. That works today, and work is underway to officially integrate it into dynamic power schedules, though there are users here who have done that already with node red etc.

If you want to poke around with modifying parameters then I can move this topic to the modifications section, but I have answered the original question, that automatic ESS has no "stop at max SOC" parameter. And Schedules, as it exists today in GA code, are fixed and can be made to stop charging from grid at an SOC of your choosing, but this will not end the schedule, which is time based.

There is more detail in the ESS guide but plenty of topics on the subject for you to dig through.

We all have different use cases, and the defaults won't make everyone happy all the time. But the ecosystem gives you a lot of freedom to customise.

0 Likes 0 ·
nickdb avatar image nickdb ♦♦ commented ·
Moved to modification section
0 Likes 0 ·

Related Resources

What is ESS training video

ESS Quick Installation Guide

ESS design and installation manual

Additional resources still need to be added for this topic