About
SunSpec Modbus connects solar inverters, meters and batteries that speak SunSpec Modbus to Home Assistant, working locally. It exposes what the device reports as sensors, such as power, energy, voltages, currents, temperatures, operating state and error events, including a lifetime energy sensor for the Energy dashboard. Beyond reading data, it adds controls for battery charge and discharge rates, export limit, power factor and active power setpoint, plus a battery plan action with start and end times. The export limit controls are marked experimental and are off by default. Connection is over Modbus TCP or a serial RS-485 port, and the inverter can be entered by address, found by a network scan, or discovered automatically. It also raises repair notices when an inverter is unreachable and offers a diagnostics download for bug reports, and setup is done in the UI.
Automatic summary of the README and code of hilman2/ha-sunspec2. Something wrong, or are you the maintainer and want your own text here? Get in touch
Supports
Works locally Talks to your devices on your own network. No vendor cloud in between.
Found by itself Home Assistant spots it on the network and offers to add it.
From the Marketplace Installed through the Marketplace, formerly HACS.
Actively maintained Its author released or pushed a change in the last six months.
Provides
- Switches
- Sensors
Setting it up
Install it from the Marketplace and restart Home Assistant, then add it under Settings, Devices and services.
Inverter connection
- Host or IP
- Modbus TCP port
- Modbus unit ID
Also asked when changing the connection.
Scan network for inverters
- Subnet to scan (CIDR notation, e.g. 192.168.1.0/24)
Pick your inverter
- Inverter
Modbus RTU connection
- Serial port (e.g. /dev/ttyUSB0 or COM3)
- Baud rate
- Parity
- Modbus unit ID
Inverter settings
- Sensor name prefixOptional prefix for sensor names.
- Polling intervalTime between reading the device. Short intervals increase network and device load.
- Sensor modelsSelect the detected SunSpec models to expose as sensors. Select at least one.
- Peak AC powerAC power used to filter implausible readings. Suggested from the nameplate with 20% headroom. DC and apparent power allow higher readings. Clear to use automatic detection.
After setup
- Host or IP
- Modbus TCP port
- Modbus unit ID
- Polling intervalTime between reading the device. Short intervals increase network and device load.
- Sensor modelsSelect the detected SunSpec models to expose as sensors. Select at least one.
- Peak AC powerAC power used to filter implausible readings. Suggested from the nameplate with 20% headroom. DC and apparent power allow higher readings. Clear to use automatic detection.
- Sensor name prefixOptional prefix for sensor names.
- Allow the inverter to go offline when idleSuppresses connection Repairs for devices that go offline without reporting standby. Sensors still become unavailable. Reported standby is detected automatically.
- Model scan pausePause between models during discovery, not during normal polling. Increase it if discovery fails on slow devices.
- Model read pausePause between model reads during normal polling. Lower values shorten refreshes and write actions. Set 0 to remove the pause.
- Capture diagnostic registersAdds raw Modbus register data to diagnostic downloads for troubleshooting.
- Re-enable controls after a setpoint changeFronius GEN24 requires an off/on cycle to apply changed limits. While a control is enabled, its switch is turned off, the value is written, and the switch is turned on one second later. The limit is inactive during that second.
- Send anonymous usage statisticsSends a random installation ID, integration and HA versions, vendor profile and entry count to the author once a day. Sends no address, serial number, location or readings. Disable to send nothing.
- Web interface passwordLocal "customer" login, not your Solar.web account. Enables additional device and battery data. Only a device-specific login hash is stored. Leave empty to keep the saved login.
- Forget saved loginRemoves the saved login and disables the additional web interface features.
Texts from the code of hilman2/ha-sunspec2.
Entities
- ButtonsReset Modbus control, Hold battery in standby, Release battery control
- NumbersExport limit, Export limit revert time, Power factor setpoint, Active power setpoint, Active power setpoint percent, Export limit revert value, Battery charge rate, Battery discharge rate, Battery max charge power, Battery rate revert time, Battery minimum reserve, Battery PV charge limit, and 24 more
- SelectsBattery control mode, Battery mode, Active power setpoint mode, Storage control mode, Storage AC charge policy, Storage default mode, Storage command mode, Site limit mode, Site limit scope, External power control, Battery plan direction
- SensorsAC current, AC current L1, AC current L2, AC current L3, Phase voltage L1-L2, Phase voltage L2-L3, Phase voltage L3-L1, Phase voltage L1-N, Phase voltage L2-N, Phase voltage L3-N, AC power, AC frequency, and 123 more
- SwitchesExport limit enabled, Power factor setpoint enabled, Inverter grid connection, Active power setpoint enabled, Export limit stays on after revert, Battery charging from grid allowed, Battery plan, Battery charging from grid (web interface), Battery charging from AC (web interface), Modbus control allowed, Re-arm storage command, Keep active power limit asserted, and 2 more
- TimesBattery plan start, Battery plan end
Actions
- Set battery planUpdate plan settings together. Changes apply on the next successful poll; disabling stops the plan immediately.Fields: SunSpec device, Direction, Start, End, Target state of charge, Battery capacity, Enabled
Troubleshooting
- DiagnosticsDownloads a diagnostics file to attach to a bug report.
- Repair noticesNotices it can show in Settings, Repairs:Cannot reach SunSpec inverter, Device does not speak SunSpec, Inverter reports a Modbus exception, cjne/ha-sunspec is still active
From the README
Connects solar inverters, meters and batteries to Home Assistant, if they speak SunSpec Modbus. SunSpec is a standard that many makers build into their inverters. Modbus is the way the data travels over your network. You do not need to know more than that.
Set up entirely in the UI: enter the inverter's IP address or let the integration search your network, tick the data you want, done. No YAML, no template sensors.
Shows in Vulpo
Quick Toggle card, Button card, Select card, Chart card, Apple Watch, Control Center.Information
- Installs
- 65 sharing analytics
- GitHub stars
- 9
- Connection
- Works locally
- Upkeep
- Updated in the last 6 months
- Version
- v2026.10.13,
- Category
- Energy, Solar and batteries
- Kind
- Marketplace integration
- Needs
- Needs the Marketplace (HACS on 2026.10 and older)
- Domain
sunspec2- Issues
- Report an issue











