cFos Charging Controller - Modbus Registers

These registers are available for Modbus RTU and Modbus TCP. The cFos Charging Controller supports the Modbus functions

  • 03 read multiple holding registers
  • 06 write single holding register
  • 16 write multiple holding registers

There are three devices:
2 S0-Meters and 1 EVSE, they are distinguished by Modbus Slave ID and (for Modbus TCP) by TCP port.

Default Slave IDs

EVSESlave Id 1TCP port 4701
S0 Meter 1Slave Id 2TCP port 4702
S0 Meter 2Slave Id 3TCP port 4703

Registers (r = read-only, w = write-only, rw = read/write)

Registers for S0 Meters and the EVSE

vendor_id80002 rUnique vendor id, 0xcf05
product_id80021 rProduct id, 1
device_id80031 rDevice id inside the product, 0x100
product_version80042 rProduct version, major.minor
product_build80051 rProduct build number
mapping_version80061 rmajor.minor version of this register mapping
padding_180071 rReserved
serial_no80088 rSerial number string
name801616 rProduct name, "cFos Charging Controller"
slave_id80401 rwModbus slave ID

Registers for S0 Meters

input80411 rReserved
pulsesperkwh80422 rwImpulses per kWh for input S0
phases80441 rwBitmask of simulated phases, bit 0 = L1, bit 1 = L2, bit 2 = L3
voltage_l180451 rwNominal Voltage L1 [V]
voltage_l280461 rwNominal Voltage L2 [V]
voltage_l380471 rwNominal Voltage L3 [V]
pulses80504 rwAbsolute number of pulses on S0 input
timeperpulse80542 rTime between last two pulses on S0 input [ms]
level80561 rCurrent input level of S0 input
0 = current flows, 1 = current does not flow
padding_280571 rReserved
energy80584 rwActive import [Wh]
power80622 rActive power [W]
current_l180642 rCurrent L1 [0.1 A]
current_l280662 rCurrent L2 [0.1 A]
current_l380682 rCurrent L3 [0.1 A]
reset_pulses80701 wReset pulse counter [1]
reset_energy80711 wReset energy [1]

Registers for the EVSE

Default values after reboot:

def_fixed_current80801 rwDefault reg_cable_current [0.1 A] (*)
def_charg_cur_limit80811 rwDefault charging current limit [0.1 A] 6-63 (*)
def_charging_enable80821 rwDefault charging enabled [0/1] (*)
(*) This value will be set accordingly after a reboot.
cable_current80901 rPP: Cable max current [0.1 A], 0: no cable
fixed_current80911 rwOverwrite cable_current [0.1 A]
charge_pilot_state80921 rCP: 0 = A (waiting),
      1 = B (vehicle detected),
      2 = C (charging),
      3 = D (charging with ventilation),
      4 = E (no power),
      5 = F (error)
charging_cur_limit80931 rwCharging current limit [0.1 A] 6-63A, may be limited due to model limitations (e.g. for cFos EVSE 11kW, it's limited to 16A)
charging_enable80941 rwCharging enabled [0/1] 0 = disable, 1 = enable
charging_current80951 rCharging current [0.1 A] 6-63
last_rfid809616 rLast seen rfid (hex-string)
count_restart81202 rwNumber of restarts of the hardware