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
Overview card box customisation: show/hide, reorder, relabel, and re-icon boxes (solar, house, grid, battery) via the card editor or YAML boxes config. Responsive grid adapts layout for 1, 3, or 4 visible boxes.
Overview card click-to-history: tapping any energy flow node opens the HA entity history dialog. Sub-details (cell temperature, PV strings, grid voltage/frequency, residual energy) are individually clickable for granular history access.
Cold-temperature BMS charge curtailment: when BMS battery temperature is below 16°C, the maximum charge power is capped at 80A × live battery voltage (~4kW at 50V). The BMS physically limits charge current — the system now anticipates this to avoid over-requesting. Exposed via charge_effective_max_power_w sensor attribute.
BMS temperature on overview card: shows "Cell 15.5°C · Inv 25.3°C" in the battery node, clearly distinguishing BMS cell temperature from the inverter sensor temperature.
Two-tier circuit breaker (C-024): 3 consecutive adapter errors open the circuit breaker and hold position; 5 more ticks without recovery abort the session to self-use.
Automatic session replay after outage: when the circuit breaker aborts a session and the time window is still open, the integration probes the API every 5 minutes and restarts on recovery (up to 6 attempts).
Proactive schedule conflict detection: periodic check warns about unmanaged schedule modes (e.g. Backup) before they block a session start.
Forecast chart card (foxess-forecast-card): SVG-based card showing projected SoC trajectory with actual history overlay, target/min SoC markers.
Session history timeline card (foxess-history-card): 24h horizontal timeline with coloured session bars and SoC trace overlay.
Action buttons on control card: cancel (with double-tap confirmation), charge, and discharge buttons with inline parameter forms.
Visual card editors: both control and overview cards support HA's visual card editor.
Init debug log sensor (sensor.foxess_init_debug_log): non-wrapping buffer preserving the first 75 log messages after startup, complementing the rolling debug log.
INFO-level rolling log sensor (sensor.foxess_info_log): captures only INFO+ messages in a rolling buffer of 75 entries, retaining operational context much longer than the DEBUG log.
BMS battery temperature sensor (sensor.foxess_bms_battery_temperature): exposes the min cell temperature from the BMS via the FoxESS web portal API.
Troubleshooting guide, Contributing guide, and FAQ documentation.
Performance regression gate: CI job testing algorithm calculation time and AST scan for sync I/O in async functions.
Fixed
BMS temperature reliability: resolved multiple issues preventing BMS temperature from working — correct endpoint discovery (GET /dew/v0/device/detail), compound battery ID persistence, web session token handling, fetch timing during WebSocket operation, and value preservation on transient server failures.
Discharge power sensor oscillates: get_actual_discharge_power_w now correctly returns 0 when the battery isn't discharging (solar > load) instead of falling back to the target power.
Discharge target_power_w missing until first tick: attribute now set at session creation and deferred start.
Control card form inputs reset during typing: state updates triggered full card re-renders, clearing user input. Now uses real-time input event listeners with post-render DOM restore.
Discharge circuit breaker unreliable: pacing loop now calls the adapter every tick, matching the charge path, so the circuit breaker can detect steady-state failures.
Log sensor entities unnamed: added explicit _attr_name so entities register with correct names.
Blocking I/O on event loop: WASM bytes pre-read at module import time; Module constructed from memory.
Web session token expiry: async_get and async_post detect auth errors (errno 41808/41809) and retry once after re-authenticating.
Improved
HA Integration Quality Scale: Bronze 18/18, Silver 10/10, Gold 19/21, Platinum 3/3. Includes ConfigEntryNotReady, repair issues, diagnostics, entity categories, display precision, reauthentication, icons.json, entry.runtime_data, and py.typed.