Fenecon Fenecon Dess Ess Modbus TCP template

Fenecon Dess Ess

The Fenecon DESS ESS is a German-made battery energy storage system managed by the FEMS energy management platform and integrated into OpenEMS. This Modbus TCP template reads system and battery state registers (system_state, bsmu_work_state, stack_charge_state, and state of charge), cumulative charge and discharge energy totals, and per-phase active and reactive power across all three AC phases. Installers connecting this template via the ModbusCloud Gateway gain continuous visibility into battery health, energy throughput, and phase-level AC performance without manual polling.

Protocol
Modbus TCP
Connection
Ethernet, Modbus TCP
Registers
12, read only
Brand
Fenecon
Last updated

Registers (12)

12 read, 0 write

NameUnitAccessAddress (Hidden until you enter your email)Function (hidden)Type (hidden)
system_stateRead
bsmu_work_stateRead
stack_charge_stateRead
soc%Read
original_active_charge_energyWhRead
original_active_discharge_energyWhRead
active_power_l1WRead
reactive_power_l1WRead
active_power_l2WRead
reactive_power_l2WRead
active_power_l3WRead
reactive_power_l3WRead

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.

Number of installations (optional)

Use cases

  • Monitor battery state of charge over time to detect gradual capacity fade across seasons.
  • Track cumulative charge and discharge energy to verify expected round-trip efficiency on site.
  • Alert on abnormal bsmu_work_state or system_state transitions that may indicate a fault condition.
  • Compare per-phase active power on L1, L2, and L3 to identify persistent phase imbalance.
  • Report daily discharge energy totals to building owners as part of routine energy performance reviews.

Installation

  1. Enable the FEMS App Modbus/TCP read access on the Fenecon system via the FEMS online monitoring portal under Settings, then System Profile, then ctrlApiModbusTcp.

  2. Connect the ModbusCloud Gateway to the same LAN segment as the FEMS controller, ensuring the Gateway can reach the FEMS IP address on TCP port 502.

  3. In your ModbusCloud portal, add a new device, import the Fenecon DESS ESS template, and set the unit ID to match your FEMS configuration (default is 1).

  4. Verify the connection by spot-checking the soc register at address 10143: the value should match the state-of-charge shown in the FEMS live monitoring view.

Things to watch for

All registers return zero or no data after connecting. Why?

The FEMS Modbus/TCP read app must be active on the Fenecon system. Open the FEMS portal, navigate to Settings, System Profile, and confirm ctrlApiModbusTcp is installed and running. Without this app enabled, the TCP port does not serve register data.

Register addresses are off by one compared to the FEMS export. What is wrong?

Some Modbus clients default their base address to 1 instead of 0. The FEMS Modbus table uses base address 0. Set your client's base address offset to 0; otherwise every address from the system profile will appear shifted by one register.

The gateway connects but soc and energy registers read unexpected values. Any known quirks?

The 32-bit energy registers (original_active_charge_energy at 10151 and original_active_discharge_energy at 10153) each span two consecutive 16-bit holding registers. Confirm your client reads them as uint32 across both registers in big-endian order, which is standard for FEMS.

The system_state or bsmu_work_state values do not change. Is the device stuck?

These state registers reflect internal BSMU and inverter state machines. A constant value is normal during steady charge or discharge. Cross-check against the live FEMS monitoring dashboard: if the portal shows state changes but the Modbus value is frozen, check for network packet loss between the Gateway and the FEMS controller.

Want to see how it works?

Electrician working in an open distribution board