{
  "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json",
  "mbmap": 2,
  "vendor": "WAGO",
  "model": "879-3000 energy meter",
  "models": [
    "879-3000",
    "879-3001",
    "879-3020",
    "879-3021",
    "879-3040"
  ],
  "vendor_website": "wago.com",
  "description": "Three-phase MID energy meter (4PU, 4PS and 2PU CT variants) with Modbus RTU",
  "revision": 2,
  "revised": "2026-11-10",
  "source": "WAGO Energy Meters (MID) operating instructions 4PU/4PS/2PU CT, English, V1.8 (02/2024), appendix 3 (A3.1 to A3.3)",
  "sources": [
    {
      "title": "WAGO Energy Meters (MID), Operating Instructions 4PU/4PS/2PU CT",
      "version": "1.8",
      "date": "2024-02",
      "url": "https://www.wago.com/879-3000",
      "note": "Appendix 3, Modbus register map (A3.2) and write registers (A3.3); every register address, length, unit, type and the Float ABCD order checked against it"
    },
    {
      "title": "Varitras/ha-wago, wago_879_api/registers.py (MIT licence)",
      "url": "https://github.com/Varitras/ha-wago/blob/main/custom_components/wago_879/wago_879_api/registers.py",
      "note": "First source of the map; cites manual EN V1.6"
    }
  ],
  "notes": [
    "Checked against the manufacturer's manual (V1.8, appendix 3). Addresses in the manual are hexadecimal (0x4000 is 16384) and every register is read with function 03.",
    "Every measured value is a 32-bit IEEE float in two holding registers, high word first (the manual's 'Float ABCD'). Whole numbers are 16-bit signed, apart from the serial number, checksum, status word and S0 pulse width (two registers, 'HEX' or 'Signed' in the manual).",
    "Power is in kW, kvar and kVA and energy in kWh and kvarh, as the manual lists them.",
    "The 'total' energy registers follow the combination code (0x400F): 1 import only, 2 export only, 3 import plus export, 4 and 5 import minus export. They can fall or go negative; use the import and export registers for rising counters.",
    "Voltage average, current average and the CT ratio sit on registers the manual marks with an asterisk or grey: a direct-measuring meter leaves them at zero. A tariff-less meter holds zero in most T1 to T4 and Q1 to Q4 counters.",
    "The meter has an RS-485 Modbus RTU interface, factory settings unit id 1, 9600 baud, 8 data bits, no parity, 1 stop bit. The manual does not describe Modbus TCP: the TCP access in the Home Assistant integration goes through the 879-9000 module, which forwards the meter's unit id and answers itself on unit 255.",
    "The settings registers are writable with function 06 (function 16 for two-register values); access RW marks the ones the manual lists in A3.3. Not mapped: reserved registers, checksum 2, and the CT ratio history registers' meaning beyond their names."
  ],
  "protocol": "tcp+rtu",
  "unit_id": 1,
  "byte_order": "big",
  "word_order": "big",
  "address_base": 0,
  "x_status": "official",
  "enums": {
    "combination": {"1": "Import only", "2": "Export only", "3": "Import plus export", "4": "Import minus export", "5": "Import minus export (10)"},
    "baud_rate": {"1": "300", "2": "600", "3": "1200", "4": "2400", "5": "4800", "6": "9600", "7": "19200", "8": "38400", "9": "57600", "10": "115200"},
    "parity": {"1": "Even", "2": "None", "3": "Odd"},
    "data_type": {"1": "Standard", "2": "Integer"},
    "tariff": {"1": "T1", "2": "T2", "3": "T3", "4": "T4"},
    "pulse_type": {"1": "Active and reactive energy", "2": "Import and export"},
    "screen_direction": {"0": "Standard", "1": "Rotated 180 degrees"},
    "off_on": {"0": "Off", "1": "On"}
  },
  "registers": [
    {"name": "Serial number", "group": "Device", "area": "holding", "address": 16384, "type": "uint32", "access": "R", "role": "serial", "description": "Two registers, shown as hex"},
    {"name": "Meter code", "group": "Device", "area": "holding", "address": 16386, "type": "uint16", "access": "R", "description": "Variant code: 1111 on the 4PU, 1112 on the 4PS, 1113 on the 2PU CT"},
    {"name": "Modbus unit id", "group": "Device", "area": "holding", "address": 16387, "type": "int16", "access": "RW", "description": "Unit id, 1 to 247 (0 is broadcast); written with function 06"},
    {"name": "Baud rate", "group": "Device", "area": "holding", "address": 16388, "type": "int16", "access": "RW", "enum": "baud_rate"},
    {"name": "Protocol version", "group": "Device", "area": "holding", "address": 16389, "type": "float32", "access": "R"},
    {"name": "Software version", "group": "Device", "area": "holding", "address": 16391, "type": "float32", "access": "R", "role": "firmware"},
    {"name": "Hardware version", "group": "Device", "area": "holding", "address": 16393, "type": "float32", "access": "R"},
    {"name": "Rated current", "group": "Device", "area": "holding", "address": 16395, "type": "int16", "access": "R", "unit": "A", "description": "Rated current of the meter (the manual calls it meter amp)"},
    {"name": "CT ratio (single word)", "group": "Device", "area": "holding", "address": 16396, "type": "uint16", "access": "R", "unit": "A", "description": "One-register CT ratio; the two-register value at 0x401F is the one the manual shows how to write"},
    {"name": "S0 pulse rate", "group": "Device", "area": "holding", "address": 16397, "type": "float32", "access": "RW", "unit": "pulse/kWh", "description": "Pulses per kWh of the S0 output: 10000, 2000, 1000, 100, 10, 1, 0.1 or 0.01"},
    {"name": "Combination code", "group": "Device", "area": "holding", "address": 16399, "type": "int16", "access": "R", "enum": "combination", "description": "What the 'total' energy registers accumulate"},
    {"name": "LCD rolling time", "group": "Device", "area": "holding", "address": 16400, "type": "uint16", "access": "RW", "unit": "s", "description": "Display scroll time, 1 to 30 s"},
    {"name": "Parity", "group": "Device", "area": "holding", "address": 16401, "type": "int16", "access": "RW", "enum": "parity"},
    {"name": "L1 current direction", "group": "Status", "area": "holding", "address": 16402, "type": "uint16", "access": "R", "description": "One ASCII character: F for import, R for export"},
    {"name": "L2 current direction", "group": "Status", "area": "holding", "address": 16403, "type": "uint16", "access": "R", "description": "One ASCII character: F for import, R for export"},
    {"name": "L3 current direction", "group": "Status", "area": "holding", "address": 16404, "type": "uint16", "access": "R", "description": "One ASCII character: F for import, R for export"},
    {"name": "Power-down counter", "group": "Status", "area": "holding", "address": 16406, "type": "int16", "access": "RW", "description": "Write 0 to reset"},
    {"name": "Current quadrant", "group": "Status", "area": "holding", "address": 16407, "type": "int16", "access": "R"},
    {"name": "Quadrant L1", "group": "Status", "area": "holding", "address": 16408, "type": "int16", "access": "R"},
    {"name": "Quadrant L2", "group": "Status", "area": "holding", "address": 16409, "type": "int16", "access": "R"},
    {"name": "Quadrant L3", "group": "Status", "area": "holding", "address": 16410, "type": "int16", "access": "R"},
    {"name": "Checksum", "group": "Device", "area": "holding", "address": 16411, "type": "uint32", "access": "R", "description": "Two registers, shown as hex"},
    {"name": "Active status word", "group": "Status", "area": "holding", "address": 16413, "type": "uint32", "access": "R", "description": "Two registers, shown as hex"},
    {"name": "CT ratio primary", "group": "Device", "area": "holding", "address": 16415, "type": "uint16", "access": "RW", "description": "First half of the two-register CT ratio at 0x401F: the primary current, written together with the secondary (9995/5 in the manual example). Zero on a direct-measuring meter"},
    {"name": "CT ratio secondary", "group": "Device", "area": "holding", "address": 16416, "type": "uint16", "access": "RW", "description": "Second half of the two-register CT ratio at 0x401F: the secondary current. Zero on a direct-measuring meter"},
    {"name": "S0 pulse width", "group": "Device", "area": "holding", "address": 16417, "type": "uint16", "access": "RW", "unit": "ms", "description": "S0 pulse width, 2 to 99 ms (the read table gives two registers, the write table one; mapped as one because the next register is 0x4022)"},
    {"name": "S0 pulse type", "group": "Device", "area": "holding", "address": 16418, "type": "uint16", "access": "RW", "enum": "pulse_type"},
    {"name": "Data type", "group": "Device", "area": "holding", "address": 16422, "type": "int16", "access": "RW", "description": "Value format of the meter: standard or integer", "enum": "data_type"},
    {"name": "Screen direction", "group": "Device", "area": "holding", "address": 16434, "type": "int16", "access": "RW", "enum": "screen_direction"},
    {"name": "OBIS code display", "group": "Device", "area": "holding", "address": 16435, "type": "int16", "access": "RW", "enum": "off_on"},
    {"name": "Voltage average", "group": "Measurements", "area": "holding", "address": 20480, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Voltage L1", "group": "Measurements", "area": "holding", "address": 20482, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Voltage L2", "group": "Measurements", "area": "holding", "address": 20484, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Voltage L3", "group": "Measurements", "area": "holding", "address": 20486, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Frequency", "group": "Measurements", "area": "holding", "address": 20488, "type": "float32", "access": "R", "unit": "Hz"},
    {"name": "Current average", "group": "Measurements", "area": "holding", "address": 20490, "type": "float32", "access": "R", "unit": "A"},
    {"name": "Current L1", "group": "Measurements", "area": "holding", "address": 20492, "type": "float32", "access": "R", "unit": "A"},
    {"name": "Current L2", "group": "Measurements", "area": "holding", "address": 20494, "type": "float32", "access": "R", "unit": "A"},
    {"name": "Current L3", "group": "Measurements", "area": "holding", "address": 20496, "type": "float32", "access": "R", "unit": "A"},
    {"name": "Active power total", "group": "Measurements", "area": "holding", "address": 20498, "type": "float32", "access": "R", "unit": "kW"},
    {"name": "Active power L1", "group": "Measurements", "area": "holding", "address": 20500, "type": "float32", "access": "R", "unit": "kW"},
    {"name": "Active power L2", "group": "Measurements", "area": "holding", "address": 20502, "type": "float32", "access": "R", "unit": "kW"},
    {"name": "Active power L3", "group": "Measurements", "area": "holding", "address": 20504, "type": "float32", "access": "R", "unit": "kW"},
    {"name": "Reactive power total", "group": "Measurements", "area": "holding", "address": 20506, "type": "float32", "access": "R", "unit": "kvar"},
    {"name": "Reactive power L1", "group": "Measurements", "area": "holding", "address": 20508, "type": "float32", "access": "R", "unit": "kvar"},
    {"name": "Reactive power L2", "group": "Measurements", "area": "holding", "address": 20510, "type": "float32", "access": "R", "unit": "kvar"},
    {"name": "Reactive power L3", "group": "Measurements", "area": "holding", "address": 20512, "type": "float32", "access": "R", "unit": "kvar"},
    {"name": "Apparent power total", "group": "Measurements", "area": "holding", "address": 20514, "type": "float32", "access": "R", "unit": "kVA"},
    {"name": "Apparent power L1", "group": "Measurements", "area": "holding", "address": 20516, "type": "float32", "access": "R", "unit": "kVA"},
    {"name": "Apparent power L2", "group": "Measurements", "area": "holding", "address": 20518, "type": "float32", "access": "R", "unit": "kVA"},
    {"name": "Apparent power L3", "group": "Measurements", "area": "holding", "address": 20520, "type": "float32", "access": "R", "unit": "kVA"},
    {"name": "Power factor total", "group": "Measurements", "area": "holding", "address": 20522, "type": "float32", "access": "R"},
    {"name": "Power factor L1", "group": "Measurements", "area": "holding", "address": 20524, "type": "float32", "access": "R"},
    {"name": "Power factor L2", "group": "Measurements", "area": "holding", "address": 20526, "type": "float32", "access": "R"},
    {"name": "Power factor L3", "group": "Measurements", "area": "holding", "address": 20528, "type": "float32", "access": "R"},
    {"name": "Voltage L1-L2", "group": "Measurements", "area": "holding", "address": 20530, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Voltage L1-L3", "group": "Measurements", "area": "holding", "address": 20532, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Voltage L2-L3", "group": "Measurements", "area": "holding", "address": 20534, "type": "float32", "access": "R", "unit": "V"},
    {"name": "Active energy total", "group": "Energy", "area": "holding", "address": 24576, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total T1", "group": "Energy", "area": "holding", "address": 24578, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total T2", "group": "Energy", "area": "holding", "address": 24580, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total L1", "group": "Energy", "area": "holding", "address": 24582, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total L2", "group": "Energy", "area": "holding", "address": 24584, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total L3", "group": "Energy", "area": "holding", "address": 24586, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import", "group": "Energy", "area": "holding", "address": 24588, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import T1", "group": "Energy", "area": "holding", "address": 24590, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import T2", "group": "Energy", "area": "holding", "address": 24592, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import L1", "group": "Energy", "area": "holding", "address": 24594, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import L2", "group": "Energy", "area": "holding", "address": 24596, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import L3", "group": "Energy", "area": "holding", "address": 24598, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export", "group": "Energy", "area": "holding", "address": 24600, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export T1", "group": "Energy", "area": "holding", "address": 24602, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export T2", "group": "Energy", "area": "holding", "address": 24604, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export L1", "group": "Energy", "area": "holding", "address": 24606, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export L2", "group": "Energy", "area": "holding", "address": 24608, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export L3", "group": "Energy", "area": "holding", "address": 24610, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Reactive energy total", "group": "Energy", "area": "holding", "address": 24612, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total T1", "group": "Energy", "area": "holding", "address": 24614, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total T2", "group": "Energy", "area": "holding", "address": 24616, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total L1", "group": "Energy", "area": "holding", "address": 24618, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total L2", "group": "Energy", "area": "holding", "address": 24620, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total L3", "group": "Energy", "area": "holding", "address": 24622, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import", "group": "Energy", "area": "holding", "address": 24624, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import T1", "group": "Energy", "area": "holding", "address": 24626, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import T2", "group": "Energy", "area": "holding", "address": 24628, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import L1", "group": "Energy", "area": "holding", "address": 24630, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import L2", "group": "Energy", "area": "holding", "address": 24632, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import L3", "group": "Energy", "area": "holding", "address": 24634, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export", "group": "Energy", "area": "holding", "address": 24636, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export T1", "group": "Energy", "area": "holding", "address": 24638, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export T2", "group": "Energy", "area": "holding", "address": 24640, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export L1", "group": "Energy", "area": "holding", "address": 24642, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export L2", "group": "Energy", "area": "holding", "address": 24644, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export L3", "group": "Energy", "area": "holding", "address": 24646, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Active tariff", "group": "Energy", "area": "holding", "address": 24648, "type": "int16", "access": "RW", "description": "Active tariff, 1 to 4; written with function 06", "enum": "tariff"},
    {"name": "Day energy", "group": "Energy", "area": "holding", "address": 24649, "type": "float32", "access": "RW", "unit": "kWh", "description": "Resettable day register; write zero to reset it"},
    {"name": "Active energy total T3", "group": "Energy", "area": "holding", "address": 24651, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy total T4", "group": "Energy", "area": "holding", "address": 24653, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import T3", "group": "Energy", "area": "holding", "address": 24655, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy import T4", "group": "Energy", "area": "holding", "address": 24657, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export T3", "group": "Energy", "area": "holding", "address": 24659, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Active energy export T4", "group": "Energy", "area": "holding", "address": 24661, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Reactive energy total T3", "group": "Energy", "area": "holding", "address": 24663, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy total T4", "group": "Energy", "area": "holding", "address": 24665, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import T3", "group": "Energy", "area": "holding", "address": 24667, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy import T4", "group": "Energy", "area": "holding", "address": 24669, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export T3", "group": "Energy", "area": "holding", "address": 24671, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy export T4", "group": "Energy", "area": "holding", "address": 24673, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q1", "group": "Energy", "area": "holding", "address": 24675, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q1 T1", "group": "Energy", "area": "holding", "address": 24677, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q1 T2", "group": "Energy", "area": "holding", "address": 24679, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q1 T3", "group": "Energy", "area": "holding", "address": 24681, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q1 T4", "group": "Energy", "area": "holding", "address": 24683, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q2", "group": "Energy", "area": "holding", "address": 24685, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q2 T1", "group": "Energy", "area": "holding", "address": 24687, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q2 T2", "group": "Energy", "area": "holding", "address": 24689, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q2 T3", "group": "Energy", "area": "holding", "address": 24691, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q2 T4", "group": "Energy", "area": "holding", "address": 24693, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q3", "group": "Energy", "area": "holding", "address": 24695, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q3 T1", "group": "Energy", "area": "holding", "address": 24697, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q3 T2", "group": "Energy", "area": "holding", "address": 24699, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q3 T3", "group": "Energy", "area": "holding", "address": 24701, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q3 T4", "group": "Energy", "area": "holding", "address": 24703, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q4", "group": "Energy", "area": "holding", "address": 24705, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q4 T1", "group": "Energy", "area": "holding", "address": 24707, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q4 T2", "group": "Energy", "area": "holding", "address": 24709, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q4 T3", "group": "Energy", "area": "holding", "address": 24711, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Reactive energy Q4 T4", "group": "Energy", "area": "holding", "address": 24713, "type": "float32", "access": "R", "unit": "kvarh"},
    {"name": "Day energy L1", "group": "Energy", "area": "holding", "address": 24715, "type": "float32", "access": "RW", "unit": "kWh", "description": "Resettable day register per phase"},
    {"name": "Day energy L2", "group": "Energy", "area": "holding", "address": 24717, "type": "float32", "access": "RW", "unit": "kWh", "description": "Resettable day register per phase"},
    {"name": "Day energy L3", "group": "Energy", "area": "holding", "address": 24719, "type": "float32", "access": "RW", "unit": "kWh", "description": "Resettable day register per phase"},
    {"name": "Total forward active energy CT 5/5", "group": "Energy", "area": "holding", "address": 24832, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT 5/5", "group": "Energy", "area": "holding", "address": 24842, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 1", "group": "Energy", "area": "holding", "address": 24852, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 1", "group": "Energy", "area": "holding", "address": 24862, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 2", "group": "Energy", "area": "holding", "address": 24872, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 2", "group": "Energy", "area": "holding", "address": 24882, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 3", "group": "Energy", "area": "holding", "address": 24892, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 3", "group": "Energy", "area": "holding", "address": 24902, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 4", "group": "Energy", "area": "holding", "address": 24912, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 4", "group": "Energy", "area": "holding", "address": 24922, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 5", "group": "Energy", "area": "holding", "address": 24932, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 5", "group": "Energy", "area": "holding", "address": 24942, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 6", "group": "Energy", "area": "holding", "address": 24952, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 6", "group": "Energy", "area": "holding", "address": 24962, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total forward active energy CT history 7", "group": "Energy", "area": "holding", "address": 24972, "type": "float32", "access": "R", "unit": "kWh"},
    {"name": "Total reverse active energy CT history 7", "group": "Energy", "area": "holding", "address": 24982, "type": "float32", "access": "R", "unit": "kWh"}
  ],
  "baudrate": 9600,
  "parity": "N",
  "databits": 8,
  "stopbits": 1
}
