v0.10.11 — Fallback Discharge safety net
New: Fallback Discharge slider
Addresses a real-world bug observed yesterday evening: the battery delivered a constant 100 W to home while grid covered the missing 70 W. Toggling Regulation off/on fixed it.
Root cause
The PI loop only ran when a Shelly RPC arrived. If the meter went silent (network blip, parse error, broker hiccup), `outputLimit` stayed frozen at its last value while real home load drifted. There was no recovery path until the next valid Shelly message arrived.
Fix
- New periodic safety tick every 10 s detects Shelly silence (>15 s without data)
- When stale, publishes `outputLimit = fallback_discharge` — a user-configurable baseline
- Once Shelly recovers, the regular PI loop in `_tick` resumes
New entity
`number.charge44_fallback_discharge` — friendly name Fallback Discharge, range 0–400 W, step 10, default 0. Set this to your typical baseline home load (e.g. 100–200 W) so even during meter silence the battery covers your idle consumption.
Safety
The safety tick respects all existing guards: temperature out of range, SOC at minimum, regulation disabled, cheap-charge active, and smart-discharge in a cheap hour all suppress the fallback as expected.
Tests
10 new tests in `test_safety_fallback.py`. Suite at 70 green.
Update
HACS → Update → reload integration. Then move the new slider to your typical idle home load (mine is around 150 W).