{
  "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json",
  "mbmap": 2,
  "vendor": "Allen-Bradley",
  "model": "Powermonitor 3000",
  "models": ["1404 (Powermonitor 3000)", "1404-M4", "1404-M5", "1404-M6", "1404-M8"],
  "vendor_website": "rockwellautomation.com",
  "description": "Bulletin 1404 Powermonitor 3000 power monitors (M4, M5, M6, M8), native RS485 port with Modbus RTU",
  "revision": 2,
  "revised": "2026-10-17",
  "source": "Rockwell Automation, \"Powermonitor 3000 User Manual\", publication 1404-UM001F-EN-P (November 2009), chapter 4 and appendix A",
  "sources": [{"title": "Powermonitor 3000 User Manual", "version": "1404-UM001F-EN-P", "date": "2009-11", "url": "https://literature.rockwellautomation.com/idc/groups/literature/documents/um/1404-um001_-en-p.pdf", "note": "chapter 4 (Modbus RTU slave) and appendix A data tables"}],
  "notes": [
    "Modbus RTU on the native RS-485 or RS-232 port (auto-sense by default); Modbus ASCII and TCP are not supported. FC03/FC04 read, FC06/FC16 write, at most 100 registers per request.",
    "Addresses are the one-based numbers of the manual: 30101 = input register 101, 40001 = holding register 1.",
    "Floats are IEEE 754, big endian, high word first; a float must be read from its first (odd) address.",
    "Energies are split into five signed parts (× 10^9, 10^6, 10^3, 1, 10^-3); add them for the value.",
    "Configuration changes need the password in the first element of each table. Setpoints, logs, oscillography, TOU and the other tables of appendix A are left out."
  ],
  "protocol": "rtu",
  "unit_id": 1,
  "byte_order": "big",
  "word_order": "big",
  "address_base": 1,
  "max_read_registers": 100,
  "x_status": "official",
  "registers": [
    {"name": "Relay output", "group": "I/O", "area": "input", "address": 1, "type": "int16", "access": "R", "enum": {"0": "De-energised", "1": "Energised", "2": "Forced de-energised", "3": "Forced energised"}},
    {"name": "KYZ output", "group": "I/O", "area": "input", "address": 2, "type": "int16", "access": "R", "enum": {"0": "De-energised", "1": "Energised", "2": "Forced de-energised", "3": "Forced energised"}},
    {"name": "Alarm output flags", "group": "I/O", "area": "input", "address": 3, "type": "uint16", "access": "R", "description": "Bit n = setpoint output flag n+1"},
    {"name": "Status input 1", "group": "I/O", "area": "input", "address": 4, "type": "bool", "bit": 0, "access": "R"},
    {"name": "Status input 2", "group": "I/O", "area": "input", "address": 4, "type": "bool", "bit": 1, "access": "R"},
    {"name": "Demand sync timeout", "group": "I/O", "area": "input", "address": 4, "type": "bool", "bit": 2, "access": "R"},
    {"name": "Status input 1 counter", "group": "I/O", "area": "input", "address": 5, "type": "int16", "access": "R", "description": "Rolls over after 29999"},
    {"name": "Status input 2 counter", "group": "I/O", "area": "input", "address": 6, "type": "int16", "access": "R"},
    {"name": "L1 current", "group": "Voltage, current, frequency", "area": "input", "address": 101, "type": "float32", "unit": "A", "access": "R"},
    {"name": "L2 current", "group": "Voltage, current, frequency", "area": "input", "address": 103, "type": "float32", "unit": "A", "access": "R"},
    {"name": "L3 current", "group": "Voltage, current, frequency", "area": "input", "address": 105, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Average current", "group": "Voltage, current, frequency", "area": "input", "address": 107, "type": "float32", "unit": "A", "access": "R"},
    {"name": "L1-N voltage", "group": "Voltage, current, frequency", "area": "input", "address": 109, "type": "float32", "unit": "V", "access": "R"},
    {"name": "L2-N voltage", "group": "Voltage, current, frequency", "area": "input", "address": 111, "type": "float32", "unit": "V", "access": "R"},
    {"name": "L3-N voltage", "group": "Voltage, current, frequency", "area": "input", "address": 113, "type": "float32", "unit": "V", "access": "R"},
    {"name": "Average L-N voltage", "group": "Voltage, current, frequency", "area": "input", "address": 115, "type": "float32", "unit": "V", "access": "R"},
    {"name": "L1-L2 voltage", "group": "Voltage, current, frequency", "area": "input", "address": 117, "type": "float32", "unit": "V", "access": "R"},
    {"name": "L2-L3 voltage", "group": "Voltage, current, frequency", "area": "input", "address": 119, "type": "float32", "unit": "V", "access": "R"},
    {"name": "L3-L1 voltage", "group": "Voltage, current, frequency", "area": "input", "address": 121, "type": "float32", "unit": "V", "access": "R"},
    {"name": "Average L-L voltage", "group": "Voltage, current, frequency", "area": "input", "address": 123, "type": "float32", "unit": "V", "access": "R"},
    {"name": "Frequency", "group": "Voltage, current, frequency", "area": "input", "address": 125, "type": "float32", "unit": "Hz", "access": "R", "description": "Last cycle; 0 or 999 when out of range"},
    {"name": "Metering iteration", "group": "Voltage, current, frequency", "area": "input", "address": 127, "type": "float32", "access": "R"},
    {"name": "L4 (zero sequence) current", "group": "Sequence components", "area": "input", "address": 201, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Positive sequence current", "group": "Sequence components", "area": "input", "address": 203, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Negative sequence current", "group": "Sequence components", "area": "input", "address": 205, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Current unbalance", "group": "Sequence components", "area": "input", "address": 207, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Positive sequence voltage", "group": "Sequence components", "area": "input", "address": 209, "type": "float32", "unit": "V", "access": "R"},
    {"name": "Negative sequence voltage", "group": "Sequence components", "area": "input", "address": 211, "type": "float32", "unit": "V", "access": "R"},
    {"name": "Voltage unbalance", "group": "Sequence components", "area": "input", "address": 213, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Phase rotation", "group": "Sequence components", "area": "input", "address": 215, "type": "float32", "access": "R", "description": "0 none, 1 ABC, 2 ACB"},
    {"name": "Average frequency", "group": "Sequence components", "area": "input", "address": 217, "type": "float32", "unit": "Hz", "access": "R"},
    {"name": "Frequency source", "group": "Sequence components", "area": "input", "address": 219, "type": "float32", "access": "R", "description": "0 V1, 1 V2, 2 V3"},
    {"name": "Sequence iteration", "group": "Sequence components", "area": "input", "address": 221, "type": "float32", "access": "R"},
    {"name": "L1 real power", "group": "Power", "area": "input", "address": 301, "type": "float32", "unit": "W", "access": "R"},
    {"name": "L2 real power", "group": "Power", "area": "input", "address": 303, "type": "float32", "unit": "W", "access": "R"},
    {"name": "L3 real power", "group": "Power", "area": "input", "address": 305, "type": "float32", "unit": "W", "access": "R"},
    {"name": "Total real power", "group": "Power", "area": "input", "address": 307, "type": "float32", "unit": "W", "access": "R", "description": "Signed to show direction"},
    {"name": "L1 reactive power", "group": "Power", "area": "input", "address": 309, "type": "float32", "unit": "var", "access": "R"},
    {"name": "L2 reactive power", "group": "Power", "area": "input", "address": 311, "type": "float32", "unit": "var", "access": "R"},
    {"name": "L3 reactive power", "group": "Power", "area": "input", "address": 313, "type": "float32", "unit": "var", "access": "R"},
    {"name": "Total reactive power", "group": "Power", "area": "input", "address": 315, "type": "float32", "unit": "var", "access": "R"},
    {"name": "L1 apparent power", "group": "Power", "area": "input", "address": 317, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "L2 apparent power", "group": "Power", "area": "input", "address": 319, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "L3 apparent power", "group": "Power", "area": "input", "address": 321, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "Total apparent power", "group": "Power", "area": "input", "address": 323, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "Power iteration", "group": "Power", "area": "input", "address": 325, "type": "float32", "access": "R"},
    {"name": "Demand current", "group": "Demand", "area": "input", "address": 401, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Demand power", "group": "Demand", "area": "input", "address": 403, "type": "float32", "unit": "W", "access": "R"},
    {"name": "Demand reactive power", "group": "Demand", "area": "input", "address": 405, "type": "float32", "unit": "var", "access": "R"},
    {"name": "Demand apparent power", "group": "Demand", "area": "input", "address": 407, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "Projected demand current", "group": "Demand", "area": "input", "address": 409, "type": "float32", "unit": "A", "access": "R"},
    {"name": "Projected demand power", "group": "Demand", "area": "input", "address": 411, "type": "float32", "unit": "W", "access": "R"},
    {"name": "Projected demand reactive power", "group": "Demand", "area": "input", "address": 413, "type": "float32", "unit": "var", "access": "R"},
    {"name": "Projected demand apparent power", "group": "Demand", "area": "input", "address": 415, "type": "float32", "unit": "VA", "access": "R"},
    {"name": "Elapsed demand period", "group": "Demand", "area": "input", "address": 417, "type": "float32", "unit": "min", "access": "R"},
    {"name": "Demand iteration", "group": "Demand", "area": "input", "address": 419, "type": "float32", "access": "R"},
    {"name": "L1 true power factor", "group": "Power factor", "area": "input", "address": 501, "type": "float32", "unit": "%", "access": "R", "description": "+ lead, - lag"},
    {"name": "L2 true power factor", "group": "Power factor", "area": "input", "address": 503, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L3 true power factor", "group": "Power factor", "area": "input", "address": 505, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Three-phase true power factor", "group": "Power factor", "area": "input", "address": 507, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L1 displacement power factor", "group": "Power factor", "area": "input", "address": 509, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L2 displacement power factor", "group": "Power factor", "area": "input", "address": 511, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L3 displacement power factor", "group": "Power factor", "area": "input", "address": 513, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Three-phase displacement power factor", "group": "Power factor", "area": "input", "address": 515, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L1 distortion power factor", "group": "Power factor", "area": "input", "address": 517, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L2 distortion power factor", "group": "Power factor", "area": "input", "address": 519, "type": "float32", "unit": "%", "access": "R"},
    {"name": "L3 distortion power factor", "group": "Power factor", "area": "input", "address": 521, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Three-phase distortion power factor", "group": "Power factor", "area": "input", "address": 523, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Power factor iteration", "group": "Power factor", "area": "input", "address": 525, "type": "float32", "access": "R"},
    {"name": "Harmonic channel", "group": "Harmonics", "area": "input", "address": 1201, "type": "float32", "access": "R", "description": "1-9; selected through the harmonic analysis configuration table"},
    {"name": "THD (IEEE)", "group": "Harmonics", "area": "input", "address": 1203, "type": "float32", "unit": "%", "access": "R"},
    {"name": "thd (IEC/DIN)", "group": "Harmonics", "area": "input", "address": 1205, "type": "float32", "unit": "%", "access": "R"},
    {"name": "Crest factor", "group": "Harmonics", "area": "input", "address": 1207, "type": "float32", "access": "R"},
    {"name": "THD iteration", "group": "Harmonics", "area": "input", "address": 1209, "type": "float32", "access": "R"},
    {"name": "TIF", "group": "Harmonics", "area": "input", "address": 1211, "type": "float32", "access": "R", "description": "M6/M8"},
    {"name": "K-factor", "group": "Harmonics", "area": "input", "address": 1213, "type": "float32", "access": "R", "description": "M6/M8"},
    {"name": "IEEE-519 TDD", "group": "Harmonics", "area": "input", "address": 1215, "type": "float32", "access": "R", "description": "M6/M8"},
    {"name": "IEEE-519 pass/fail", "group": "Harmonics", "area": "input", "address": 1217, "type": "float32", "access": "R", "description": "M6/M8; -1 to 1"},
    {"name": "FFT iteration", "group": "Harmonics", "area": "input", "address": 1219, "type": "float32", "access": "R", "description": "M6/M8"},
    {"name": "Energy password", "group": "Energy commands", "area": "holding", "address": 501, "type": "int16", "access": "W", "write_min": 0, "write_max": 9999, "description": "Needed to clear or preset energy counters; reads -1"},
    {"name": "Energy parameter select", "group": "Energy commands", "area": "holding", "address": 502, "type": "int16", "access": "RW", "description": "Bit field, see the manual section on clearing energy counters"},
    {"name": "kWh forward × 10^9", "group": "Energy", "area": "holding", "address": 503, "type": "int16", "scale": 1000000000.0, "unit": "kWh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kWh forward × 10^6", "group": "Energy", "area": "holding", "address": 504, "type": "int16", "scale": 1000000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh forward × 10^3", "group": "Energy", "area": "holding", "address": 505, "type": "int16", "scale": 1000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh forward × 1", "group": "Energy", "area": "holding", "address": 506, "type": "int16", "scale": 1, "unit": "kWh", "access": "R"},
    {"name": "kWh forward × 10^-3", "group": "Energy", "area": "holding", "address": 507, "type": "int16", "scale": 0.001, "unit": "kWh", "access": "R"},
    {"name": "kWh reverse × 10^9", "group": "Energy", "area": "holding", "address": 508, "type": "int16", "scale": 1000000000.0, "unit": "kWh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kWh reverse × 10^6", "group": "Energy", "area": "holding", "address": 509, "type": "int16", "scale": 1000000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh reverse × 10^3", "group": "Energy", "area": "holding", "address": 510, "type": "int16", "scale": 1000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh reverse × 1", "group": "Energy", "area": "holding", "address": 511, "type": "int16", "scale": 1, "unit": "kWh", "access": "R"},
    {"name": "kWh reverse × 10^-3", "group": "Energy", "area": "holding", "address": 512, "type": "int16", "scale": 0.001, "unit": "kWh", "access": "R"},
    {"name": "kWh net × 10^9", "group": "Energy", "area": "holding", "address": 513, "type": "int16", "scale": 1000000000.0, "unit": "kWh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kWh net × 10^6", "group": "Energy", "area": "holding", "address": 514, "type": "int16", "scale": 1000000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh net × 10^3", "group": "Energy", "area": "holding", "address": 515, "type": "int16", "scale": 1000.0, "unit": "kWh", "access": "R"},
    {"name": "kWh net × 1", "group": "Energy", "area": "holding", "address": 516, "type": "int16", "scale": 1, "unit": "kWh", "access": "R"},
    {"name": "kWh net × 10^-3", "group": "Energy", "area": "holding", "address": 517, "type": "int16", "scale": 0.001, "unit": "kWh", "access": "R"},
    {"name": "kVAh × 10^9", "group": "Energy", "area": "holding", "address": 518, "type": "int16", "scale": 1000000000.0, "unit": "kVAh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kVAh × 10^6", "group": "Energy", "area": "holding", "address": 519, "type": "int16", "scale": 1000000.0, "unit": "kVAh", "access": "R"},
    {"name": "kVAh × 10^3", "group": "Energy", "area": "holding", "address": 520, "type": "int16", "scale": 1000.0, "unit": "kVAh", "access": "R"},
    {"name": "kVAh × 1", "group": "Energy", "area": "holding", "address": 521, "type": "int16", "scale": 1, "unit": "kVAh", "access": "R"},
    {"name": "kVAh × 10^-3", "group": "Energy", "area": "holding", "address": 522, "type": "int16", "scale": 0.001, "unit": "kVAh", "access": "R"},
    {"name": "Energy iteration", "group": "Energy", "area": "holding", "address": 523, "type": "int16", "access": "R"},
    {"name": "Reactive energy password", "group": "Energy commands", "area": "holding", "address": 601, "type": "int16", "access": "W", "write_min": 0, "write_max": 9999},
    {"name": "Reactive energy parameter select", "group": "Energy commands", "area": "holding", "address": 602, "type": "int16", "access": "RW"},
    {"name": "kvarh forward × 10^9", "group": "Energy", "area": "holding", "address": 603, "type": "int16", "scale": 1000000000.0, "unit": "kvarh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kvarh forward × 10^6", "group": "Energy", "area": "holding", "address": 604, "type": "int16", "scale": 1000000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh forward × 10^3", "group": "Energy", "area": "holding", "address": 605, "type": "int16", "scale": 1000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh forward × 1", "group": "Energy", "area": "holding", "address": 606, "type": "int16", "scale": 1, "unit": "kvarh", "access": "R"},
    {"name": "kvarh forward × 10^-3", "group": "Energy", "area": "holding", "address": 607, "type": "int16", "scale": 0.001, "unit": "kvarh", "access": "R"},
    {"name": "kvarh reverse × 10^9", "group": "Energy", "area": "holding", "address": 608, "type": "int16", "scale": 1000000000.0, "unit": "kvarh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kvarh reverse × 10^6", "group": "Energy", "area": "holding", "address": 609, "type": "int16", "scale": 1000000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh reverse × 10^3", "group": "Energy", "area": "holding", "address": 610, "type": "int16", "scale": 1000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh reverse × 1", "group": "Energy", "area": "holding", "address": 611, "type": "int16", "scale": 1, "unit": "kvarh", "access": "R"},
    {"name": "kvarh reverse × 10^-3", "group": "Energy", "area": "holding", "address": 612, "type": "int16", "scale": 0.001, "unit": "kvarh", "access": "R"},
    {"name": "kvarh net × 10^9", "group": "Energy", "area": "holding", "address": 613, "type": "int16", "scale": 1000000000.0, "unit": "kvarh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kvarh net × 10^6", "group": "Energy", "area": "holding", "address": 614, "type": "int16", "scale": 1000000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh net × 10^3", "group": "Energy", "area": "holding", "address": 615, "type": "int16", "scale": 1000.0, "unit": "kvarh", "access": "R"},
    {"name": "kvarh net × 1", "group": "Energy", "area": "holding", "address": 616, "type": "int16", "scale": 1, "unit": "kvarh", "access": "R"},
    {"name": "kvarh net × 10^-3", "group": "Energy", "area": "holding", "address": 617, "type": "int16", "scale": 0.001, "unit": "kvarh", "access": "R"},
    {"name": "kAh × 10^9", "group": "Energy", "area": "holding", "address": 618, "type": "int16", "scale": 1000000000.0, "unit": "kAh", "access": "R", "description": "Add the five parts for the value; each part is -999 to 999"},
    {"name": "kAh × 10^6", "group": "Energy", "area": "holding", "address": 619, "type": "int16", "scale": 1000000.0, "unit": "kAh", "access": "R"},
    {"name": "kAh × 10^3", "group": "Energy", "area": "holding", "address": 620, "type": "int16", "scale": 1000.0, "unit": "kAh", "access": "R"},
    {"name": "kAh × 1", "group": "Energy", "area": "holding", "address": 621, "type": "int16", "scale": 1, "unit": "kAh", "access": "R"},
    {"name": "kAh × 10^-3", "group": "Energy", "area": "holding", "address": 622, "type": "int16", "scale": 0.001, "unit": "kAh", "access": "R"},
    {"name": "Reactive energy iteration", "group": "Energy", "area": "holding", "address": 623, "type": "int16", "access": "R"},
    {"name": "Bulletin number", "group": "Diagnostics", "area": "input", "address": 601, "type": "int16", "access": "R", "enum": {"1404": "1404 (Powermonitor 3000)"}, "reference": 1404, "role": "model"},
    {"name": "Series", "group": "Diagnostics", "area": "input", "address": 602, "type": "int16", "access": "R", "enum": {"0": "A", "1": "B", "2": "C", "3": "D", "4": "E", "5": "F", "6": "G", "7": "H", "8": "I"}},
    {"name": "Overall status", "group": "Diagnostics", "area": "input", "address": 603, "type": "int16", "access": "R", "description": "0 = OK"},
    {"name": "Data acquisition status", "group": "Diagnostics", "area": "input", "address": 604, "type": "int16", "access": "R"},
    {"name": "Data flash status", "group": "Diagnostics", "area": "input", "address": 605, "type": "int16", "access": "R"},
    {"name": "Real-time clock status", "group": "Diagnostics", "area": "input", "address": 606, "type": "int16", "access": "R"},
    {"name": "RTC NVRAM status", "group": "Diagnostics", "area": "input", "address": 607, "type": "int16", "access": "R"},
    {"name": "Option communication status", "group": "Diagnostics", "area": "input", "address": 608, "type": "int16", "access": "R"},
    {"name": "Display module status", "group": "Diagnostics", "area": "input", "address": 609, "type": "int16", "access": "R"},
    {"name": "Watchdog status", "group": "Diagnostics", "area": "input", "address": 610, "type": "int16", "access": "R"},
    {"name": "Code flash status", "group": "Diagnostics", "area": "input", "address": 611, "type": "int16", "access": "R"},
    {"name": "RAM status", "group": "Diagnostics", "area": "input", "address": 612, "type": "int16", "access": "R"},
    {"name": "Application firmware", "group": "Diagnostics", "area": "input", "address": 613, "type": "int16", "scale": 0.01, "access": "R", "role": "firmware", "description": "100 = 1.00"},
    {"name": "Boot code firmware", "group": "Diagnostics", "area": "input", "address": 614, "type": "int16", "scale": 0.01, "access": "R"},
    {"name": "Option communication firmware", "group": "Diagnostics", "area": "input", "address": 616, "type": "int16", "scale": 0.01, "access": "R", "description": "0 = none"},
    {"name": "Display module firmware", "group": "Diagnostics", "area": "input", "address": 617, "type": "int16", "scale": 0.01, "access": "R", "description": "0 = no display module"},
    {"name": "Master module type", "group": "Diagnostics", "area": "input", "address": 624, "type": "int16", "access": "R", "enum": {"4": "M4", "5": "M5", "6": "M6", "8": "M8"}},
    {"name": "Display module", "group": "Diagnostics", "area": "input", "address": 625, "type": "int16", "access": "R", "enum": {"0": "None", "1": "1404-DM connected"}},
    {"name": "Configuration password", "group": "Settings", "area": "holding", "address": 1, "type": "float32", "access": "W", "write_min": 0, "write_max": 9999, "description": "Needed to change the configuration; reads -1"},
    {"name": "Wiring mode", "group": "Settings", "area": "holding", "address": 3, "type": "float32", "access": "RW", "write_min": 0, "write_max": 8, "description": "0 Delta 3 CT, 1 Delta 2 CT, 2 Direct delta 3 CT, 3 Direct delta 2 CT, 4 Open delta 3 CT, 5 Open delta 2 CT, 6 Wye (default), 7 Single phase, 8 Demo"},
    {"name": "PT primary", "group": "Settings", "area": "holding", "address": 5, "type": "float32", "unit": "V", "access": "RW", "write_min": 1, "write_max": 10000000},
    {"name": "PT secondary", "group": "Settings", "area": "holding", "address": 7, "type": "float32", "unit": "V", "access": "RW", "write_min": 1, "write_max": 600},
    {"name": "CT primary", "group": "Settings", "area": "holding", "address": 9, "type": "float32", "unit": "A", "access": "RW", "write_min": 1, "write_max": 10000000},
    {"name": "CT secondary", "group": "Settings", "area": "holding", "address": 11, "type": "float32", "unit": "A", "access": "RW", "write_min": 1, "write_max": 5},
    {"name": "I4 CT primary", "group": "Settings", "area": "holding", "address": 13, "type": "float32", "unit": "A", "access": "RW", "write_min": 1, "write_max": 10000000},
    {"name": "I4 CT secondary", "group": "Settings", "area": "holding", "address": 15, "type": "float32", "unit": "A", "access": "RW", "write_min": 1, "write_max": 5},
    {"name": "Nominal system voltage", "group": "Settings", "area": "holding", "address": 17, "type": "float32", "unit": "V", "access": "RW", "write_min": 1, "write_max": 10000000, "description": "M6/M8"},
    {"name": "Clock password", "group": "Clock", "area": "holding", "address": 101, "type": "int16", "access": "W", "write_min": 0, "write_max": 9999},
    {"name": "Clock year", "group": "Clock", "area": "holding", "address": 102, "type": "int16", "access": "RW", "write_min": 1998, "write_max": 2097},
    {"name": "Clock month", "group": "Clock", "area": "holding", "address": 103, "type": "int16", "access": "RW", "write_min": 1, "write_max": 12},
    {"name": "Clock day", "group": "Clock", "area": "holding", "address": 104, "type": "int16", "access": "RW", "write_min": 1, "write_max": 31},
    {"name": "Clock hour", "group": "Clock", "area": "holding", "address": 105, "type": "int16", "access": "RW", "write_min": 0, "write_max": 23},
    {"name": "Clock minute", "group": "Clock", "area": "holding", "address": 106, "type": "int16", "access": "RW", "write_min": 0, "write_max": 59},
    {"name": "Clock second", "group": "Clock", "area": "holding", "address": 107, "type": "int16", "access": "RW", "write_min": 0, "write_max": 59},
    {"name": "Clock hundredths", "group": "Clock", "area": "holding", "address": 108, "type": "int16", "access": "RW", "write_min": 0, "write_max": 99}
  ]
}
