⚠️ BREAKING CHANGE FOR BATTERY USERS - ACTION REQUIRED
Pre-release⚠️ BREAKING CHANGE FOR BATTERY USERS - ACTION REQUIRED
If you have Home Assistant automations that control battery modes, you must update them before or immediately after upgrading.
We renamed two battery mode options to match what the SunStrong app actually calls them. Battery mode control has been available since November 2025, so if you built automations using the old labels, they will silently stop working after this update.
Old label -> New label:
"Tariff Optimizer"->"Reserve""Emergency Reserve"->"Reserve"(this mode does not exist in the PVS firmware and has been removed)
What to do: Search your automations and scripts for option: "Tariff Optimizer" or option: "Emergency Reserve" and change them to option: "Reserve".
Sorry for the disruption. We got these labels wrong initially because the varserver API uses internal names that don't match the user-facing SunStrong app labels. User testing helped us sort it out.
Bug Fix: Startup Crash on Some PVS Firmware Versions
Some PVS firmware versions do not expose the /sys/pvs/flashwear_type_b varserver variable. Instead of returning a "no data" response, the PVS would hang on that request indefinitely. The integration had no per-request timeout, so it waited forever until Home Assistant's bootstrap stage 2 timeout cancelled the setup - causing the integration to fail to load entirely.
Fixed by adding a 15-second timeout to every varserver request. A hanging or slow PVS variable can no longer block startup.
Battery Mode Labels Fixed + Two New Sensors
Battery Mode Labels Now Match SunStrong App
User reports confirmed our battery mode labels did not match the SunStrong app. The SunStrong app exposes exactly three modes: Self Supply, Cost Savings, and Reserve. The varserver internal name TARIFF_OPTIMIZER corresponds to SunStrong's "Reserve" mode, and BACKUP_ONLY ("Emergency Reserve") does not appear to be a real user-facing mode in any known firmware version.
Changes:
- "Tariff Optimizer" renamed to "Reserve"
- "Emergency Reserve" removed
Two New Read-Only Battery Sensors
The PVS varserver has two separate battery mode fields:
control_mode- the mode configured via the varserver config pathopMode- what the battery firmware is actually doing right now
Previously the Battery Control Mode select entity was reading opMode instead of control_mode. These may differ when the battery firmware temporarily overrides the mode at SOC limits.
Two new sensors are now visible on your battery device:
- ESS Configured Mode: The polled
control_modevalue - ESS Operating Mode: The real-time
opModevalue
Watching both sensors will help confirm whether they differ and when.
Startup Log Cleanup
Transient connection failures during startup now log as WARNING instead of ERROR, reducing alarming red entries in HA logs when the PVS briefly takes a moment to accept connections at startup.
Bug Fix: False "PVS Firmware Upgraded" Notification
Some users were receiving a nightly "PVS FIRMWARE UPGRADED: x.x.x.x -> Unknown" notification even though no firmware upgrade actually occurred.
When the PVS varserver temporarily omits the firmware version from its response (which can happen during nightly operations such as cloud sync or internal service restarts), the integration was defaulting to the string "Unknown" instead of blank. The firmware change detector then saw your real version change to "Unknown" and fired the upgrade alert. Since this only happens once per night and recovers by the next poll, it repeated every night indefinitely.
Fixed. The missing value now defaults to blank so the guard that suppresses empty values works correctly.
No configuration changes required for most users. Update via HACS.
Battery mode writes (changing modes from HA) have been confirmed working by users with SunVault hardware. If you experience any issues please report in the GitHub discussions.