You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
FoxESS Freeze Export mode predicts no battery charge, but the battery does charge #4207
Describe the bug
Predbat expects that in Freeze Export mode all available PV generation is used either by the house load or sent to the grid. It expects that if there is more generation than is covered by load or export, it is lost/clipped.
Expected behaviour
For FoxESS (and probably other) inverters, in freeze export ("feed-in first") mode, generation above the load and export limits will be stored in the battery and will therefore increase the SoC. Predbat should plan for this.
Root cause found: during an export freeze, prediction.py's freeze guard unconditionally zeroed the predicted charge rate, ignoring inverter_can_charge_during_export - so on inverters that route PV surplus to the battery during a freeze (e.g. FoxESS "Feed-in First"), the plan predicted no charging while the inverter actually charged from surplus PV.
Activity
springfall2008 commentedon Jul 8, 2026
How are you controlling the Fox during an export freeze, your apps.yaml isn't attached?
daviessm commentedon Jul 9, 2026
Sorry, the issue template doesn't ask for apps.yaml. Here it is:
apps.yaml.txt
Inverter control is the same as the Fox template:
chalfontchubby commentedon Aug 2, 2026
Root cause found: during an export freeze,
prediction.py's freeze guard unconditionally zeroed the predicted charge rate, ignoringinverter_can_charge_during_export- so on inverters that route PV surplus to the battery during a freeze (e.g. FoxESS "Feed-in First"), the plan predicted no charging while the inverter actually charged from surplus PV.Fix (mirrored in the C++ kernel too): #4425
fix(plan): gate Freeze Export on a new inverter_can_freeze_export flag (
fix(config): FoxESS support_discharge_freeze should be False, matchin…
fix(plan): don't offer Freeze Export for inverters that always charge…
fix(plan): gate Freeze Export on a new inverter_can_freeze_export flag (
fix(config): FoxESS support_discharge_freeze should be False, matchin…
feat(prediction): model PV recapture beyond the export limit during F…
refactor(prediction): model Freeze Export as ECO with charging disabled
feat(prediction): gate Freeze Export PV recapture on a real Feed-in F…