Monitor your LuxPower solar inverter and battery storage from Home Assistant.
LuxCloud connects your LuxPower hybrid inverter to Home Assistant via the LuxPower cloud API, giving you real-time monitoring of your solar, battery, and grid power flows.
| Platform | Entities |
|---|---|
| ๐ก๏ธ Sensor | Solar power, battery power & SOC, grid import/export, home load, PV string voltages & currents, temperatures, daily & lifetime energy totals, inverter status |
| ๐ Switch | AC charge on/off (see note below) |
| ๐ข Number | AC charge current limit, discharge cutoff SOC, charge cutoff SOC (see note below) |
| ๐ Select | Work mode โ Self-use / Feed-in Priority / Backup / Manual (see note below) |
All entities are grouped under a single device per inverter, named by serial number.
Control entities (Switch, Number, Select): These are present in the integration but have not been fully verified. They require an installer or owner-level LuxPower account โ standard end-user (Viewer) accounts do not have write permissions and will see errors when using controls. The register names used internally are based on LuxPower API conventions and may need adjustment for your specific inverter firmware.
| Requirement | Details |
|---|---|
| Home Assistant | 2023.4 or newer |
| LuxPower account | Free โ register in the LuxPower app |
| LuxPower inverter | Any LXP series with WiFi/LAN dongle connected to the internet |
- Open HACS in Home Assistant
- Click โฎ โ Custom repositories
- Add
https://github.com/BeardedTech0o/ha-luxcloudwith category Integration - Search LuxCloud โ Download
- Restart Home Assistant
- Download the latest release
.zip - Extract and copy the
luxcloud/folder to your HA config:
config/
โโโ custom_components/
โโโ luxcloud/ โ copy here
โโโ __init__.py
โโโ manifest.json
โโโ ...
- Restart Home Assistant
- Go to Settings โ Devices & Services โ + Add Integration
- Search for LuxCloud
- Complete the form:
| Field | Where to find it |
|---|---|
| Email address | Your LuxPower app login email |
| Password | Your LuxPower app password |
| Inverter serial number | Label on the side of your inverter, or LuxPower app โ Device โ Info |
| Server region | EU for Europe (eu.luxpowertek.com), otherwise Global |
- Click Submit โ credentials are verified before the entry is saved
Multiple inverters? Add the integration once per serial number.
| Entity | Unit | Description |
|---|---|---|
| Solar Power | W | Total PV generation. Positive = producing |
| Battery Power | W | Positive = charging, negative = discharging |
| Grid Power | W | Positive = importing, negative = exporting |
| Load Power | W | Home consumption |
| Battery State of Charge | % | Current battery level |
| Entity | Unit | Description |
|---|---|---|
| Solar Energy Today | kWh | PV generation since midnight |
| Export Energy Today | kWh | Sent to the grid today |
| Import Energy Today | kWh | Drawn from the grid today |
| Battery Charge Today | kWh | Charged into battery today |
| Battery Discharge Today | kWh | Discharged from battery today |
All energy sensors use
state_class: total_increasingโ compatible with the Energy Dashboard out of the box.
| Entity | Type | Range | Description |
|---|---|---|---|
| AC Charge | Switch | on/off | Enable/disable grid-to-battery charging |
| AC Charge Current Limit | Number | 0โ80 A | Maximum charge current from grid |
| Discharge Cutoff SOC | Number | 5โ100 % | Battery stops discharging below this level |
| Charge Cutoff SOC | Number | 5โ100 % | Battery stops charging above this level |
| Work Mode | Select | โ | Self-use / Feed-in Priority / Backup / Manual |
These controls require your LuxPower account to have installer or owner permissions. A standard end-user (Viewer) account โ the default for accounts registered via the LuxPower app โ cannot send write commands and will receive a permissions error. If your controls aren't working, check your account role in the LuxPower portal.
Voltages, currents, temperatures, PV string detail, inverter status, and lifetime energy totals. Enable individually in the entity settings if needed.
Add these sensors in Settings โ Dashboards โ Energy:
Solar production โ Solar Energy Today
Grid consumption โ Import Energy Today
Return to grid โ Export Energy Today
Battery charged โ Battery Charge Today
Battery discharged โ Battery Discharge Today
service: luxcloud.refreshautomation:
- alias: "LuxCloud: low battery alert"
trigger:
- platform: numeric_state
entity_id: sensor.SERIAL_soc
below: 20
action:
- service: notify.mobile_app
data:
message: "Battery is at {{ states('sensor.SERIAL_soc') }}%"Note: Automation examples using inverter controls (AC charge switch, work mode, etc.) have been omitted because control functionality requires an installer or owner-level account and has not been fully verified. Replace
SERIALwith your inverter serial number in entity IDs.
| Series | Typical models |
|---|---|
| LXP Hybrid | 3.6 kW, 5 kW, 6 kW, 7.5 kW, 10 kW, 12 kW |
| LXP AC Couple | All variants |
Requires the LuxPower WiFi/LAN monitoring dongle and an active internet connection. Does not require local network access to the inverter.
| Limitation | Details |
|---|---|
| Cloud dependency | Requires internet and the LuxPower cloud API to be reachable |
| Poll-only | API has no push/webhook support; minimum update interval is 30 s |
| Controls require installer account | Standard end-user (Viewer) accounts cannot send write commands โ controls will fail with a permissions error |
| Controls unverified | The inverter register names used for write commands are based on LuxPower API conventions and have not been verified against all firmware versions |
| Control read-back | Write commands are confirmed on the next poll cycle (~30 s) |
| No local mode | Local RS485/Modbus is not currently supported |
"Cannot connect" during setup
- Check your inverter is online in the LuxPower app
- Try switching the region between Global and EU
- Check your Home Assistant has outbound internet access
"Invalid auth" during setup
- Double-check your email and password (case-sensitive)
- If you signed up with Google or Apple, set a password via Forgot Password in the app first
Entities show "Unavailable"
- The inverter is likely offline (power cut, no internet, dongle unplugged)
- Check the LuxPower app โ entities recover automatically when the inverter comes back online
Data not updating / stale values
- Default poll interval is 30 seconds
- Call
luxcloud.refreshto force an immediate update - If persistent, check HA logs for API errors: Settings โ System โ Logs
Need to change credentials or region?
Go to Settings โ Devices & Services โ LuxCloud โ โฎ โ Reconfigure โ no need to delete and re-add.
Settings โ Devices & Services โ LuxCloud โ โฎ โ Delete โ Confirm
This removes all entities and the device from Home Assistant. It does not affect your LuxPower account or inverter settings.
Contributions are welcome! Please read CONTRIBUTING.md before submitting a PR.
# Install test dependencies
pip install -r requirements_test.txt
# Run tests
pytest tests/
# Validate with hassfest
docker run --rm -v "$(pwd)":/github/workspace homeassistant/hassfest
# Validate with HACS
docker run --rm -v "$(pwd)":/github/workspace ghcr.io/hacs/actionSee CHANGELOG.md for release history.
MIT ยฉ BeardedTech0o