Fenecon Fenecon COMMERCIAL40 CHARGER Modbus TCP template

Fenecon COMMERCIAL40 CHARGER

The Fenecon COMMERCIAL 40 CHARGER is the dual-string DC-DC charger subsystem inside the Fenecon COMMERCIAL 40 commercial battery storage system, managed by the FEMS energy management platform over Modbus TCP. This template reads per-string voltage, current, power, IGBT and reactor temperatures, and cumulative charge and discharge energy for both the BMS-side DC-DC converters and the PV-side DC-DC converters across strings A and B. The single write register allows you to cap PV input power. Together, these registers give installers and asset managers full visibility into DC power conversion health and energy throughput for each string independently.

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

Registers (57)

56 read, 1 write

NameUnitAccessAddress (Hidden until you enter your email)Function (hidden)Type (hidden)
set_pv_power_limitWWrite
bms_dcdc_output_voltage_aVRead
bms_dcdc_output_current_aARead
bms_dcdc_output_power_aWRead
bms_dcdc_input_voltage_aVRead
bms_dcdc_input_current_aARead
bms_dcdc_input_power_aWRead
bms_dcdc_input_energy_aWhRead
bms_dcdc_output_energy_aWhRead
bms_dcdc_reactor_temperature_a°CRead
bms_dcdc_igbt_temperature_a°CRead
bms_dcdc_input_charge_energy_aWhRead
bms_dcdc_input_discharge_energy_aWhRead
bms_dcdc_output_charge_energy_aWhRead
bms_dcdc_output_discharge_energy_aWhRead
pv_dcdc_output_voltage_aVRead
pv_dcdc_output_current_aARead
pv_dcdc_output_power_aWRead
pv_dcdc_input_voltage_aVRead
pv_dcdc_input_current_aARead
actual_power_aWRead
pv_dcdc_input_energy_aWhRead
pv_dcdc_output_energy_aWhRead
pv_dcdc_reactor_temperature_a°CRead
pv_dcdc_igbt_temperature_a°CRead
pv_dcdc_input_charge_energy_aWhRead
pv_dcdc_input_discharge_energy_aWhRead
pv_dcdc_output_charge_energy_aWhRead
pv_dcdc_output_discharge_energy_aWhRead
pv_dcdc_output_voltage_bVRead
pv_dcdc_output_current_bARead
pv_dcdc_output_power_bWRead
pv_dcdc_input_voltage_bVRead
pv_dcdc_input_current_bARead
actual_power_bWRead
pv_dcdc_input_energy_bWhRead
pv_dcdc_output_energy_bWhRead
pv_dcdc_reactor_temperature_b°CRead
pv_dcdc_igbt_temperature_b°CRead
pv_dcdc_input_charge_energy_bWhRead
pv_dcdc_input_discharge_energy_bWhRead
pv_dcdc_output_charge_energy_bWhRead
pv_dcdc_output_discharge_energy_bWhRead
bms_dcdc_output_voltage_bVRead
bms_dcdc_output_current_bARead
bms_dcdc_output_power_bWRead
bms_dcdc_input_voltage_bVRead
bms_dcdc_input_current_bARead
bms_dcdc_input_power_bWRead
bms_dcdc_input_energy_bWhRead
bms_dcdc_output_energy_bWhRead
bms_dcdc_reactor_temperature_b°CRead
bms_dcdc_igbt_temperature_b°CRead
bms_dcdc_input_charge_energy_bWhRead
bms_dcdc_input_discharge_energy_bWhRead
bms_dcdc_output_charge_energy_bWhRead
bms_dcdc_output_discharge_energy_bWhRead

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 IGBT and reactor temperatures on both PV and BMS DC-DC strings to detect thermal stress before a fault occurs.
  • Compare cumulative charge and discharge energy across strings A and B to identify imbalances in DC-DC converter utilisation.
  • Track actual PV input power per string to verify that the PV array is delivering expected yield under real conditions.
  • Alert on unexpected voltage or current deviation between input and output sides of a DC-DC converter string.
  • Verify that a written PV power limit is being respected by comparing set_pv_power_limit against actual_power_a and actual_power_b.

Installation

  1. Enable the FEMS App Modbus/TCP in the FEMS App Center on the COMMERCIAL 40 controller; note the assigned IP address and confirm TCP port 502 is reachable on the local network.

  2. Connect the ModbusCloud Gateway to the same LAN segment as the FEMS controller, ensuring no firewall rules block port 502 between the Gateway and the COMMERCIAL 40.

  3. In the ModbusCloud portal, add a new device, import the Fenecon COMMERCIAL 40 CHARGER template, and set the Modbus unit ID to 255, which is the default unit ID used by FEMS Modbus TCP.

  4. Spot-check register 41264 (bms_dcdc_output_voltage_a) in the portal live view and compare the reading against the FEMS Online Monitoring dashboard to confirm correct polling.

Things to watch for

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

The FEMS Modbus TCP App must be explicitly installed and activated in the FEMS App Center. If the app is not running, the TCP port is closed and all reads return nothing. Confirm the app status in the FEMS UI under App Center, then retry the connection.

Register values look correct but the base address seems shifted by one.

FEMS Modbus TCP uses zero-based register addressing. Some Modbus tools default to a base address of 1, which shifts every address by one. In your client or in the ModbusCloud portal configuration, set the base address offset to 0 to align with the register map.

PV power limit written to set_pv_power_limit stops being applied after about a minute.

The FEMS write-access app includes a built-in watchdog with a default timeout of 60 seconds. If no new write is received within that window, the setpoint is cleared and the system reverts to autonomous control. Keeping the limit active needs a refreshed value well within that window, typically every 30 seconds. ModbusCloud writes registers at most once per minute, so keeping this 60-second window is borderline and not guaranteed.

Should I write to set_pv_power_limit during normal operation without a specific reason?

Exercise caution. Writing an incorrect or zero value to set_pv_power_limit will curtail PV generation immediately across the system. Only write this register when deliberate curtailment is required, and always validate the intended value before sending. Incorrect setpoints can reduce yield and may interact with FEMS protection thresholds.

Want to see how it works?

Electrician working in an open distribution board