Skip to content
Home Assistant TestFlight
Energy

SolaX Inverter Modbus

wills106/homeassistant-solax-modbus · v2026.10.01

HACSLocal polling

SolaX Power Modbus custom_component for Home Assistant (Supports some AlphaESS, Growatt, Sofar, Solinteg, Solis, SRNE, Swatten)

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.

EntityShows up asNote
switchSwitch or outlet
sensorSensor (temperature, humidity, air quality…)
buttonButton (as a switch)
selectMode picker (as switches)

What people report

Local Modbus support for SolaX, Growatt, Solinteg, Solis and Viessmann inverters is added quickly, but firmware register changes and dongle firmware updates can break setups.

  • Works7
  • Partly works2
  • Not working1
  • Requested1
DeviceIn Home AssistantIn Apple HomeWhat they saidSource
Growatt MOD 8000TL3-HUWorks LocalDMS serial prefix recognised; support merged
Saved copy
The Growatt MOD 8000TL3-HU reports a serial number starting with `DMS` from holding register 3001. Since this prefix was not recognized, detection fell back to register 9, read the firmware version instead, and rejected the inverter. This adds the `DMS` prefix as `HYBRID | GEN4 | X3 | MPPT3`. A regression test covers the reported serial and firmware values. Fixes #2146

Excerpt saved from GitHub on 2026-10-23.

PR #2203 · 2026-07
Growatt SZG / TJ1 invertersWorks LocalSerial SZG and firmware TJ1 recognised as PV GEN2 X3
Saved copy
Summary - Recognize Growatt inverters with serial prefix `SZG` and firmware prefix `TJ1` (e.g. serial `SZGDCL505K`, firmware `TJ1.0`). - Map both to `PV | GEN2 | X3` (3-phase PV, 2 MPPT), matching the local fix that cleared the `unrecognized Growatt inverter type` error. - Fixes #2261. ## Test plan - [ ] With an SZG / TJ1 Growatt on Modbus, confirm setup no longer logs unrecognized inverter type - [ ] Confirm 3-phase PV entities populate (grid L1/L2/L3, PV1/PV2 strings) - [ ] Review that classification as GEN2 remains appropriate if a named nameplate model is confirmed later Made with Cursor

Excerpt saved from GitHub on 2026-10-23.

PR #2262 · 2026-08
SolaX X1-VASTWorks Localpv_power_total regression on old firmware; fixed after SolaX firmware update
Saved copy
Bug Description After updating to `2026.05.2`, `sensor.pv_power_total` returns a constant 1W on a SolaX X1-VAST inverter. The individual string sensors (`pv_power_1`, `pv_power_2`) continue to work correctly. ## Root Cause Commit `fc0a7ee` changed `pv_power_total` from a calculated sum of string sensors to reading Modbus register `0x32` directly, with support limited to `HYBRID | GEN6` (with a note that *"GEN5 testing needed"*). On the X1-VAST, register `0x32` returns a constant 1W, it either does not exist or maps to a different value on this hardware. Prior to this commit, `pv_power_total` …

Excerpt saved from GitHub on 2026-10-23.

Issue #2062 · 2026-05
Solinteg M2HT invertersWorks LocalProvisional support merged; shares existing register map
Saved copy
These should share the same register map as the existing inverters. Simply add model ID decoding for them to ensure the correct HYBRID/MPPT/X3 flags are set. This also corrects the MPPT decoding for inverters in the 30/31 high byte ID group. Fixes #2158. --- Furthermore this include a more complete population of the energy dashboard mappings. The dashboard mappings have been in a draft PR for a while. They've been added into this PR to allow testing alongside the new models and get them merged in.

Excerpt saved from GitHub on 2026-10-23.

PR #2172 · 2026-07
Solis S6-EH3P10K02-NV-YD-LWorks LocalSupport added and merged
Saved copy
Adds support for Solis S6-EH3P10K02-NV-YD-L. This is a Hybrid Gen6 inverter 48V; 10KW with 2MPPTs Serial prefix: 103330 Manual: https://zonnigewinkel.nl/wp-content/uploads/2026/03/Handleiding-Solis-3-fase-laag-voltage-omvormer.pdf

Excerpt saved from GitHub on 2026-10-23.

PR #2250 · 2026-08
TIGO TSI X3 (serial 63110) and X3-IES GWorks LocalSupport added via serial prefix mapping, merged 2026-09
Saved copy
Description Add support for two new SolaX inverter models: - TIGO TSI X3 (serial prefix 63110) - X3-IES G (serial prefix P35G1) ## Type of change - [x] New feature ## Inverter / plugin affected SolaX (plugin_solax.py) ## Changes - plugin_solax.py: add serial prefix 63110 → HYBRID|GEN4|X3 (X3-TIGO TSI) - plugin_solax.py: add serial prefix P35G1 → HYBRID|GEN5|X3 (X3-IES) - plugin_solax.py: add 63110 to MAX_CURRENTS (30A) and MAX_EXPORT (10000W) - plugin_solax.py: add P35G to MAX_CURRENTS (50A) and P35G04–P35G15 to MAX_EXPORT - manifest.json: bump version to 2026.09.4 ## Checklist - [x] I ran …

Excerpt saved from GitHub on 2026-10-23.

PR #2350 · 2026-09
Viessmann Hybrid Inverter HINV6.0-B1Works LocalNew plugin using GoodWe-compatible register map; validated on this model
Saved copy
Summary Adds a dedicated `plugin_viessmann` for Viessmann Hybrid Inverter B1 devices using the GoodWe-compatible Modbus register map. The implementation was validated with a Viessmann HINV6.0-B1 through Modbus TCP, using holding registers and Modbus device address 247. ## Changes - Adds sensors for PV, grid, load, battery, BMS, operating state, temperatures, voltages and power. - Uses meter registers `36015` and `36017` for cumulative grid export and import energy. - Adds a reusable daily-delta energy sensor which calculates daily import/export from the cumulative meter totals, persists its …

Excerpt saved from GitHub on 2026-10-23.

PR #2126 · 2026-06
SolaX X3 G4 PRO 10KPartly works LocalBattery current limited to 20A and export limit scaling off; needs plugin entries
Saved copy
Max charging/discharging limit is 30A. MAX_CURRENTS = [ ("10K", 30), #Gen6 X3 G4 PRO MAX_EXPORT = [ ("10K0A", 11000), #X3 G4 PRO 10kW

Excerpt saved from GitHub on 2026-10-23.

Issue #1582 · 2025-09
Solinteg M2HT-50K-150 / WH-WXG30ME8Partly works LocalDetected as unknown device; battery SoC entity missing, battery power 0 W
Saved copy
Description ### Environment - Home Assistant: 2026.06.7 - SolaX Modbus: 2026.7.0 - Inverter: Solinteg M2HT-50K-150 ### Description While integrating my Solinteg inverter, I noticed that Battery SOC is defined in `plugin_solinteg.py`: - key: `battery_soc` - register: `33000` The debug log shows that the holding register block containing register 33000 is read successfully. However, no Battery SOC entity is created in Home Assistant. I verified that: - the entity does not exist - the entity is not disabled - communication with the inverter works correctly - Battery Power is available - other …

Excerpt saved from GitHub on 2026-10-23.

Issue #2158 · 2026-07
SolaX Pocket WiFi+LAN V4 dongleNot working LocalAfter dongle firmware update Modbus TCP server stops answering; reverse-connection workaround
Saved copy
Describe the bug After a firmware update, my Pocket WiFi+LAN dongle stopped serving Modbus TCP. Port 502 still accepts connections but never answers, no reply to MBAP or RTU framing, on either of the dongle's two interfaces, before or after a reboot. The dongle is otherwise healthy: cloud reporting works and its local web UI is fully responsive. The new firmware replaces the server with "Direct connection to third-party platforms", which reverses the direction, the dongle connects out to a host you configure and speaks ordinary MBAP-framed Modbus TCP over that outbound socket. Send a normal …

Excerpt saved from GitHub on 2026-10-23.

Issue #2336 · 2026-09
Nord N34 inverterRequested LocalSerial prefix N34 mapped to Gen4 X3 Hybrid profile in open PR
Saved copy
Description Adds support for detecting Nord OEM N34 inverters by mapping the `N34` serial prefix to the existing Gen4 X3 Hybrid profile. The regression test covers both H34 and N34 serials, and the compatibility list documents the tested N34A10 model and Nord Solution. ## Type of change - [ ] Bug fix - [x] New feature - [ ] Refactoring - [x] Documentation - [ ] Other (please describe): ## Inverter / plugin affected SolaX (`solax_modbus`) ## Checklist - [x] I ran `make ci` locally and all checks pass (pre-commit, mypy strict, tests) - [x] I added or updated tests covering the new/changed …

Excerpt saved from GitHub on 2026-10-23.

PR #2405 · 2026-10

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

Local polling

Talks to the device on your network, asking it for updates every so often.

Details

Installs (analytics)3,007 (0.42%)
GitHub stars528
Latest version2026.10.01 (2026-10-16)
Set up in the UIYes
Maintainers@wills106
LicenseApache-2.0

Notable forks

Forks with stars, or with code pushed at least 90 days after the original’s last push. Useful when the original goes quiet.

ForkStarsLast pushDescription
PatrikTrestik/homeassistant-solax-modbus★ 42025-04-30SolaX Power Modbus custom_component for Home Assistant (Supports some Ginlong Solis, Growatt, Sofar Solar, TIGO TSI & Qcells Q.Volt Hyb)
fxstein/homeassistant-solax-modbus★ 32026-08-08SolaX Power Modbus custom_component for Home Assistant (Supports some Ginlong Solis, Growatt, Sofar Solar, TIGO TSI & Qcells Q.Volt Hyb)

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.