verified connector library

Heidelberg/Amperfied Energy Control wallbox (Modbus RTU)

Register map(s) for this device, each at the trust rung it earned. Addresses are 0-based as on the wire. Word order and scaling are confirmed at the hardware-verified rung and at no rung below it.

interop-verified

Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.

pointaddress (0-based)typescaleunit
modbus_register_layouts_version4U161
charging_state5U161
l1_current_rms6U160.10.1 A
l2_current_rms7U160.10.1 A
l3_current_rms8U160.10.1 A
pcb_temperature9I160.10.1 °C
voltage_l1_n_rms10U161V
voltage_l2_n_rms11U161V
voltage_l3_n_rms12U161V
extern_lock_state13U161
power14U161VA
energy_since_power_on15U32BE1VAh
energy_since_installation17U32BE1VAh
hardware_configuration_maximal_current100U161A
hardware_configuration_minimal_current101U161A
modbus_master_watchdog_timeout257U161ms
standby_function_control258U161
remote_lock259U161
maximal_current_command261U160.10.1 A
failsafe_current_configuration262U160.10.1 A

link settings as documented (unverified): FC 03,04,06

bench facts as documented (unverified)
model register200
firmware register203
doc revisionStatus 22 February 2021
field reports — community-sourced, unverified (checked 2026-06-11)
  • When the wallbox enters standby mode (power saving when no vehicle is plugged in), Modbus communication is completely disabled, causing polling errors/timeouts on the master side. To prevent this, users must write 4 to register 258 to disable the standby function. [source]
  • In firmware versions V1.0.4 to V1.0.7, registers 258 (Standby Function Control) and 259 (Remote Lock) are write-only. Attempting to read them using function code 3 (read holding registers) results in a Modbus exception 2 (illegal data address). Reading these registers is only supported in firmware versions V1.0.8 and newer. [source]
  • The Modbus watchdog (register 257) is enabled by default (defaulting to 15,000 ms). If the Modbus master does not communicate within this window, the wallbox enters a failsafe state and blinks. To disable it, a value of 0 must be written to register 257. [source]
  • confirmed: Modbus function codes [3, 4, 6] are supported — confirmed by Amperfied's official Modbus Register Layout documentation and integration guides.
  • confirmed: Firmware register 203 (Application Software svn-revNo) and model register 200 (Hardware-Variant) are used for identification — confirmed by the official register table and Home Assistant community templates.
  • confirmed: Register map addresses (0-based) including modbus_register_layouts_version @ 4, charging_state @ 5, l1_current_rms @ 6, l2_current_rms @ 7, l3_current_rms @ 8, pcb_temperature @ 9, voltage_l1_n_rms @ 10, voltage_l2_n_rms @ 11, voltage_l3_n_rms @ 12, extern_lock_state @ 13, power @ 14, energy_since_power_on @ 15, energy_since_installation @ 17, hardware_configuration_maximal_current @ 100, hardware_configuration_minimal_current @ 101, modbus_master_watchdog_timeout @ 257, standby_function_control @ 258, remote_lock @ 259, maximal_current_command @ 261, and failsafe_current_configuration @ 262 — confirmed by the official Heidelberg Wallbox Modbus Register Table (Status 22 February 2021).

The trust ladder

Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.

If your device isn't here, upload its register map. Generation is free, and the connector keeps the rung it earns under testing.

To prove a connector against your own device, order hardware verification. If it doesn't verify, you don't pay.

Platform builders can license the verified library: machine-readable maps, the firmware matrix, API access.