homeassistant-alphaESS
Monitor your energy generation, storage, and usage data using the official Open API from Alpha ESS.
https://github.com/CharlesGillanders/homeassistant-alphaESS
Category: Energy Systems
Sub Category: Building Energy Monitoring
Keywords
hacs home-assistant homeassistant solar-energy solar-system
Last synced: 1 day ago
JSON representation
Repository metadata
Monitor your energy generation, storage, and usage data using the official API from Alpha ESS.
- Host: GitHub
- URL: https://github.com/CharlesGillanders/homeassistant-alphaESS
- Owner: CharlesGillanders
- License: mit
- Created: 2021-06-09T12:56:09.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2025-04-07T06:53:21.000Z (20 days ago)
- Last Synced: 2025-04-12T07:39:14.056Z (15 days ago)
- Topics: hacs, home-assistant, homeassistant, solar-energy, solar-system
- Language: Python
- Homepage:
- Size: 210 KB
- Stars: 105
- Watchers: 25
- Forks: 22
- Open Issues: 19
- Releases: 41
-
Metadata Files:
- Readme: README.md
- License: LICENSE
README.md
homeassistant-alphaESS
Monitor your energy generation, storage, usage data and electric vehicle using the official Open API from Alpha ESS
AlphaESS OpenAPI
In November 2023, AlphaESS introduced a new web API for their own web client and developers were officially encouraged to migrate to using the AlphaESS Open API published at https://open.alphaess.com/. This component has been updated to use that Open API. Anyone wanting to use this component in Home Assistant will first need to register their own inverter with the AlphaESS Open API developer portal.
- Navigate to https://open.alphaess.com/ and chose the option to register an account.
- Once registered and logged in follow the instructions in your inverters manual to find your inverter SN and CheckCode, See example here
- Add your inverter to the developer portal using your SN and CheckCode
Modifying existing installs to use the new OpenAPI
If you had previously been using this custom component in Home Assistant you will need to change to use the new authentication mechanism required by the AlphaESS OpenAPI.
- First upgrade the HomeAssistant component to at least version 0.4.0 and then restart your HomeAssistant
- In HomeAssistant navigate to Settings / Devices & Services / AlphaESS
- Look for the pane labeled Integration entries and click on the "3 dots" menu to the right of your existing AlphaESS service.
- Delete the existing AlphaESS service.
- Click Add Entry to add a new AlphaESS service
- Provide the AppID and AppSecret for your account on the Alpha ESS OpenAPI developer portal.
- The new service will be created keeping the same entity/device names as before.
Installation using HACS
- Use HACS, in `HACS > Integrations > Hamburger Menu > Custom Repositories add https://github.com/CharlesGillanders/homeassistant-alphaESS with category set to integration.
- in
HACS > Integrations > Explore & Add Repositories
search for "alphaess". - Restart Home Assistant.
- Enable Advanced Mode using Profile (click on your username at the bottom of the navigation column) -> Advanced Mode -> On
- Log out of HomeAssistant and back in again
- In the HA UI go to "Configuration" -> "Integrations" click "+" and search for "Alpha ESS".
- You will be prompted for the AppID and AppSecret for your account on the Alpha ESS OpenAPI developer portal.
Manual Installation
- Make a custom_components/alphaess folder in your Home Assistant file system.
- Copy all the files and folders from this repository into the custom_components/alphaess folder
- Restart Home Assistant
- Enable Advanced Mode using Profile (click on your username at the bottom of the navigation column) -> Advanced Mode -> On
- Log out of HomeAssistant and back in again
- Setup this integration for your Alpha ESS energy storage system in Home Assistant via
Configuration -> Integrations -> Add -> Alpha ESS
- You will be prompted for the AppID and AppSecret for your account on the Alpha ESS OpenAPI developer portal.
Alpha ESS: GUI based Set Battery Charge/Discharge Times information
These settings will only use slot 1 for charging and discharging, while you are not able to modify slot 2 from this integration, you are able to view its current settings
Alpha has recently, and unannounced removed most of the restrictions around the POST API calls that can be made. The current restrictions are:
- Charging can only be set once every 30s
- Discharging can only be set once every 30s
- The reset button calls both set Charging and set Discharging
Some values are set by default, this includes
- updateChargeConfigInfo: gridcharge = 1
- updateDisChargeConfigInfo: ctrDis = 0
Setting the bathighcap and batusecap only save it to hass data (making it persistent across restarts)
and will only be applied when the respective button (or the reset button) is pressed
An error will be placed in the logs
The current charge config, discharge config and charging range will only update once the API is re-called (can be up to 1 min)
If you want to adjust the restrictions yourself, you are able to by modifying the ALPHA_POST_REQUEST_RESTRICTION
varible in const.py to the amount of seconds allowed per call
Issues with registering systems to the AlphaESS OpenAPI
There has been a few issues regarding registering systems to the AlphaESS OpenAPI. The following are some of the issues that have been reported and how to resolve them.
Issue: Unable to register system to AlphaESS OpenAPI (not receiving verification code)
If you are unable to register your system to the AlphaESS OpenAPI because you are not receiving the verification code, you can try the following steps to resolve the issue:
- Access the current postman collection library for the AlphaESS OpenAPI here (you will need to fork the collection)
- Clicking on the root of the list of API calls (should be called AlphaESS Open API) and then click on the variables tab and fill in your AppID, AppSecret, systemSN and CheckCode into the initial and current value fields.
- Click on the getVerificationCode GET API call followed by the send button to send the request. You should receive a verification code either in the response body or by email.
Services
This project allows you to use the following services in Home Assistant:
Alpha ESS: Set Battery Charge
This service call allows you to set the grid charge settings for your system.
Times are not validated and must be compatible with the Alpha values.
Data needed:
- serial = The serial of your system.
- enabled = True or False
- cp1start = Charging Period 1 Start Time
- cp1end = Charging Period 1 End Time
- cp2start = Charging Period 2 Start Time
- cp2end = Charging Period 2 End Time
example:
service: alphaess.setbatterycharge
data:
serial: AA123456789
enabled: True
cp1start: "01:00"
cp1end: "04:00"
cp2start: "13:00"
cp2end: "16:00"
chargestopsoc: 100
Alpha ESS: Set Battery Discharge
This service call allows you to set the battery discharge settings for your system.
Times are not validated and must be compatible with the Alpha values.
Data needed:
- serial = The serial of your system.
- enabled = True or False
- dp1start = Discharging Period 1 Start Time
- dp1end = Discharging Period 1 End Time
- dp2start = Discharging Period 2 Start Time
- dp2end = Discharging Period 2 End Time
example:
service: alphaess.setbatterydischarge
data:
serial: AA123456789
enabled: True
dp1start: "01:00"
dp1end: "04:00"
dp2start: "13:00"
dp2end: "16:00"
dischargecutoffsoc: 10
Owner metadata
- Name:
- Login: CharlesGillanders
- Email:
- Kind: user
- Description:
- Website:
- Location:
- Twitter:
- Company:
- Icon url: https://avatars.githubusercontent.com/u/53312816?u=c71544b5212f403cc9e5bd6122b0761e4d1c71a4&v=4
- Repositories: 2
- Last ynced at: 2025-04-25T23:27:32.833Z
- Profile URL: https://github.com/CharlesGillanders
GitHub Events
Total
- Create event: 18
- Release event: 5
- Issues event: 53
- Watch event: 8
- Delete event: 7
- Member event: 1
- Issue comment event: 315
- Push event: 42
- Pull request event: 23
- Pull request review event: 14
- Fork event: 1
Last Year
- Create event: 18
- Release event: 5
- Issues event: 53
- Watch event: 8
- Delete event: 7
- Member event: 1
- Issue comment event: 315
- Push event: 42
- Pull request event: 23
- Pull request review event: 14
- Fork event: 1
Committers metadata
Last synced: 7 days ago
Total Commits: 205
Total Committers: 9
Avg Commits per committer: 22.778
Development Distribution Score (DDS): 0.527
Commits in past year: 105
Committers in past year: 2
Avg Commits per committer in past year: 52.5
Development Distribution Score (DDS) in past year: 0.095
Name | Commits | |
---|---|---|
Joshua Leaper | p****r@o****m | 97 |
CharlesGillanders | 5****s | 83 |
Spookster | s****r@g****m | 6 |
matt-oneill | 6****l | 5 |
2000game | f****r@g****m | 4 |
Daniel Mohni | d****l@m****t | 3 |
Christian Karrié | c****n@k****o | 3 |
Tupsi | g****b@t****g | 2 |
Cade Oldland | 6****t | 2 |
Committer domains:
- tesira.org: 1
- karrie.info: 1
- mohni.net: 1
Issue and Pull Request metadata
Last synced: 2 days ago
Total issues: 151
Total pull requests: 39
Average time to close issues: 3 months
Average time to close pull requests: 22 days
Total issue authors: 94
Total pull request authors: 12
Average comments per issue: 7.77
Average comments per pull request: 2.74
Merged pull request: 28
Bot issues: 0
Bot pull requests: 0
Past year issues: 53
Past year pull requests: 20
Past year average time to close issues: 18 days
Past year average time to close pull requests: 9 days
Past year issue authors: 43
Past year pull request authors: 1
Past year average comments per issue: 8.64
Past year average comments per pull request: 3.65
Past year merged pull request: 17
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- KortgatGH (5)
- Spookster (4)
- dan-s-github (4)
- Tupsi (4)
- DavidqStokes (4)
- Rasenkardinal (3)
- DaveBinM (3)
- jamiergrs (3)
- JoeArny (3)
- ahmedhoumeci (3)
- braindeadmalc (3)
- ckarrie (3)
- wace70 (3)
- gregpetersau (3)
- rk-code (3)
Top Pull Request Authors
- Poshy163 (22)
- 2000game (4)
- matt-oneill (3)
- ckarrie (2)
- charlj22 (1)
- Tupsi (1)
- dan-s-github (1)
- ffrog8 (1)
- fsievers22 (1)
- CadeusTheGreat (1)
- CharlesGillanders (1)
- Spookster (1)
Top Issue Labels
Top Pull Request Labels
Dependencies
- actions/checkout v3 composite
- github/codeql-action/analyze v2 composite
- github/codeql-action/autobuild v2 composite
- github/codeql-action/init v2 composite
- actions/checkout v2 composite
- hacs/action main composite
- home-assistant/actions/hassfest master composite
- actions/checkout v2 composite
- hacs/action main composite
- home-assistant/actions/hassfest master composite
Score: 7.017506142941256