question

micmak avatar image
micmak asked

ESS - "Minimum SoC" overriding SoC in scheduling

Hi,

A background on what I am trying to achieve here. Our grid is there for 0-6 hours per day, and electricity is still cheap. I am running ESS optimized with battery life, on a quattro 8k and byd lvs 24kwh. My goal is to use the grid to charge the batteries in two schedules:

  1. fully from 4PM to 3AM
  2. 50% from 3AM to 9AM (then PV can pickup the rest)

This is my setup:

1652174887777.png

Now the grid came online today at 7AM, the batteries were at 68% and yet it started charging the batteries, until I lowered the minimum SOC to 65%:

1652174960862.png

Is this the expected behavior here? I was under the impression that the grid won't charge the batteries between 3AM and 9:30AM (schedule 2) unless it is below 50% and it would stop there.


EDIT: This is an AC coupled system with a fronius primo 8.2 if it matters. Cerbo GX at the heart of the setup

ESS
1652174887777.png (283.9 KiB)
1652174960862.png (632.2 KiB)
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
micmak avatar image
micmak answered ·

I have updated the solution through home assistant to use ESS without batterylife, and automatically update the minimum soc when the grid becomes available.


If the grid is online, and batteries are below 50%, set min soc to 65%, so the batteries will be charged to 65% and use the grid for load. If it is above 50%, then set min soc to same as current soc, so battery maintains its soc during grid availability and have the grid power the load.


The reason I dropped my previous logic is that I still want to use the grid to power the loads even if the batteries are higher than min soc. Here's the automation if anyone is interested (electricity status is a binary sensor based on victron ac input voltage readings):


alias: Victron ESS - Use Grid without charging
description: ''
trigger:
  - platform: state
    entity_id:
      - binary_sensor.electricity_status
    to: 'on'
condition: []
action:
  - service: modbus.write_register
    data:
      address: 2900
      slave: 100
      hub: solarsystem
      value: 10
  - if:
      - condition: numeric_state
        entity_id: sensor.byd_state_of_charge
        below: '55'
    then:
      - service: modbus.write_register
        data:
          slave: 100
          address: 2901
          value: 650
          hub: solarsystem
    else:
      - service: modbus.write_register
        data:
          address: 2901
          slave: 100
          value: '{
  { (states(''sensor.byd_state_of_charge'') | float) * 10 }}'
          hub: solarsystem
mode: single



2 |3000

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

paulcupine avatar image
paulcupine answered ·

Your min SOC is 90%, so when the grid came on it saw your batts were below 85% and charged them up. You need to set your min SOC below your minimum scheduled charge value. In fact, if you delete the morning scheduled charge and set your min SOC to 50%, you should get the behaviour you want.

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.

micmak avatar image micmak commented ·
That's fine for the early morning hours, I can survive with 50% till the sun is up. But I still want the grid to charge my batteries to 100% if it is available from 4PM to 3AM.


The grid is online for 1-2 hours max at a time, if it becomes available at 9PM, then recharging to 100% is very beneficial for me. But having it on at 5AM is totally useless to go to 100% because PV will be available soon.


0 Likes 0 ·
micmak avatar image
micmak answered ·

I have a non victron solution for this using home assistant, which is already reading data from the GX through modbus. Through that I can change "ESS BatteryLife state" (addr. 2900) to 9 (keep batteries charged) from 4PM to 3AM, then at 3AM changed it to 1 (optimised with batterylife, and keep min soc at 50%).

If my logic is sound, if the grid comes online between 4PM and 3AM, my batteries will be charges fully (if grid lasts that long), and any other time of day, it will bring them to 50% if PV is not available.

I was still hoping for a solution within the GX though...

2 |3000

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