Fenecon Fenecon Mini Ess Modbus TCP template

Fenecon Mini Ess

The Fenecon Mini Ess is a compact residential and light-commercial battery energy storage system managed by the FENECON FEMS energy management platform. This ModbusCloud template communicates over Modbus TCP and exposes a comprehensive register set covering system state, control mode, and grid mode, as well as per-phase AC active power on L1, L2, and L3. Battery-side data includes pack voltage, current, power, and system-level state of charge, plus granular per-cell voltage and temperature sections from two independent BECU units. Write registers allow configuration of grid charge and discharge current limits, PCS mode, setup mode, and RTC synchronisation. Connecting the Fenecon Mini Ess to your ModbusCloud portal gives installers deep visibility into battery health and charge behaviour across the full cell array.

Protocol
Modbus TCP
Connection
Ethernet, Modbus TCP
Registers
97, read and write
Brand
Fenecon
Last updated

Registers (97)

86 read, 11 write

NameUnitAccessAddress (Hidden until you enter your email)Function (hidden)Type (hidden)
system_stateRead
control_modeRead
battery_group_stateRead
battery_voltageVRead
battery_currentARead
battery_powerWRead
active_power_l1WRead
active_power_l2WRead
active_power_l3WRead
becu1_allowed_charge_currentARead
becu1_allowed_discharge_currentARead
becu1_total_voltageVRead
becu1_total_currentARead
becu1_soc%Read
becu1_versionRead
becu1_nominal_capacityRead
becu1_current_capacityRead
becu1_minimum_voltage_noRead
becu1_minimum_voltageVRead
becu1_maximum_voltage_noRead
becu1_maximum_voltageVRead
becu1_minimum_temperature_noRead
becu1_minimum_temperature°CRead
becu1_maximum_temperature_noRead
becu1_maximum_temperature°CRead
battery_voltage_section_1Read
battery_voltage_section_2Read
battery_voltage_section_3Read
battery_voltage_section_4Read
battery_voltage_section_5Read
battery_voltage_section_6Read
battery_voltage_section_7Read
battery_voltage_section_8Read
battery_voltage_section_9Read
battery_voltage_section_10Read
battery_voltage_section_11Read
battery_voltage_section_12Read
battery_voltage_section_13Read
battery_voltage_section_14Read
battery_voltage_section_15Read
battery_voltage_section_16Read
battery_temperature_section_1Read
battery_temperature_section_2Read
battery_temperature_section_3Read
battery_temperature_section_4Read
battery_temperature_section_5Read
battery_temperature_section_6Read
battery_temperature_section_7Read
battery_temperature_section_8Read
battery_temperature_section_9Read
battery_temperature_section_10Read
battery_temperature_section_11Read
battery_temperature_section_12Read
battery_temperature_section_13Read
battery_temperature_section_14Read
battery_temperature_section_15Read
battery_temperature_section_16Read
becu2_charge_currentARead
becu2_discharge_currentARead
becu2_voltRead
becu2_currentARead
becu2_soc%Read
becu2_versionRead
becu2_min_volt_noRead
becu2_min_voltRead
becu2_max_volt_noRead
becu2_max_voltRead
becu2_min_temp_noRead
becu2_min_tempRead
becu2_max_temp_noRead
becu2_max_tempRead
system_work_stateRead
system_work_mode_stateRead
becu_numRead
becu_work_stateRead
becu_charge_currentARead
becu_discharge_currentARead
becu_voltRead
becu_currentARead
soc%Read
rtc_yearWrite
rtc_monthWrite
rtc_dayWrite
rtc_hourWrite
rtc_minuteWrite
rtc_secondWrite
grid_max_charge_current_aAWrite
grid_max_discharge_current_aAWrite
setup_mode_aWrite
pcs_mode_aWrite
grid_max_charge_current_bARead
grid_max_discharge_current_bARead
setup_mode_bRead
pcs_mode_bRead
grid_modeRead
debug_run_state_aRead
debug_run_state_bWrite

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 system-level state of charge at address 4812 to verify daily cycling behaviour over time.
  • Track per-phase AC active power on L1, L2, and L3 to detect persistent phase imbalances early.
  • Alert on BECU1 or BECU2 maximum cell temperature approaching thermal thresholds during summer.
  • Compare BECU1 nominal capacity against current capacity to track battery degradation across seasons.
  • Verify grid mode register at address 30166 after grid outages to confirm correct on-grid or off-grid transition.

Installation

  1. Enable the FEMS App Modbus/TCP Read Access (and optionally the Write Access app for setpoint control) in the FEMS App Center using the licence key provided by Fenecon.

  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 Mini Ess template, and set the unit ID to match the FEMS Modbus slave address (check the system profile in FEMS Online Monitoring under External Interfaces).

  4. Spot-check register 4812 (soc) in the portal live view and compare the value against the FEMS Online Monitoring dashboard to confirm the polling chain is working correctly.

Things to watch for

All registers return zero or no data. What is wrong?

The FEMS Modbus/TCP interface is disabled by default. You must install and activate the FEMS App Modbus/TCP Read Access in the FEMS App Center. Without this app, the FEMS will not respond on port 502, even if the device is reachable on the network.

Register addresses appear shifted by one. Why?

Some Modbus client tools default to a base address of 1 rather than 0. The register addresses in this template are 0-indexed. Set your client base address to 0, or in QModMaster change the Base Address field to 0, otherwise every address will be off by one.

I wrote to grid_max_charge_current_a but nothing changed. What now?

Write registers require the FEMS App Modbus/TCP Write Access (a separate, paid app). Read access does not grant write permissions. Also confirm the Watchdog timeout: write commands expire after 60 seconds by default, so repeated writes are needed for sustained setpoints. ModbusCloud writes registers at most once per minute, so keeping this 60-second window is borderline and not guaranteed. Never exceed hardware-rated current limits when writing charge or discharge current setpoints, as this can trigger protection shutdowns.

The gateway connects but BECU cell section registers read garbage values.

Cell section registers (addresses 3020 to 3051 for voltage, 3036 to 3051 for temperature) carry raw unitless values. Verify the scaling documented in your system's Modbus table, which you can download as an Excel file from the FEMS Online Monitoring under the system profile. If the FEMS firmware is outdated, some cell section registers may not be populated; check for pending over-the-air updates.

Want to see how it works?

Electrician working in an open distribution board