Page 1 of 1
New install. Battery seems to discharge below Min SOC
Posted: Thu May 08, 2025 8:53 am
by jalbo
Last week I had my system install completed including an H1 5kw gen 2 inverter and a stack of 2 slaves + 1 master EQ4800 batteries and I have modbus data into Home Assistnat.
My Min SOC was set to 10% and still is. The battery got down to 10% at around 8:30pm last night. But this morning I noticed the battery is at 7% SOC and had dropped slowly overnight. The battery discharge power had been 0 since 8:30pm. I would have expected the battery would charge as necessary from the grid to keep it at min SOC but this does not seem to have happened. I can also see that there were no Work Mode changes after 6:30pm last night and it has been in Self Use mode since then. I have no schedules set up for charge or discharge.
I should note I have PredBat set up as well but I don't think this is the cause. Still waiting for firmware updates (Master 1.26, slave 1.02 manager 1.42) so I don't know if this is behaviour that has changed in newer firmwares - if this is the case I'd be interested to know. I suspect this is the inverter/bms self-consumption draw but I still expected it to charge/pull from the grid rather than take the battery below the set min SOC.
Re: New install. Battery seems to discharge below Min SOC
Posted: Thu May 08, 2025 3:37 pm
by Dave Foster
It's not a big problem that your pack got down to 7%, it usually indicates that pack is slightly out of balance i.e. one of the batteries will have a slightly higher SoC than the others and so the BMS will be allowing the pack to bottom balance whilst it re-calculates the pack SoC. With your system being so new it's very likely there is a slight imbalance across the pack, this will be corrected over time but a few full grid charge cycles will help it achieve that (most of the active balancing is done when the pack is > 96% )
I know of Predbat but not that familiar with it, but it cannot override the BMS low charge behaviour - if the BMS wants a float maintenance charge it will get it !
Re: New install. Battery seems to discharge below Min SOC
Posted: Fri May 09, 2025 9:43 am
by jalbo
Thanks for the reply Dave. What you said makes sense and I hadn't thought of bottom balancing (it's usually top balancing that comes to my mind). See how it goes with time then.
Re: New install. Battery seems to discharge below Min SOC
Posted: Wed May 14, 2025 10:56 pm
by WyndStryke
In terms of predbat, make sure that the battery is configured correctly in the apps.yaml and in the config. The first time I let predbat control things, it did pull the SoC too low, because the old fox.yaml template had some things set up oddly. Predbat was originally written for GivEnergy systems which have a 100% DoD, so it thought that 4% SoC was fine as a safety margin ... I'm paranoid so I was watching, and pulled the plug when it went to 9%.
I'd suggest
- input_number.predbat_set_reserve_min should be 10 or more (this is the % capacity which you can't use, so 90% Depth of Discharge would mean that you have a 10% reserve)
input_number.predbat_best_soc_min should be about 15% of your nominal capacity (in kWh not %, so for a 10.36kWh nominal battery, you might set it to 1.5kWh). This is a soft limit which it can drop below.
Then in your apps.yaml, make sure that the following are set correctly. Note that indentation is critical in .yaml files, an extra space or missing space will mean that the setting won't work.
New firmware which has bms_kwh_remaining as the nominal battery capacity after adjusting for state of health
Code: Select all
soc_max:
- sensor.bms_kwh_remaining
Old firmware uses bms_kwh_remaining for something else, so instead put in the nominal capacity (i.e., before the depth of discharge is considered). So for example, if your nominal capacity is 10.36kWh, and your usable capacity is 9.324 (with a reserve of 10%), you would enter 10.36 here.
Code: Select all
soc_percent:
- sensor.battery_soc
# Reserve SoC is used for Freeze Charge and Hold Charge modes. This must never be set to less than 10%
# (to match 90% DoD) and preferably a little higher to be safe.
# Also see the predbat setting input_number.predbat_set_reserve_min which should be set to 10 minimum,
# and input_number.predbat_best_soc_min which needs to be set >= kWh equivalent of that.
reserve:
- number.min_soc_on_grid
# Original did not contain this line. Needed because battery is 90% DoD, and we must never drop below that.
battery_min_soc:
- sensor.min_soc
# Battery scaling makes the battery smaller (e.g. 0.9) or bigger than its reported
# If you have an 80% DoD battery that falsely reports it's kwh then set it to 0.8 to report the real figures
# One per inverter
battery_scaling:
- 1.0