{
  "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json",
  "mbmap": 2,
  "vendor": "Moxa",
  "model": "ioLogik E1211",
  "models": ["ioLogik E1211", "ioLogik E1211-T"],
  "vendor_website": "moxa.com",
  "description": "Remote Ethernet I/O with 16 digital outputs and a two-port Ethernet switch",
  "revision": 2,
  "revised": "2026-10-17",
  "source": "Moxa, \"ioLogik E1200 Series User Manual\", version 16.1 (April 2024), Appendix A",
  "sources": [{"title": "ioLogik E1200 Series User Manual", "version": "16.1", "date": "2024-04", "url": "https://moxa.ru/files/Manuals_IE/moxa-iologik-e1200-series-manual-v16_1.pdf", "note": "Appendix A, Modbus/TCP default address mappings"}],
  "notes": [
    "Default Modbus/TCP address map (Appendix A). The addresses can be changed in the web console under user-defined Modbus addressing; this map fits the defaults.",
    "32-bit values are high word first."
  ],
  "protocol": "tcp",
  "unit_id": 1,
  "port": 502,
  "byte_order": "big",
  "word_order": "big",
  "address_base": 0,
  "x_status": "official",
  "registers": [
    {"name": "DO 0 status", "group": "DO", "area": "coil", "address": 0, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 1 status", "group": "DO", "area": "coil", "address": 1, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 2 status", "group": "DO", "area": "coil", "address": 2, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 3 status", "group": "DO", "area": "coil", "address": 3, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 4 status", "group": "DO", "area": "coil", "address": 4, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 5 status", "group": "DO", "area": "coil", "address": 5, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 6 status", "group": "DO", "area": "coil", "address": 6, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 7 status", "group": "DO", "area": "coil", "address": 7, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 8 status", "group": "DO", "area": "coil", "address": 8, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 9 status", "group": "DO", "area": "coil", "address": 9, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 10 status", "group": "DO", "area": "coil", "address": 10, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 11 status", "group": "DO", "area": "coil", "address": 11, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 12 status", "group": "DO", "area": "coil", "address": 12, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 13 status", "group": "DO", "area": "coil", "address": 13, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 14 status", "group": "DO", "area": "coil", "address": 14, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 15 status", "group": "DO", "area": "coil", "address": 15, "type": "bool", "access": "RW", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 0 pulse status", "group": "DO", "area": "coil", "address": 16, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 1 pulse status", "group": "DO", "area": "coil", "address": 17, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 2 pulse status", "group": "DO", "area": "coil", "address": 18, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 3 pulse status", "group": "DO", "area": "coil", "address": 19, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 4 pulse status", "group": "DO", "area": "coil", "address": 20, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 5 pulse status", "group": "DO", "area": "coil", "address": 21, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 6 pulse status", "group": "DO", "area": "coil", "address": 22, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 7 pulse status", "group": "DO", "area": "coil", "address": 23, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 8 pulse status", "group": "DO", "area": "coil", "address": 24, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 9 pulse status", "group": "DO", "area": "coil", "address": 25, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 10 pulse status", "group": "DO", "area": "coil", "address": 26, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 11 pulse status", "group": "DO", "area": "coil", "address": 27, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 12 pulse status", "group": "DO", "area": "coil", "address": 28, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 13 pulse status", "group": "DO", "area": "coil", "address": 29, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 14 pulse status", "group": "DO", "area": "coil", "address": 30, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO 15 pulse status", "group": "DO", "area": "coil", "address": 31, "type": "bool", "access": "RW", "enum": {"0": "Stop", "1": "Start"}},
    {"name": "DO all status", "group": "DO", "area": "holding", "address": 32, "type": "uint16", "access": "RW", "description": "Bit n = DO n (DO-00 in bit 0)"},
    {"name": "DO 0 pulse count", "group": "DO", "area": "holding", "address": 36, "type": "uint16", "access": "RW"},
    {"name": "DO 1 pulse count", "group": "DO", "area": "holding", "address": 37, "type": "uint16", "access": "RW"},
    {"name": "DO 2 pulse count", "group": "DO", "area": "holding", "address": 38, "type": "uint16", "access": "RW"},
    {"name": "DO 3 pulse count", "group": "DO", "area": "holding", "address": 39, "type": "uint16", "access": "RW"},
    {"name": "DO 4 pulse count", "group": "DO", "area": "holding", "address": 40, "type": "uint16", "access": "RW"},
    {"name": "DO 5 pulse count", "group": "DO", "area": "holding", "address": 41, "type": "uint16", "access": "RW"},
    {"name": "DO 6 pulse count", "group": "DO", "area": "holding", "address": 42, "type": "uint16", "access": "RW"},
    {"name": "DO 7 pulse count", "group": "DO", "area": "holding", "address": 43, "type": "uint16", "access": "RW"},
    {"name": "DO 8 pulse count", "group": "DO", "area": "holding", "address": 44, "type": "uint16", "access": "RW"},
    {"name": "DO 9 pulse count", "group": "DO", "area": "holding", "address": 45, "type": "uint16", "access": "RW"},
    {"name": "DO 10 pulse count", "group": "DO", "area": "holding", "address": 46, "type": "uint16", "access": "RW"},
    {"name": "DO 11 pulse count", "group": "DO", "area": "holding", "address": 47, "type": "uint16", "access": "RW"},
    {"name": "DO 12 pulse count", "group": "DO", "area": "holding", "address": 48, "type": "uint16", "access": "RW"},
    {"name": "DO 13 pulse count", "group": "DO", "area": "holding", "address": 49, "type": "uint16", "access": "RW"},
    {"name": "DO 14 pulse count", "group": "DO", "area": "holding", "address": 50, "type": "uint16", "access": "RW"},
    {"name": "DO 15 pulse count", "group": "DO", "area": "holding", "address": 51, "type": "uint16", "access": "RW"},
    {"name": "DO 0 pulse on width", "group": "DO", "area": "holding", "address": 52, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 1 pulse on width", "group": "DO", "area": "holding", "address": 53, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 2 pulse on width", "group": "DO", "area": "holding", "address": 54, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 3 pulse on width", "group": "DO", "area": "holding", "address": 55, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 4 pulse on width", "group": "DO", "area": "holding", "address": 56, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 5 pulse on width", "group": "DO", "area": "holding", "address": 57, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 6 pulse on width", "group": "DO", "area": "holding", "address": 58, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 7 pulse on width", "group": "DO", "area": "holding", "address": 59, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 8 pulse on width", "group": "DO", "area": "holding", "address": 60, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 9 pulse on width", "group": "DO", "area": "holding", "address": 61, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 10 pulse on width", "group": "DO", "area": "holding", "address": 62, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 11 pulse on width", "group": "DO", "area": "holding", "address": 63, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 12 pulse on width", "group": "DO", "area": "holding", "address": 64, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 13 pulse on width", "group": "DO", "area": "holding", "address": 65, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 14 pulse on width", "group": "DO", "area": "holding", "address": 66, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 15 pulse on width", "group": "DO", "area": "holding", "address": 67, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 0 pulse off width", "group": "DO", "area": "holding", "address": 68, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 1 pulse off width", "group": "DO", "area": "holding", "address": 69, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 2 pulse off width", "group": "DO", "area": "holding", "address": 70, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 3 pulse off width", "group": "DO", "area": "holding", "address": 71, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 4 pulse off width", "group": "DO", "area": "holding", "address": 72, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 5 pulse off width", "group": "DO", "area": "holding", "address": 73, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 6 pulse off width", "group": "DO", "area": "holding", "address": 74, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 7 pulse off width", "group": "DO", "area": "holding", "address": 75, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 8 pulse off width", "group": "DO", "area": "holding", "address": 76, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 9 pulse off width", "group": "DO", "area": "holding", "address": 77, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 10 pulse off width", "group": "DO", "area": "holding", "address": 78, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 11 pulse off width", "group": "DO", "area": "holding", "address": 79, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 12 pulse off width", "group": "DO", "area": "holding", "address": 80, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 13 pulse off width", "group": "DO", "area": "holding", "address": 81, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 14 pulse off width", "group": "DO", "area": "holding", "address": 82, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 15 pulse off width", "group": "DO", "area": "holding", "address": 83, "type": "uint16", "unit": "ms", "access": "RW"},
    {"name": "DO 0 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4096, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 1 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4097, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 2 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4098, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 3 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4099, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 4 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4100, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 5 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4101, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 6 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4102, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 7 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4103, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 8 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4104, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 9 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4105, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 10 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4106, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 11 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4107, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 12 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4108, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 13 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4109, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 14 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4110, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 15 peer-to-peer status", "group": "DO peer-to-peer", "area": "discrete", "address": 4111, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 0 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4112, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 1 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4113, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 2 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4114, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 3 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4115, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 4 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4116, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 5 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4117, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 6 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4118, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 7 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4119, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 8 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4120, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 9 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4121, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 10 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4122, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 11 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4123, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 12 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4124, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 13 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4125, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 14 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4126, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 15 peer-to-peer safe mode flag", "group": "DO peer-to-peer", "area": "discrete", "address": 4127, "type": "bool", "access": "R", "enum": {"0": "Off", "1": "On"}},
    {"name": "DO 0 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4128, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 1 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4129, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 2 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4130, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 3 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4131, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 4 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4132, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 5 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4133, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 6 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4134, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 7 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4135, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 8 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4136, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 9 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4137, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 10 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4138, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 11 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4139, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 12 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4140, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 13 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4141, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 14 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4142, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "DO 15 peer-to-peer safe mode flag clear", "group": "DO peer-to-peer", "area": "coil", "address": 4143, "type": "bool", "access": "RW", "description": "Write 1 to clear the safe mode flag"},
    {"name": "Watchdog alarm flag clear", "group": "System", "area": "coil", "address": 4144, "type": "bool", "access": "RW", "description": "Write 1 to clear the watchdog alarm"},
    {"name": "Model name", "group": "System", "area": "input", "address": 5000, "type": "string", "length": 10, "access": "R"},
    {"name": "Device up time", "group": "System", "area": "input", "address": 5020, "type": "uint32", "unit": "s", "access": "R"},
    {"name": "LAN MAC address bytes 1-2", "group": "System", "area": "input", "address": 5024, "type": "uint16", "access": "R", "description": "MAC address, two bytes per register, first byte high"},
    {"name": "LAN MAC address bytes 3-4", "group": "System", "area": "input", "address": 5025, "type": "uint16", "access": "R"},
    {"name": "LAN MAC address bytes 5-6", "group": "System", "area": "input", "address": 5026, "type": "uint16", "access": "R"},
    {"name": "LAN IP address", "group": "System", "area": "input", "address": 5027, "type": "uint32", "access": "R", "description": "One byte per octet, first octet in the high byte"},
    {"name": "Firmware version major", "group": "System", "area": "input", "address": 5029, "type": "uint16", "bit": 8, "bits": 8, "access": "R", "role": "firmware"},
    {"name": "Firmware version minor", "group": "System", "area": "input", "address": 5029, "type": "uint16", "bit": 0, "bits": 8, "access": "R", "role": "firmware"},
    {"name": "Firmware version patch", "group": "System", "area": "input", "address": 5030, "type": "uint16", "bit": 8, "bits": 8, "access": "R", "role": "firmware"},
    {"name": "Firmware build date", "group": "System", "area": "input", "address": 5031, "type": "uint32", "access": "R", "description": "e.g. Build16051718 reads as 16051718"},
    {"name": "Device name", "group": "System", "area": "input", "address": 5040, "type": "string", "length": 30, "access": "R"}
  ]
}
