{ "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json", "mbmap": 2, "vendor": "Unipi Technology", "model": "Neuron L513", "models": [ "L513", "Neuron L513" ], "vendor_website": "www.unipi.technology", "description": "Unipi Neuron L513 PLC: 16 digital inputs, 4 digital outputs, 10 relay outputs, 9 analog inputs, 9 analog outputs (I/O in 3 sections)", "x_status": "official", "revision": 3, "revised": "2026-11-10", "source": "Neuron L513 Modbus map v2.0, Unipi technology", "sources": [ { "title": "Neuron L513 Modbus map", "version": "2.0", "url": "https://kb.unipi.technology/_media/files:products:neuron:unipi-neuron-l513-modbus-map-v2.0.pdf", "note": "Registers and Coils sections and description tables; listed on https://kb.unipi.technology/en:hw:04-extensions:downloads" } ], "notes": [ "Addresses are those of the column 'Via Unit 0' (Modbus TCP unit id 0), where the sections of a Neuron controller share one address space: section 1 starts at 0, section 2 at 100, section 3 at 200, and so on. The document also gives per-section addresses for unit ids 1, 2 and 3, which are not used here.", "Unipi Neuron uses Modbus TCP. By default the Modbus server listens only on the loopback interface; it can be opened to other interfaces by changing its systemd script (document, Brief protocol description). The TCP port and the unit id used here are not stated in the document: 502 is the Modbus default.", "Registers marked Reserved or Obsolete in the document, and those named (Internal), are left out. Multi-register values are big-endian (most significant register first). The document types Real as a two-register floating point value, read here as float32; its text about half and single precision is ambiguous.", "Coils (suffix (coil)) repeat digital inputs, outputs and some settings that also appear as bits of holding registers. Analog values are in the unit selected by the analog input or output configuration register; the document gives no unit for them. Storage - Vendor specific 1 to 3 depend on the microSD card (Swissbit pSLC: card series, unrecoverable CRC errors, wear level threshold %).", "Some registers (the RS485 line configuration) have no address in the Via Unit 0 column; they are included for section 1 with the Via Unit 1 address, which is identical, and left out for the other sections. Registers whose name carries no I/O index are repeated in every section; the name then ends with (section N)." ], "protocol": "tcp", "port": 502, "unit_id": 0, "byte_order": "big", "word_order": "big", "address_base": 0, "enums": { "ao_mode": {"0": "Voltage 0 – 10V", "1": "Current 0 – 20mA", "3": "Resistance 0 – 2kΩ"}, "ai_mode_ui": {"0": "Voltage 0 – 10V", "1": "Current 0 – 20mA"}, "ai_mode_uir": {"0": "Off", "1": "Voltage 0 – 10 V", "2": "Voltage 0 – 2.5 V", "3": "Current 0 – 20 mA", "4": "Resistance (three conductors) 0 – 1 960 Ω", "5": "Resistance (two conductors) 0 – 100 kΩ"} }, "registers": [ {"name": "Digital Input 1.1", "group": "Digital inputs", "area": "holding", "address": 0, "type": "bool", "bit": 0}, {"name": "Digital Input 1.2", "group": "Digital inputs", "area": "holding", "address": 0, "type": "bool", "bit": 1}, {"name": "Digital Input 1.3", "group": "Digital inputs", "area": "holding", "address": 0, "type": "bool", "bit": 2}, {"name": "Digital Input 1.4", "group": "Digital inputs", "area": "holding", "address": 0, "type": "bool", "bit": 3}, {"name": "Digital Output 1.1", "group": "Digital outputs", "area": "holding", "address": 1, "type": "bool", "access": "RW", "bit": 0}, {"name": "Digital Output 1.2", "group": "Digital outputs", "area": "holding", "address": 1, "type": "bool", "access": "RW", "bit": 1}, {"name": "Digital Output 1.3", "group": "Digital outputs", "area": "holding", "address": 1, "type": "bool", "access": "RW", "bit": 2}, {"name": "Digital Output 1.4", "group": "Digital outputs", "area": "holding", "address": 1, "type": "bool", "access": "RW", "bit": 3}, {"name": "VRefInt of MCU (section 1)", "group": "Device information", "area": "holding", "address": 5, "type": "uint16"}, {"name": "MWD Enable (section 1)", "group": "Watchdog", "area": "holding", "address": 6, "type": "bool", "access": "RW", "bit": 0}, {"name": "MWD Reboot Detected (section 1)", "group": "Watchdog", "area": "holding", "address": 6, "type": "bool", "access": "RW", "bit": 1}, {"name": "Counter of Digital Input 1.1", "group": "Counters", "area": "holding", "address": 8, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 1.2", "group": "Counters", "area": "holding", "address": 10, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 1.3", "group": "Counters", "area": "holding", "address": 12, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 1.4", "group": "Counters", "area": "holding", "address": 14, "type": "uint32", "access": "RW"}, {"name": "PWM Duty Cycle of DO 1.1", "group": "PWM", "area": "holding", "address": 16, "type": "uint16", "access": "RW"}, {"name": "PWM Duty Cycle of DO 1.2", "group": "PWM", "area": "holding", "address": 17, "type": "uint16", "access": "RW"}, {"name": "PWM Duty Cycle of DO 1.3", "group": "PWM", "area": "holding", "address": 18, "type": "uint16", "access": "RW"}, {"name": "PWM Duty Cycle of DO 1.4", "group": "PWM", "area": "holding", "address": 19, "type": "uint16", "access": "RW"}, {"name": "User LED 1.1", "group": "LEDs", "area": "holding", "address": 20, "type": "bool", "access": "RW", "bit": 0}, {"name": "User LED 1.2", "group": "LEDs", "area": "holding", "address": 20, "type": "bool", "access": "RW", "bit": 1}, {"name": "User LED 1.3", "group": "LEDs", "area": "holding", "address": 20, "type": "bool", "access": "RW", "bit": 2}, {"name": "User LED 1.4", "group": "LEDs", "area": "holding", "address": 20, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO 1.1", "group": "Synchronised outputs", "area": "holding", "address": 21, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO 1.2", "group": "Synchronised outputs", "area": "holding", "address": 21, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO 1.3", "group": "Synchronised outputs", "area": "holding", "address": 21, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO 1.4", "group": "Synchronised outputs", "area": "holding", "address": 21, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO Lock 1.1", "group": "Synchronised outputs", "area": "holding", "address": 22, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO Lock 1.2", "group": "Synchronised outputs", "area": "holding", "address": 22, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO Lock 1.3", "group": "Synchronised outputs", "area": "holding", "address": 22, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO Lock 1.4", "group": "Synchronised outputs", "area": "holding", "address": 22, "type": "bool", "access": "RW", "bit": 3}, {"name": "RS485 TERMIOS CFlags 1.1", "group": "RS485 and Modbus configuration", "area": "holding", "address": 500, "type": "uint16", "access": "RW"}, {"name": "RS485 TERMIOS LFlags 1.1", "group": "RS485 and Modbus configuration", "area": "holding", "address": 501, "type": "uint16", "access": "RW"}, {"name": "RS485 TERMIOS IFlags 1.1", "group": "RS485 and Modbus configuration", "area": "holding", "address": 502, "type": "uint16", "access": "RW"}, {"name": "RS485 TERMIOS LDisc 1.1", "group": "RS485 and Modbus configuration", "area": "holding", "address": 503, "type": "uint16", "access": "RW"}, {"name": "RS485 ModBus Timeout 1.1", "group": "RS485 and Modbus configuration", "area": "holding", "address": 504, "type": "uint16", "access": "RW"}, {"name": "Firmware Version (section 1)", "group": "Device information", "area": "holding", "address": 1000, "type": "uint16"}, {"name": "Number of DIs (section 1)", "group": "Device information", "area": "holding", "address": 1001, "type": "uint16", "bit": 0, "bits": 8}, {"name": "Number of DOs (section 1)", "group": "Device information", "area": "holding", "address": 1001, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Number of internal RS485 lines (section 1)", "group": "Device information", "area": "holding", "address": 1002, "type": "uint16", "bit": 0, "bits": 4}, {"name": "Number of AOs (section 1)", "group": "Device information", "area": "holding", "address": 1002, "type": "uint16", "bit": 4, "bits": 4}, {"name": "Number of AIs (section 1)", "group": "Device information", "area": "holding", "address": 1002, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Firmware ID (section 1)", "group": "Device information", "area": "holding", "address": 1003, "type": "uint16"}, {"name": "Hardware ID (section 1)", "group": "Device information", "area": "holding", "address": 1004, "type": "uint16"}, {"name": "PCB Serial Number (section 1)", "group": "Device information", "area": "holding", "address": 1005, "type": "uint32"}, {"name": "RS485 RX queue not empty (section 1)", "group": "Interrupt mask", "area": "holding", "address": 1007, "type": "bool", "access": "RW", "bit": 0}, {"name": "RS485 TX queue empty (section 1)", "group": "Interrupt mask", "area": "holding", "address": 1007, "type": "bool", "access": "RW", "bit": 1}, {"name": "RS485 ModBus RX frame finished (section 1)", "group": "Interrupt mask", "area": "holding", "address": 1007, "type": "bool", "access": "RW", "bit": 2}, {"name": "Digital Input changed state (section 1)", "group": "Interrupt mask", "area": "holding", "address": 1007, "type": "bool", "access": "RW", "bit": 3}, {"name": "Section MasterWatchDog (MWD) Timeout (in 1ms) (section 1)", "group": "Watchdog", "area": "holding", "address": 1008, "type": "uint16", "access": "RW", "unit": "ms"}, {"name": "VRef of MCU (section 1)", "group": "Device information", "area": "holding", "address": 1009, "type": "uint16"}, {"name": "Debounce time (in 100us) for DI 1.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1010, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 1.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1011, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 1.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1012, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 1.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1013, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Enable DirectSwitch on DI 1.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1014, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch on DI 1.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1014, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch on DI 1.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1014, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch on DI 1.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1014, "type": "bool", "access": "RW", "bit": 3}, {"name": "Invert DirectSwitch Polarity on DI 1.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1015, "type": "bool", "access": "RW", "bit": 0}, {"name": "Invert DirectSwitch Polarity on DI 1.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1015, "type": "bool", "access": "RW", "bit": 1}, {"name": "Invert DirectSwitch Polarity on DI 1.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1015, "type": "bool", "access": "RW", "bit": 2}, {"name": "Invert DirectSwitch Polarity on DI 1.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1015, "type": "bool", "access": "RW", "bit": 3}, {"name": "Enable DirectSwitch Toggle on DI 1.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1016, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch Toggle on DI 1.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1016, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch Toggle on DI 1.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1016, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch Toggle on DI 1.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1016, "type": "bool", "access": "RW", "bit": 3}, {"name": "Section PWM prescaler (section 1)", "group": "PWM", "area": "holding", "address": 1017, "type": "uint16", "access": "RW"}, {"name": "Section PWM cycle length (section 1)", "group": "PWM", "area": "holding", "address": 1018, "type": "uint16", "access": "RW"}, {"name": "Analog Output Configuration(U/I/R-measure) 1.1", "group": "Analog outputs", "area": "holding", "address": 1019, "type": "uint16", "access": "RW", "enum": "ao_mode"}, {"name": "Analog Output Voltage deviation 1.1", "group": "Analog outputs", "area": "holding", "address": 1020, "type": "uint16", "access": "RW"}, {"name": "Analog Output Voltage offset 1.1", "group": "Analog outputs", "area": "holding", "address": 1021, "type": "uint16", "access": "RW"}, {"name": "Analog Output Current deviation 1.1", "group": "Analog outputs", "area": "holding", "address": 1022, "type": "uint16", "access": "RW"}, {"name": "Analog Output Current offset 1.1", "group": "Analog outputs", "area": "holding", "address": 1023, "type": "uint16", "access": "RW"}, {"name": "Analog Input Configuration(U/I) 1.1", "group": "Analog inputs", "area": "holding", "address": 1024, "type": "uint16", "access": "RW", "enum": "ai_mode_ui"}, {"name": "Analog Input Voltage deviation 1.1", "group": "Analog inputs", "area": "holding", "address": 1025, "type": "uint16", "access": "RW"}, {"name": "Analog Input Voltage offset 1.1", "group": "Analog inputs", "area": "holding", "address": 1026, "type": "uint16", "access": "RW"}, {"name": "Analog Input Current deviation 1.1", "group": "Analog inputs", "area": "holding", "address": 1027, "type": "uint16", "access": "RW"}, {"name": "Analog Input Current offset 1.1", "group": "Analog inputs", "area": "holding", "address": 1028, "type": "uint16", "access": "RW"}, {"name": "Analog Input/Output Voltage deviation (input side) 1.1", "group": "Analog inputs", "area": "holding", "address": 1029, "type": "uint16", "access": "RW"}, {"name": "Analog Input/Output Voltage offset (input side) 1.1", "group": "Analog inputs", "area": "holding", "address": 1030, "type": "uint16", "access": "RW"}, {"name": "Analog Output value 1.1", "group": "Analog outputs", "area": "holding", "address": 3000, "type": "float32", "access": "RW"}, {"name": "Analog Input value 1.1", "group": "Analog inputs", "area": "holding", "address": 3002, "type": "float32"}, {"name": "Storage - Erase cycles used [%] (section 1)", "group": "Storage", "area": "holding", "address": 4000, "type": "uint16"}, {"name": "Storage - Good blocks [%] (section 1)", "group": "Storage", "area": "holding", "address": 4001, "type": "uint16"}, {"name": "Storage - Power cycles (section 1)", "group": "Storage", "area": "holding", "address": 4002, "type": "uint16"}, {"name": "Storage - Vendor specific 1 (section 1)", "group": "Storage", "area": "holding", "address": 4003, "type": "uint16"}, {"name": "Storage - Vendor specific 2 (section 1)", "group": "Storage", "area": "holding", "address": 4004, "type": "uint16"}, {"name": "Storage - Vendor specific 3 (section 1)", "group": "Storage", "area": "holding", "address": 4005, "type": "uint16"}, {"name": "Digital Input 2.1", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 0}, {"name": "Digital Input 2.2", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 1}, {"name": "Digital Input 2.3", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 2}, {"name": "Digital Input 2.4", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 3}, {"name": "Digital Input 2.5", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 4}, {"name": "Digital Input 2.6", "group": "Digital inputs", "area": "holding", "address": 100, "type": "bool", "bit": 5}, {"name": "Relay Output 2.1", "group": "Relay outputs", "area": "holding", "address": 101, "type": "bool", "access": "RW", "bit": 0}, {"name": "Relay Output 2.2", "group": "Relay outputs", "area": "holding", "address": 101, "type": "bool", "access": "RW", "bit": 1}, {"name": "Relay Output 2.3", "group": "Relay outputs", "area": "holding", "address": 101, "type": "bool", "access": "RW", "bit": 2}, {"name": "Relay Output 2.4", "group": "Relay outputs", "area": "holding", "address": 101, "type": "bool", "access": "RW", "bit": 3}, {"name": "Relay Output 2.5", "group": "Relay outputs", "area": "holding", "address": 101, "type": "bool", "access": "RW", "bit": 4}, {"name": "Analog Output Value 2.1 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 102, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 2.2 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 103, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 2.3 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 104, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 2.4 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 105, "type": "uint16", "access": "RW"}, {"name": "Analog Input Value 2.1", "group": "Analog inputs", "area": "holding", "address": 106, "type": "float32"}, {"name": "Analog Input Value 2.2", "group": "Analog inputs", "area": "holding", "address": 108, "type": "float32"}, {"name": "Analog Input Value 2.3", "group": "Analog inputs", "area": "holding", "address": 110, "type": "float32"}, {"name": "Analog Input Value 2.4", "group": "Analog inputs", "area": "holding", "address": 112, "type": "float32"}, {"name": "MWD Enable (section 2)", "group": "Watchdog", "area": "holding", "address": 114, "type": "bool", "access": "RW", "bit": 0}, {"name": "MWD Reboot Detected (section 2)", "group": "Watchdog", "area": "holding", "address": 114, "type": "bool", "access": "RW", "bit": 1}, {"name": "Counter of Digital Input 2.1", "group": "Counters", "area": "holding", "address": 116, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 2.2", "group": "Counters", "area": "holding", "address": 118, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 2.3", "group": "Counters", "area": "holding", "address": 120, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 2.4", "group": "Counters", "area": "holding", "address": 122, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 2.5", "group": "Counters", "area": "holding", "address": 124, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 2.6", "group": "Counters", "area": "holding", "address": 126, "type": "uint32", "access": "RW"}, {"name": "Synchronised DO/RO 2.1", "group": "Synchronised outputs", "area": "holding", "address": 128, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO 2.2", "group": "Synchronised outputs", "area": "holding", "address": 128, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO 2.3", "group": "Synchronised outputs", "area": "holding", "address": 128, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO 2.4", "group": "Synchronised outputs", "area": "holding", "address": 128, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO 2.5", "group": "Synchronised outputs", "area": "holding", "address": 128, "type": "bool", "access": "RW", "bit": 4}, {"name": "Synchronised DO/RO Lock 2.1", "group": "Synchronised outputs", "area": "holding", "address": 129, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO Lock 2.2", "group": "Synchronised outputs", "area": "holding", "address": 129, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO Lock 2.3", "group": "Synchronised outputs", "area": "holding", "address": 129, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO Lock 2.4", "group": "Synchronised outputs", "area": "holding", "address": 129, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO Lock 2.5", "group": "Synchronised outputs", "area": "holding", "address": 129, "type": "bool", "access": "RW", "bit": 4}, {"name": "Firmware Version (section 2)", "group": "Device information", "area": "holding", "address": 1100, "type": "uint16"}, {"name": "Number of DIs (section 2)", "group": "Device information", "area": "holding", "address": 1101, "type": "uint16", "bit": 0, "bits": 8}, {"name": "Number of DOs (section 2)", "group": "Device information", "area": "holding", "address": 1101, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Number of internal RS485 lines (section 2)", "group": "Device information", "area": "holding", "address": 1102, "type": "uint16", "bit": 0, "bits": 4}, {"name": "Number of AOs (section 2)", "group": "Device information", "area": "holding", "address": 1102, "type": "uint16", "bit": 4, "bits": 4}, {"name": "Number of AIs (section 2)", "group": "Device information", "area": "holding", "address": 1102, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Firmware ID (section 2)", "group": "Device information", "area": "holding", "address": 1103, "type": "uint16"}, {"name": "Hardware ID (section 2)", "group": "Device information", "area": "holding", "address": 1104, "type": "uint16"}, {"name": "PCB Serial Number (section 2)", "group": "Device information", "area": "holding", "address": 1105, "type": "uint32"}, {"name": "RS485 RX queue not empty (section 2)", "group": "Interrupt mask", "area": "holding", "address": 1107, "type": "bool", "access": "RW", "bit": 0}, {"name": "RS485 TX queue empty (section 2)", "group": "Interrupt mask", "area": "holding", "address": 1107, "type": "bool", "access": "RW", "bit": 1}, {"name": "RS485 ModBus RX frame finished (section 2)", "group": "Interrupt mask", "area": "holding", "address": 1107, "type": "bool", "access": "RW", "bit": 2}, {"name": "Digital Input changed state (section 2)", "group": "Interrupt mask", "area": "holding", "address": 1107, "type": "bool", "access": "RW", "bit": 3}, {"name": "Section MasterWatchDog (MWD) Timeout (in 1ms) (section 2)", "group": "Watchdog", "area": "holding", "address": 1108, "type": "uint16", "access": "RW", "unit": "ms"}, {"name": "VRef of MCU (section 2)", "group": "Device information", "area": "holding", "address": 1109, "type": "uint16"}, {"name": "Debounce time (in 100us) for DI 2.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1110, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 2.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1111, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 2.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1112, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 2.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1113, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 2.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1114, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 2.6", "group": "DirectSwitch and debounce", "area": "holding", "address": 1115, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Enable DirectSwitch on DI 2.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1116, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch on DI 2.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1116, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch on DI 2.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1116, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch on DI 2.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1116, "type": "bool", "access": "RW", "bit": 3}, {"name": "Enable DirectSwitch on DI 2.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1116, "type": "bool", "access": "RW", "bit": 4}, {"name": "Invert DirectSwitch Polarity on DI 2.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1117, "type": "bool", "access": "RW", "bit": 0}, {"name": "Invert DirectSwitch Polarity on DI 2.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1117, "type": "bool", "access": "RW", "bit": 1}, {"name": "Invert DirectSwitch Polarity on DI 2.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1117, "type": "bool", "access": "RW", "bit": 2}, {"name": "Invert DirectSwitch Polarity on DI 2.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1117, "type": "bool", "access": "RW", "bit": 3}, {"name": "Invert DirectSwitch Polarity on DI 2.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1117, "type": "bool", "access": "RW", "bit": 4}, {"name": "Enable DirectSwitch Toggle on DI 2.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1118, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch Toggle on DI 2.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1118, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch Toggle on DI 2.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1118, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch Toggle on DI 2.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1118, "type": "bool", "access": "RW", "bit": 3}, {"name": "Enable DirectSwitch Toggle on DI 2.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1118, "type": "bool", "access": "RW", "bit": 4}, {"name": "Analog Input Configuration(U/I/R) 2.1", "group": "Analog inputs", "area": "holding", "address": 1119, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 2.2", "group": "Analog inputs", "area": "holding", "address": 1120, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 2.3", "group": "Analog inputs", "area": "holding", "address": 1121, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 2.4", "group": "Analog inputs", "area": "holding", "address": 1122, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Digital Input 3.1", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 0}, {"name": "Digital Input 3.2", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 1}, {"name": "Digital Input 3.3", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 2}, {"name": "Digital Input 3.4", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 3}, {"name": "Digital Input 3.5", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 4}, {"name": "Digital Input 3.6", "group": "Digital inputs", "area": "holding", "address": 200, "type": "bool", "bit": 5}, {"name": "Relay Output 3.1", "group": "Relay outputs", "area": "holding", "address": 201, "type": "bool", "access": "RW", "bit": 0}, {"name": "Relay Output 3.2", "group": "Relay outputs", "area": "holding", "address": 201, "type": "bool", "access": "RW", "bit": 1}, {"name": "Relay Output 3.3", "group": "Relay outputs", "area": "holding", "address": 201, "type": "bool", "access": "RW", "bit": 2}, {"name": "Relay Output 3.4", "group": "Relay outputs", "area": "holding", "address": 201, "type": "bool", "access": "RW", "bit": 3}, {"name": "Relay Output 3.5", "group": "Relay outputs", "area": "holding", "address": 201, "type": "bool", "access": "RW", "bit": 4}, {"name": "Analog Output Value 3.1 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 202, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 3.2 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 203, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 3.3 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 204, "type": "uint16", "access": "RW"}, {"name": "Analog Output Value 3.4 (0..4000 ~ 0..10V)", "group": "Analog outputs", "area": "holding", "address": 205, "type": "uint16", "access": "RW"}, {"name": "Analog Input Value 3.1", "group": "Analog inputs", "area": "holding", "address": 206, "type": "float32"}, {"name": "Analog Input Value 3.2", "group": "Analog inputs", "area": "holding", "address": 208, "type": "float32"}, {"name": "Analog Input Value 3.3", "group": "Analog inputs", "area": "holding", "address": 210, "type": "float32"}, {"name": "Analog Input Value 3.4", "group": "Analog inputs", "area": "holding", "address": 212, "type": "float32"}, {"name": "MWD Enable (section 3)", "group": "Watchdog", "area": "holding", "address": 214, "type": "bool", "access": "RW", "bit": 0}, {"name": "MWD Reboot Detected (section 3)", "group": "Watchdog", "area": "holding", "address": 214, "type": "bool", "access": "RW", "bit": 1}, {"name": "Counter of Digital Input 3.1", "group": "Counters", "area": "holding", "address": 216, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 3.2", "group": "Counters", "area": "holding", "address": 218, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 3.3", "group": "Counters", "area": "holding", "address": 220, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 3.4", "group": "Counters", "area": "holding", "address": 222, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 3.5", "group": "Counters", "area": "holding", "address": 224, "type": "uint32", "access": "RW"}, {"name": "Counter of Digital Input 3.6", "group": "Counters", "area": "holding", "address": 226, "type": "uint32", "access": "RW"}, {"name": "Synchronised DO/RO 3.1", "group": "Synchronised outputs", "area": "holding", "address": 228, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO 3.2", "group": "Synchronised outputs", "area": "holding", "address": 228, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO 3.3", "group": "Synchronised outputs", "area": "holding", "address": 228, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO 3.4", "group": "Synchronised outputs", "area": "holding", "address": 228, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO 3.5", "group": "Synchronised outputs", "area": "holding", "address": 228, "type": "bool", "access": "RW", "bit": 4}, {"name": "Synchronised DO/RO Lock 3.1", "group": "Synchronised outputs", "area": "holding", "address": 229, "type": "bool", "access": "RW", "bit": 0}, {"name": "Synchronised DO/RO Lock 3.2", "group": "Synchronised outputs", "area": "holding", "address": 229, "type": "bool", "access": "RW", "bit": 1}, {"name": "Synchronised DO/RO Lock 3.3", "group": "Synchronised outputs", "area": "holding", "address": 229, "type": "bool", "access": "RW", "bit": 2}, {"name": "Synchronised DO/RO Lock 3.4", "group": "Synchronised outputs", "area": "holding", "address": 229, "type": "bool", "access": "RW", "bit": 3}, {"name": "Synchronised DO/RO Lock 3.5", "group": "Synchronised outputs", "area": "holding", "address": 229, "type": "bool", "access": "RW", "bit": 4}, {"name": "Firmware Version (section 3)", "group": "Device information", "area": "holding", "address": 1200, "type": "uint16"}, {"name": "Number of DIs (section 3)", "group": "Device information", "area": "holding", "address": 1201, "type": "uint16", "bit": 0, "bits": 8}, {"name": "Number of DOs (section 3)", "group": "Device information", "area": "holding", "address": 1201, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Number of internal RS485 lines (section 3)", "group": "Device information", "area": "holding", "address": 1202, "type": "uint16", "bit": 0, "bits": 4}, {"name": "Number of AOs (section 3)", "group": "Device information", "area": "holding", "address": 1202, "type": "uint16", "bit": 4, "bits": 4}, {"name": "Number of AIs (section 3)", "group": "Device information", "area": "holding", "address": 1202, "type": "uint16", "bit": 8, "bits": 8}, {"name": "Firmware ID (section 3)", "group": "Device information", "area": "holding", "address": 1203, "type": "uint16"}, {"name": "Hardware ID (section 3)", "group": "Device information", "area": "holding", "address": 1204, "type": "uint16"}, {"name": "PCB Serial Number (section 3)", "group": "Device information", "area": "holding", "address": 1205, "type": "uint32"}, {"name": "RS485 RX queue not empty (section 3)", "group": "Interrupt mask", "area": "holding", "address": 1207, "type": "bool", "access": "RW", "bit": 0}, {"name": "RS485 TX queue empty (section 3)", "group": "Interrupt mask", "area": "holding", "address": 1207, "type": "bool", "access": "RW", "bit": 1}, {"name": "RS485 ModBus RX frame finished (section 3)", "group": "Interrupt mask", "area": "holding", "address": 1207, "type": "bool", "access": "RW", "bit": 2}, {"name": "Digital Input changed state (section 3)", "group": "Interrupt mask", "area": "holding", "address": 1207, "type": "bool", "access": "RW", "bit": 3}, {"name": "Section MasterWatchDog (MWD) Timeout (in 1ms) (section 3)", "group": "Watchdog", "area": "holding", "address": 1208, "type": "uint16", "access": "RW", "unit": "ms"}, {"name": "VRef of MCU (section 3)", "group": "Device information", "area": "holding", "address": 1209, "type": "uint16"}, {"name": "Debounce time (in 100us) for DI 3.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1210, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 3.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1211, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 3.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1212, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 3.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1213, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 3.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1214, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Debounce time (in 100us) for DI 3.6", "group": "DirectSwitch and debounce", "area": "holding", "address": 1215, "type": "uint16", "access": "RW", "scale": 100, "unit": "µs"}, {"name": "Enable DirectSwitch on DI 3.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1216, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch on DI 3.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1216, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch on DI 3.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1216, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch on DI 3.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1216, "type": "bool", "access": "RW", "bit": 3}, {"name": "Enable DirectSwitch on DI 3.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1216, "type": "bool", "access": "RW", "bit": 4}, {"name": "Invert DirectSwitch Polarity on DI 3.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1217, "type": "bool", "access": "RW", "bit": 0}, {"name": "Invert DirectSwitch Polarity on DI 3.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1217, "type": "bool", "access": "RW", "bit": 1}, {"name": "Invert DirectSwitch Polarity on DI 3.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1217, "type": "bool", "access": "RW", "bit": 2}, {"name": "Invert DirectSwitch Polarity on DI 3.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1217, "type": "bool", "access": "RW", "bit": 3}, {"name": "Invert DirectSwitch Polarity on DI 3.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1217, "type": "bool", "access": "RW", "bit": 4}, {"name": "Enable DirectSwitch Toggle on DI 3.1", "group": "DirectSwitch and debounce", "area": "holding", "address": 1218, "type": "bool", "access": "RW", "bit": 0}, {"name": "Enable DirectSwitch Toggle on DI 3.2", "group": "DirectSwitch and debounce", "area": "holding", "address": 1218, "type": "bool", "access": "RW", "bit": 1}, {"name": "Enable DirectSwitch Toggle on DI 3.3", "group": "DirectSwitch and debounce", "area": "holding", "address": 1218, "type": "bool", "access": "RW", "bit": 2}, {"name": "Enable DirectSwitch Toggle on DI 3.4", "group": "DirectSwitch and debounce", "area": "holding", "address": 1218, "type": "bool", "access": "RW", "bit": 3}, {"name": "Enable DirectSwitch Toggle on DI 3.5", "group": "DirectSwitch and debounce", "area": "holding", "address": 1218, "type": "bool", "access": "RW", "bit": 4}, {"name": "Analog Input Configuration(U/I/R) 3.1", "group": "Analog inputs", "area": "holding", "address": 1219, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 3.2", "group": "Analog inputs", "area": "holding", "address": 1220, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 3.3", "group": "Analog inputs", "area": "holding", "address": 1221, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Analog Input Configuration(U/I/R) 3.4", "group": "Analog inputs", "area": "holding", "address": 1222, "type": "uint16", "access": "RW", "enum": "ai_mode_uir"}, {"name": "Digital Output 1.1 (coil)", "group": "Digital outputs", "area": "coil", "address": 0, "type": "bool", "access": "RW"}, {"name": "Digital Output 1.2 (coil)", "group": "Digital outputs", "area": "coil", "address": 1, "type": "bool", "access": "RW"}, {"name": "Digital Output 1.3 (coil)", "group": "Digital outputs", "area": "coil", "address": 2, "type": "bool", "access": "RW"}, {"name": "Digital Output 1.4 (coil)", "group": "Digital outputs", "area": "coil", "address": 3, "type": "bool", "access": "RW"}, {"name": "Digital Input 1.1 (coil)", "group": "Digital inputs", "area": "coil", "address": 4, "type": "bool"}, {"name": "Digital Input 1.2 (coil)", "group": "Digital inputs", "area": "coil", "address": 5, "type": "bool"}, {"name": "Digital Input 1.3 (coil)", "group": "Digital inputs", "area": "coil", "address": 6, "type": "bool"}, {"name": "Digital Input 1.4 (coil)", "group": "Digital inputs", "area": "coil", "address": 7, "type": "bool"}, {"name": "User Programmable LED 1.1 (coil)", "group": "LEDs", "area": "coil", "address": 8, "type": "bool", "access": "RW"}, {"name": "User Programmable LED 1.2 (coil)", "group": "LEDs", "area": "coil", "address": 9, "type": "bool", "access": "RW"}, {"name": "User Programmable LED 1.3 (coil)", "group": "LEDs", "area": "coil", "address": 10, "type": "bool", "access": "RW"}, {"name": "User Programmable LED 1.4 (coil)", "group": "LEDs", "area": "coil", "address": 11, "type": "bool", "access": "RW"}, {"name": "MWD reset indication (section 1) (coil)", "group": "Watchdog", "area": "coil", "address": 1000, "type": "bool", "access": "RW"}, {"name": "Enable/Disable 1Wire Bus (section 1) (coil)", "group": "1-Wire", "area": "coil", "address": 1001, "type": "bool", "access": "RW"}, {"name": "Reset section MCU (section 1) (coil)", "group": "Device information", "area": "coil", "address": 1002, "type": "bool", "access": "W"}, {"name": "Save current configuration and use on startup (section 1) (coil)", "group": "Device information", "area": "coil", "address": 1003, "type": "bool", "access": "W"}, {"name": "Relay Output 2.1 (coil)", "group": "Relay outputs", "area": "coil", "address": 100, "type": "bool", "access": "RW"}, {"name": "Relay Output 2.2 (coil)", "group": "Relay outputs", "area": "coil", "address": 101, "type": "bool", "access": "RW"}, {"name": "Relay Output 2.3 (coil)", "group": "Relay outputs", "area": "coil", "address": 102, "type": "bool", "access": "RW"}, {"name": "Relay Output 2.4 (coil)", "group": "Relay outputs", "area": "coil", "address": 103, "type": "bool", "access": "RW"}, {"name": "Relay Output 2.5 (coil)", "group": "Relay outputs", "area": "coil", "address": 104, "type": "bool", "access": "RW"}, {"name": "Digital Input 2.1 (coil)", "group": "Digital inputs", "area": "coil", "address": 105, "type": "bool"}, {"name": "Digital Input 2.2 (coil)", "group": "Digital inputs", "area": "coil", "address": 106, "type": "bool"}, {"name": "Digital Input 2.3 (coil)", "group": "Digital inputs", "area": "coil", "address": 107, "type": "bool"}, {"name": "Digital Input 2.4 (coil)", "group": "Digital inputs", "area": "coil", "address": 108, "type": "bool"}, {"name": "Digital Input 2.5 (coil)", "group": "Digital inputs", "area": "coil", "address": 109, "type": "bool"}, {"name": "Digital Input 2.6 (coil)", "group": "Digital inputs", "area": "coil", "address": 110, "type": "bool"}, {"name": "MWD reset indication (section 2) (coil)", "group": "Watchdog", "area": "coil", "address": 1100, "type": "bool", "access": "RW"}, {"name": "Reset section MCU (section 2) (coil)", "group": "Device information", "area": "coil", "address": 1102, "type": "bool", "access": "W"}, {"name": "Save current configuration and use on startup (section 2) (coil)", "group": "Device information", "area": "coil", "address": 1103, "type": "bool", "access": "W"}, {"name": "Relay Output 3.1 (coil)", "group": "Relay outputs", "area": "coil", "address": 200, "type": "bool", "access": "RW"}, {"name": "Relay Output 3.2 (coil)", "group": "Relay outputs", "area": "coil", "address": 201, "type": "bool", "access": "RW"}, {"name": "Relay Output 3.3 (coil)", "group": "Relay outputs", "area": "coil", "address": 202, "type": "bool", "access": "RW"}, {"name": "Relay Output 3.4 (coil)", "group": "Relay outputs", "area": "coil", "address": 203, "type": "bool", "access": "RW"}, {"name": "Relay Output 3.5 (coil)", "group": "Relay outputs", "area": "coil", "address": 204, "type": "bool", "access": "RW"}, {"name": "Digital Input 3.1 (coil)", "group": "Digital inputs", "area": "coil", "address": 205, "type": "bool"}, {"name": "Digital Input 3.2 (coil)", "group": "Digital inputs", "area": "coil", "address": 206, "type": "bool"}, {"name": "Digital Input 3.3 (coil)", "group": "Digital inputs", "area": "coil", "address": 207, "type": "bool"}, {"name": "Digital Input 3.4 (coil)", "group": "Digital inputs", "area": "coil", "address": 208, "type": "bool"}, {"name": "Digital Input 3.5 (coil)", "group": "Digital inputs", "area": "coil", "address": 209, "type": "bool"}, {"name": "Digital Input 3.6 (coil)", "group": "Digital inputs", "area": "coil", "address": 210, "type": "bool"}, {"name": "MWD reset indication (section 3) (coil)", "group": "Watchdog", "area": "coil", "address": 1200, "type": "bool", "access": "RW"}, {"name": "Reset section MCU (section 3) (coil)", "group": "Device information", "area": "coil", "address": 1202, "type": "bool", "access": "W"}, {"name": "Save current configuration and use on startup (section 3) (coil)", "group": "Device information", "area": "coil", "address": 1203, "type": "bool", "access": "W"} ] }