Alpha ESS
CharlesGillanders/homeassistant-alphaESS · vv0.8.5
Monitor your energy generation, storage, and usage data using the official API from Alpha ESS.
In Apple Home through HomeKit Bridge
What HomeKit Bridge makes of each kind of entity this integration creates, read from its source code. A device only gets the ones that apply to it.
| Entity | Shows up as | Note |
|---|---|---|
switch | Switch or outlet | |
binary_sensor | Sensor (motion, contact, leak, smoke…) | |
sensor | Sensor (temperature, humidity, air quality…) | |
button | Button (as a switch) |
What people report
AlphaESS inverters, batteries and wallboxes work mainly through the AlphaESS cloud API; local fallback during outages is reported unreliable.
- Works1
- Partly works2
| Device | In Home Assistant | In Apple Home | What they said | Source |
|---|---|---|---|---|
| AlphaESS wallbox charger | Works Cloud | Wallbox support addedSaved copy*This is still a work in progress, all feedback is welcome* *prerequisites* - [x] https://github.com/CharlesGillanders/alphaess-openAPI/pull/15 - [x] alphaessopenapi version 0.0.12 - [x] Bump version to 0.6.0 *New Features*: - [x] Add a new service/separate panel for the alphaess chargers (segregated from battery/inverter) - [x] Use Currency set within the alpha app, rather than the currency used by HA - [x] Remove all the sensor names being appended to the serial number (shouldn't override any existing/custom names) *more to come* Bug Fixes - Fixes a bug where its possible you woul Excerpt saved from GitHub on 2026-10-23. | PR #168 · 2025-02 | |
| AlphaESS SMILE-T10-HV-INV | Partly works Cloud | Only battery capacity entities appeared with two invertersSaved copyHello. I have two independent inverters installed in my house. Both are from AlphaESS: "SMILE-T10-HV-INV" and "Smile5-INV". After the installation of the AlphaESS I can see two services/inverters, but only 4 services: twice "batHighCap" and "batUseCap". My HAOS is installed in Proxmox 8.3.3 as a virtual machine on a Raspberry Pi 5 with 16 GB RAM. Home Assistant version info: Core 2025.4.4 Supervisor 2025.04.1 Operating System 15.2 Frontend 20250411.0 The attachment contains responses from OpenAPI tests; one file per inverter. I've run only the "get" methods without any issues. _Note: I had to … Excerpt saved from GitHub on 2026-10-23. | Issue #183 · 2025-05 | |
| AlphaESS SMILE5-INV | Partly works Cloud | Local fallback not working when cloud API is unreachableSaved copyCan confirm similar behavior experienced: Cloud API error: 'NoneType' object is not iterable Error: when calling https://openapi.alphaess.com/api/getOneDayPowerBySn?sysSn=AL70110250xxxxx&queryDate=2026-05-20 Cannot connect to host openapi.alphaess.com:443 ssl:default [Timeout while contacting DNS servers] Error: Cannot connect to host openapi.alphaess.com:443 ssl:default [Timeout while contacting DNS servers] when calling https://openapi.alphaess.com/api/getEvChargerConfigList?sysSn=AL70110250xxxxxx Error: Cannot connect to host openapi.alphaess.com:443 ssl:default [Timeout while contacting … Excerpt saved from GitHub on 2026-10-23. | Issue #248 · 2026-04 |
Gathered from GitHub issues, pull requests, discussions and docs, and from r/homeassistant. These are individual reports, so check the linked thread and the date before you buy.
How it connects
Cloud polling
Goes through the maker’s cloud, asking it for updates every so often. Needs the internet and an account.
Details
| Installs (analytics) | 1,013 (0.14%) |
|---|---|
| GitHub stars | 147 |
| Latest version | v0.8.5 (2026-09-07) |
| Set up in the UI | Yes |
| Maintainers | @CharlesGillanders, @Poshy163 |
| License | MIT |
Limitations from the README
- The periodic API requires at least one complete charge period and one
- Both a start and end time must be set before adding a new period. Existing
- Existing per-period power values are preserved. Adding a brand-new period
- Periodic SOC limits must be from 10% through 100%, and every period must contain
- The periodic schedule cannot be cleared through the API (empty period lists
- AlphaESS reports 6008 only as generic Set failed. Overlapping charge and
- A discharge period does not force export to the grid. On the systems
- A 200 from setTimeChargeBySn means the cloud stored the schedule, and the
In ReReHome
Whatever HomeKit Bridge shares reaches Apple Home as normal HomeKit accessories behind your Home Assistant bridge, so ReReHome shows and controls them like any other.
Bridges get their own settings page listing the accessories behind them.