Cloud vs Home Assistant
PowerSync Cloud
Use the cloud app if you have a Tesla Powerwall and want hosted automation for tariff sync, negative-price curtailment, AEMO spike export, live dashboard, and battery stats without running Home Assistant.
PowerSync for Home Assistant
Use the Home Assistant integration if you need multi-brand battery support, EV smart charging, local inverter control, LP optimisation, AC-coupled curtailment, or advanced automations.
Home Assistant Installation
- Open HACS in Home Assistant.
- Open the menu and choose Custom repositories.
- Add
Bolagnaise/PowerSyncas an Integration. - Search HACS for PowerSync, download it, and restart Home Assistant.
- Go to Settings → Integrations → Add Integration, search for PowerSync, and follow the setup flow.
AlphaESS
PowerSync supports AlphaESS SMILE and Storion hybrid inverter-battery systems via Modbus TCP. An optional Cloud API can supplement telemetry when Modbus is temporarily unreachable.
Supported Models
| Model | Description |
|---|---|
| SMILE5 | Single Phase Hybrid |
| SMILE-Hi5 | Single Phase Hybrid |
| SMILE-Hi10 | Three Phase Hybrid |
| SMILE-B3 | Three Phase Hybrid |
| SMILE-T10 | Three Phase Hybrid |
| SMILE-G3 | Three Phase Hybrid |
| Storion-T30 | Three Phase Hybrid |
Prerequisites
- Enable Modbus TCP in the AlphaESS app or local web interface.
- Assign the inverter a stable local IP address.
- Use slave ID
85unless your inverter has been changed from the factory default. - Enable firmware-level Modbus curtailment before expecting export-limit commands to physically throttle PV output.
Cloud API
The AlphaESS Cloud API is optional and used as a fallback telemetry source. Control commands still go through Modbus.
Troubleshooting
- If Modbus fails, confirm TCP is enabled, the IP is reachable, and no other client is holding port 502.
- If curtailment writes appear to succeed but export continues, check the inverter's export-limit mode first.
- If force charge or discharge does not respond, confirm the battery is not already at the target SoC and check PowerSync logs for dispatch writes.
GoodWe
PowerSync supports GoodWe ET/EH/BT/BH and ES/EM/BP hybrid inverter-battery systems through direct GoodWe control or entity mode.
Connection Modes
| Mode | Use When | Typical Port |
|---|---|---|
| Direct UDP control | The inverter or dongle supports GoodWe local UDP operation-mode control. | 8899 |
| TCP / LAN Kit-20 entity mode | The system exposes Modbus TCP but force control should go through the GoodWe Experimental Home Assistant EMS entities. | 502 |
Entity Mode Requirements
Entity mode requires the GoodWe Experimental Home Assistant integration to expose both EMS controls. Enter only the common prefix in PowerSync. For select.goodwe_ems_mode and number.goodwe_ems_power_limit, the prefix is goodwe.
- Force charge prefers EMS mode
charge_battery. - Force discharge prefers EMS mode
discharge_battery. - Restore normal sets EMS mode to
auto. - Requested power is sent to the EMS power limit entity.
Troubleshooting
- If force control fails on LAN / Kit-20, confirm TCP port 502 and configure the EMS entity prefix.
- If PowerSync says UDP port 8899 is required, it is still using direct mode rather than entity mode.
- If validation fails, search Home Assistant entities for
_ems_modeand_ems_power_limit.
Sigenergy
PowerSync supports Sigenergy through cloud tariff upload and Modbus TCP / Remote EMS control. Sigenergy EVAC / EVDC charger support can be configured separately for EV charging.
Smart Optimisation Requirements
- Disable Sigenergy AI Mode or any native cloud tariff optimisation that automatically charges or discharges from tariff data.
- Enable Remote EMS control for the Sigenergy system.
- Keep Sigenergy Cloud credentials configured if you want the app tariff graph to match PowerSync's tariff.
- Keep Modbus TCP configured so PowerSync can read live power data and issue Remote EMS commands.
Native Optimisation Mode
If Sigenergy owns battery scheduling decisions, PowerSync can still upload the tariff from supported price providers so Sigenergy's native optimiser has current pricing.
Troubleshooting
- If the Sigenergy app tariff graph is stale, confirm Cloud credentials, station ID, and auto sync are configured.
- If the battery behaves differently from the LP plan, confirm Sigenergy AI/native optimisation is disabled and Remote EMS is enabled.
EV Charging
The Home Assistant integration supports multiple EV charging paths, including Tesla Fleet, Tesla BLE, Teslemetry, OCPP, Zaptec, generic switch/number chargers, and Sigenergy EVAC / EVDC chargers.
Mode Semantics
EV charging modes are strategy choices, not a stack of simultaneous policies. Pick the mode that matches the desired behavior for the loadpoint.
- Solar-focused modes prioritise surplus solar and avoid pulling from the grid unless their policy allows fallback.
- Cost-focused modes target cheap tariff periods and can recover charge when price thresholds are met.
- Manual/app commands should be treated as direct user actions and should not be unexpectedly stopped by disabled automation modes.
Loadpoint Model
PowerSync's newer EV work is moving toward a normalized loadpoint model: charger, optional vehicle, connected state, charging state, charge power, target amps, owner, active mode, blocking reason, and last command. This keeps Home Assistant and the mobile app aligned.
Troubleshooting
- If HA and the mobile app disagree, compare the normalized loadpoint status rather than individual provider entities.
- If OCPP appears stuck in finishing or idle, check the charger status entity and current-limit number entity.
- If a deleted EV or charger still appears, reload the integration after saving the cleaned configuration.
Support
For cloud account or subscription issues, use the cloud app and include the site name, provider, region, and the action you expected. For Home Assistant integration issues, include Home Assistant logs and the inverter/provider section that matches your setup.
Cloud Guide
Use this for Tesla Powerwall cloud setup, tariff sync, curtailment, spike export, and app controls.
Issues
Use GitHub issues for reproducible Home Assistant integration bugs and feature requests.