[Integration] Huawei Solar: SUN2000 inverters, LUNA2000 batteries, and meters, locally or via FusionSolar ☀️

Hello everyone,

I present to you Huawei Solar, an external integration for Gladys (5.1 and above) that manages the Huawei Solar range.

Two ways to connect, to choose from or together:

  • :house: Locally (Modbus TCP) via the SDongle, an EMMA, or the inverter’s Wi-Fi. Measurements every 30 seconds, without relying on the cloud, and it’s the only way to control the installation.
  • :cloud: Via the FusionSolar cloud (Northbound API). If you have configured both, one automatically takes over when the other fails.

What you get in Gladys:

  • Inverter: Instantaneous production, daily and total production, PV power, temperature, status.
  • Meter: Withdrawal and injection, index for energy tracking, home consumption.
  • LUNA2000 Battery: Level, charge and discharge, remaining energy, and modifiable operating mode (self-consumption, off-peak hours, total injection).

Scenes:

  • Triggers: « the inverter changes state », « the house starts injecting or withdrawing » (ideal for starting a water heater or car charging on surplus), « the battery crosses a threshold ».
  • Actions: Force battery charge or discharge, change its mode, limit injection (zero injection or in watts), start or stop the inverter, read live values to use in conditions.

Dashboard: two widgets, « Solar View » (production, home, grid, battery and daily curve) and « Battery Control » (level, mode and force buttons).

The integration is available in French, English, German, and Spanish, with step-by-step documentation (activating Modbus TCP on the SDongle, obtaining a FusionSolar API account).

:backhand_index_pointing_right: Installation: Integrations → Install an integration → « Huawei Solar »
:package: Code and documentation: GitHub - gboulvin/Gladys-Huawei-Solar · GitHub

This is a first version: your feedback is welcome, especially if you have a particular model of inverter, dongle, or battery. Don’t hesitate to open an issue on GitHub! :folded_hands: