
OpenEMS
Reads energy data from OpenEMS-based devices via Modbus TCP
This template reads energy data from OpenEMS-based devices such as the Fenecon Pro Hybrid 10 via Modbus TCP. It provides grid, production, consumption, and ESS (energy storage) metrics per phase and as totals, including state of charge, active power, and cumulative energy values.
- Protocol
- Modbus TCP
- Connection
- Ethernet, Modbus TCP
- Registers
- 39, read only
- Brand
- Fenecon
- Key readings
- ESS State of Charge · Grid Active Power L1 to L3 · Production Active Power L1 to L3 · Consumption Active Power L1 to L3 · ESS Active/Discharge Power · Grid Buy/Sell Active Energy
- Compatible models
- Fenecon Pro Hybrid 10
- Last updated
Registers (39)
39 read, 0 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| sum_State | Read | ||||
| sum_EssSoc | % | Read | |||
| sum_EssActivePower | kW | Read | |||
| sum_GridActivePower | kW | Read | |||
| sum_GridMinActivePower | kW | Read | |||
| sum_GridMaxActivePower | kW | Read | |||
| sum_GridActivePowerL1 | kW | Read | |||
| sum_GridActivePowerL2 | kW | Read | |||
| sum_GridActivePowerL3 | kW | Read | |||
| sum_ProductionActivePower | kW | Read | |||
| sum_ProductionMaxActivePower | kW | Read | |||
| sum_ProductionAcActivePower | kW | Read | |||
| sum_ProductionMaxAcActivePower | kW | Read | |||
| sum_ProductionDcActualPower | kW | Read | |||
| sum_ProductionMaxDcActualPower | kW | Read | |||
| sum_ConsumptionActivePower | kW | Read | |||
| sum_ConsumptionMaxActivePower | kW | Read | |||
| sum_EssActivePowerL1 | kW | Read | |||
| sum_EssActivePowerL2 | kW | Read | |||
| sum_EssActivePowerL3 | kW | Read | |||
| sum_ProductionAcActivePowerL1 | kW | Read | |||
| sum_ProductionAcActivePowerL2 | kW | Read | |||
| sum_ProductionAcActivePowerL3 | kW | Read | |||
| sum_ConsumptionActivePowerL1 | kW | Read | |||
| sum_ConsumptionActivePowerL2 | kW | Read | |||
| sum_ConsumptionActivePowerL3 | kW | Read | |||
| sum_EssActiveChargeEnergy | kWh | Read | |||
| sum_EssActiveDischargeEnergy | kWh | Read | |||
| sum_GridBuyActiveEnergy | kWh | Read | |||
| sum_GridSellActiveEnergy | kWh | Read | |||
| sum_ProductionActiveEnergy | kWh | Read | |||
| sum_ProductionAcActiveEnergy | kWh | Read | |||
| sum_ProductionDcActiveEnergy | kWh | Read | |||
| sum_ConsumptionActiveEnergy | kWh | Read | |||
| sum_EssDcChargeEnergy | kWh | Read | |||
| sum_EssDcDischargeEnergy | kWh | Read | |||
| sum_GridMode | Read | ||||
| sum_EssReactivePower | kW | Read | |||
| sum_EssDischargePower | kW | Read |
Loading registers…
Send your device list
If a device is not in the library yet, we build the template for free as soon as we have the register data.
Use cases
- Monitor grid import and export power per phase on a live dashboard for your customer.
- Track ESS state of charge over time to evaluate battery cycling behaviour and capacity usage.
- Create an alert when grid active power exceeds a contractual demand limit for more than five minutes.
- Compare production active power against consumption to assess self-consumption ratios on a daily basis.
- Log cumulative grid buy and sell energy values for monthly energy reporting to end customers.
- Use virtual input mappings to feed energy manager logic with real-time grid, production, and storage data.
Installation
Connect the ModbusCloud Gateway to the same local network as the OpenEMS device and ensure Modbus TCP is enabled on the device.
Verify the IP address of the OpenEMS device and confirm the default Modbus TCP port (typically 502) is accessible from the gateway.
Import the Fenecon OpenEMS template in the ModbusCloud platform and assign the correct IP address and unit ID to the connection.
Confirm that register data appears in the ModbusCloud dashboard by checking a known value such as ESS State of Charge against the local device display.
If using energy manager virtual inputs, map sum_GridActivePower to Gpwr, sum_ProductionActivePower to Ppwr, sum_EssDischargePower to Spwr, and sum_EssSoc to Soc.
Things to watch for
Which data types are used in the registers?
Power registers use float32 and energy registers use float64. The template has these types preconfigured, so no manual adjustment is required.
Can I use this template with OpenEMS devices other than the Fenecon Pro Hybrid 10?
Yes. The template is based on the standard OpenEMS Modbus API. Any device running OpenEMS with Modbus TCP enabled should expose the same register map.
Why do some power values show negative numbers?
Negative values typically indicate direction. For example, a negative grid active power value usually means the site is exporting energy to the grid rather than importing.
What Modbus TCP port and unit ID should I configure?
The default Modbus TCP port is usually 502. The unit ID depends on the OpenEMS configuration. Check the device settings or OpenEMS admin interface to confirm both values.
Want to see how it works?









