4 years ago I installed a SMA 6.0kW inverter (7.5kw of panels) and it’s been a reliable system to date, but with the installation of a whole house Fujitsu HVAC system (you can read about it here) and spurred on by the Australian Government’s Cheaper Home Batteries Program I decided to upgrade my solar PV array with more capacity and some storage.
After evaluating many options it came down two brands, Sungrow and Sigenergy but taking in to account my desire to have clean and aesthetic solution with no exposed conduits and the fact the inverter and battery stack are one the only choice was SigEnergy.
I ended up installing a SigEnergy SigenStor EC 10.0 SP system with 40KW of battery storage and increasing the generation on my roof to 14kw.
Th The appeal was clear: integrated inverter, battery, and PV management in a single unit, with native support for ModBus and granular telemetry.
This post is not about my solar system but serrves as a guide to illusttrate how you can integrate SigEnergy SigenStor into Home Assistant using the Sigenergy ESS HACS plugin.
From here on you can leveraged its 250+ entities for automation, dashboards, and energy monitoring. I actually have an Arduino on my desk with a LCD display that just rotates through vital metrics via the use of HomeAssistant’s MQTTStateStream. What you can do when you have the data is limitless.
SigEnergy SigenStor
If you found this post, then you probably already know what SigenStor is, it;s Sigenergy’s all-in-one energy storage system, module by design allowing you to use different inverters, different battery blocks to arrive at your desired system/ budget.
Mine includes:
- 40kw/h (5 x 8 KWh stacks)
- 10kw single phase inverter
- Four PV strings
It replaced my SMA setup and and not only has give me more generation and storage it is consolidating the inverter and battery in to one, a very modular approach. The system is installed in my garage and connected to Home Assistant via local ModBus TCP and over Ethernet with Wifi as a backup (I like this touch).
Modbus
This is my first foray in to Modbus and I always like to understand the basics behind what I am working with.
Modbus is a client/server data communications protocol in the application layer (Layer 7). It was originally designed for use with PLCs but has become a de facto standard communication protocol for communication between industrial electronic devices in a wide range of buses and networks.
Whilst MQTT I would argue is becoming more and more populart in the industraial space, Modbus has been a main stay of industrial systems.
Modbus is popular in industrial environments because it is openly published and royalty-free.
On the tech front Modbus uses serial communication lines, Ethernet, or the TCP/IP as a transport layer. Modbus supports communication to and from multiple devices connected to the same cable or Ethernet network.
In this context, Modbus allows Home Assistant to query the inverter, battery, and PV strings for real-time data. The SigEnergy implementation uses ModBus TCP over LAN, with no cloud dependency, which I like.


Step 1 – Enabling Modbus On SigEnergy
To enable ModBus you need to be more than an end user. Eitther ask your installer to do this or gain installer level permissions. You can not do this as basic end user. This can be done in the Sigenergy mobile phone application or via the Sigenergy Web Portal.
Below are instructions for the mobile application, they are simiar for the Sigenergy Web Portal. Just note with the webportal, you will see the region in the top right hand corner. Select the region to which your device is associated to. The link above is for the Australian portal.
For the mobile phone version open the SigEnergy
- Open the Sigenergy mobile application.
- Navigate to System > Devices > SigenStor > Operation > Parameter Settings > ModBus Settings.
- Enable Local ModBus TCP.
- Note the IP address of your Inverter
You must be logged in as an installer to access these settings. If you’re the homeowner, request access credentials from your installer.



What Is ModBus?
ModBus is a protocol for industrial devices to expose telemetry and control interfaces. In this context, it allows Home Assistant to query the inverter, battery, and PV strings for real-time data. The SigEnergy implementation uses ModBus TCP over LAN, with no cloud dependency.
Home Assistant Integration
Home Assistant supports ModBus natively, but SigEnergy uses custom registers. A community plugin bridges this gap:
- Sigenergy ESS Integration for Home Assistant
This plugin maps over 250 entities from the SigenStor system, including power flows, battery state, PV generation, and grid import/export.
Installing the HACS Plugin
Steps:
- Ensure HACS is installed in Home Assistant.
- Add the repository:
https://github.com/TypQxQ/Sigenergy-Local-Modbus - Install the integration via HACS.
- Add the following to your
configuration.yaml:
yaml
modbus:
- name: sigenstor
type: tcp
host: 192.168.x.x # Replace with your device IP
port: 502
sensors: !include sigenergy_sensors.yaml
- Restart Home Assistant.
The plugin includes a prebuilt sigenergy_sensors.yaml file with all register mappings.
Leveraging Entities in Lovelace
Once integrated, over 250 entities become available. I use the following in my Lovelace dashboard:
sensor.battery_state_of_chargesensor.battery_discharge_powersensor.pv_powersensor.inverter_load_power
These provide real-time visibility into system performance and allow for automation triggers (e.g., disabling high-load appliances when battery SOC drops below 20%).
Energy Dashboard Setup
To populate Home Assistant’s Energy Dashboard:
- Grid Consumption:
sensor.daily_grid_import_energy - Grid Return:
sensor.daily_grid_export_energy - Solar Production:
sensor.daily_pv_energy - Battery Charge/Discharge:
sensor.daily_battery_charge_energy,sensor.daily_battery_discharge_energy
Configure these under Settings > Energy. The dashboard will then show daily flows between PV, battery, grid, and home load.