{
  "$schema": "https://raw.githubusercontent.com/nobrega8/mbmap-library/main/schema/mbmap-2.schema.json",
  "mbmap": 2,
  "vendor": "Novus",
  "model": "FieldLogger",
  "models": [
    "FieldLogger"
  ],
  "vendor_website": "novus.com.br",
  "description": "Data logger with 8 analog inputs, 8 digital I/O and 2 relays, Modbus RTU over RS485 or USB and Modbus TCP over Ethernet: channel values, remote and virtual channels, digital I/O, counters, alarms and logging control",
  "revision": 1,
  "revised": "2026-10-31",
  "firmware": "Communication manual V1.9x A",
  "source": "Novus FieldLogger Modbus communication manual V1.9x A (Portuguese)",
  "sources": [
    {
      "title": "FieldLogger - Manual de Comunicação Modbus",
      "version": "V1.9x A",
      "url": "https://github.com/user-attachments/files/34218978/Protocolo_Modbus_FieldLogger_V19x_A_PT.pdf",
      "note": "linked in issue #95; register table and section 3.1"
    }
  ],
  "notes": [
    "Modbus RTU slave on RS485 and on the USB device port, Modbus TCP server on Ethernet. Functions 03, 05, 06 and 16.",
    "The manual does not give the default address, serial settings or TCP port: they are set with the FieldLogger configuration software.",
    "Every value is a holding register. Floats are IEEE 754 with the high word first. Register 774 always holds 123456.125, which checks the float format.",
    "Analog, remote and virtual channels are also given as signed 16-bit integers (registers 3-10, 32-95 and 96-223); the manual does not give their scale. This map lists the integer copies of the analog channels only.",
    "Coils can only be written (function 05): coils 1-8 are digital outputs 1-8, coils 9 and 10 are relays 1 and 2. The outputs can also be read and written in registers 22-31.",
    "Register 0 holds the first four digits of the serial number and register 1 the last four.",
    "Some registers need a newer firmware: float alarm setpoints 1.01, digital input counters 1.10, integer alarm setpoints (x 10) 1.30.",
    "Written from the manufacturer's manual; not tested on a device."
  ],
  "protocol": "tcp+rtu",
  "unit_id": 1,
  "byte_order": "big",
  "word_order": "big",
  "address_base": 0,
  "x_status": "official",
  "enums": {
    "off_on": {
      "0": "Off",
      "1": "On"
    }
  },
  "registers": [
    {"name": "Serial number (first 4 digits)", "group": "Identity", "area": "holding", "address": 0, "type": "uint16", "access": "R"},
    {"name": "Serial number (last 4 digits)", "group": "Identity", "area": "holding", "address": 1, "type": "uint16", "access": "R"},
    {"name": "Firmware version", "group": "Identity", "area": "holding", "address": 2, "type": "uint16", "scale": 0.01, "access": "R", "role": "firmware", "description": "204 is version 2.04"},
    {"name": "Float test constant", "group": "Identity", "area": "holding", "address": 774, "type": "float32", "access": "R", "reference": 123456.125, "description": "Always 123456.125; checks the float format"},
    {"name": "Analog channel 1", "group": "Analog inputs", "area": "holding", "address": 224, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 3)"},
    {"name": "Analog channel 2", "group": "Analog inputs", "area": "holding", "address": 226, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 4)"},
    {"name": "Analog channel 3", "group": "Analog inputs", "area": "holding", "address": 228, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 5)"},
    {"name": "Analog channel 4", "group": "Analog inputs", "area": "holding", "address": 230, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 6)"},
    {"name": "Analog channel 5", "group": "Analog inputs", "area": "holding", "address": 232, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 7)"},
    {"name": "Analog channel 6", "group": "Analog inputs", "area": "holding", "address": 234, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 8)"},
    {"name": "Analog channel 7", "group": "Analog inputs", "area": "holding", "address": 236, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 9)"},
    {"name": "Analog channel 8", "group": "Analog inputs", "area": "holding", "address": 238, "type": "float32", "access": "R", "description": "In the channel's configured unit (also a signed integer in register 10)"},
    {"name": "Analog channel 1 (integer)", "group": "Analog inputs", "area": "holding", "address": 3, "type": "int16", "access": "R"},
    {"name": "Analog channel 2 (integer)", "group": "Analog inputs", "area": "holding", "address": 4, "type": "int16", "access": "R"},
    {"name": "Analog channel 3 (integer)", "group": "Analog inputs", "area": "holding", "address": 5, "type": "int16", "access": "R"},
    {"name": "Analog channel 4 (integer)", "group": "Analog inputs", "area": "holding", "address": 6, "type": "int16", "access": "R"},
    {"name": "Analog channel 5 (integer)", "group": "Analog inputs", "area": "holding", "address": 7, "type": "int16", "access": "R"},
    {"name": "Analog channel 6 (integer)", "group": "Analog inputs", "area": "holding", "address": 8, "type": "int16", "access": "R"},
    {"name": "Analog channel 7 (integer)", "group": "Analog inputs", "area": "holding", "address": 9, "type": "int16", "access": "R"},
    {"name": "Analog channel 8 (integer)", "group": "Analog inputs", "area": "holding", "address": 10, "type": "int16", "access": "R"},
    {"name": "Digital channels", "group": "Digital I/O", "area": "holding", "address": 13, "type": "uint16", "access": "R", "description": "One bit per digital channel, bit 0 = channel 1"},
    {"name": "Digital input 1", "group": "Digital I/O", "area": "holding", "address": 14, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 2", "group": "Digital I/O", "area": "holding", "address": 15, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 3", "group": "Digital I/O", "area": "holding", "address": 16, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 4", "group": "Digital I/O", "area": "holding", "address": 17, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 5", "group": "Digital I/O", "area": "holding", "address": 18, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 6", "group": "Digital I/O", "area": "holding", "address": 19, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 7", "group": "Digital I/O", "area": "holding", "address": 20, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 8", "group": "Digital I/O", "area": "holding", "address": 21, "type": "uint16", "access": "R", "enum": "off_on"},
    {"name": "Digital input 1 (float)", "group": "Digital I/O", "area": "holding", "address": 240, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 2 (float)", "group": "Digital I/O", "area": "holding", "address": 242, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 3 (float)", "group": "Digital I/O", "area": "holding", "address": 244, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 4 (float)", "group": "Digital I/O", "area": "holding", "address": 246, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 5 (float)", "group": "Digital I/O", "area": "holding", "address": 248, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 6 (float)", "group": "Digital I/O", "area": "holding", "address": 250, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 7 (float)", "group": "Digital I/O", "area": "holding", "address": 252, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital input 8 (float)", "group": "Digital I/O", "area": "holding", "address": 254, "type": "float32", "access": "R", "description": "The value the user assigned to the input state"},
    {"name": "Digital output 1", "group": "Digital I/O", "area": "holding", "address": 22, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 2", "group": "Digital I/O", "area": "holding", "address": 23, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 3", "group": "Digital I/O", "area": "holding", "address": 24, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 4", "group": "Digital I/O", "area": "holding", "address": 25, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 5", "group": "Digital I/O", "area": "holding", "address": 26, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 6", "group": "Digital I/O", "area": "holding", "address": 27, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 7", "group": "Digital I/O", "area": "holding", "address": 28, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Digital output 8", "group": "Digital I/O", "area": "holding", "address": 29, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when the channel is an input or is driven by an alarm"},
    {"name": "Relay 1", "group": "Digital I/O", "area": "holding", "address": 30, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when driven by an alarm"},
    {"name": "Relay 2", "group": "Digital I/O", "area": "holding", "address": 31, "type": "uint16", "access": "RW", "enum": "off_on", "write_min": 0, "write_max": 1, "description": "Cannot be written when driven by an alarm"},
    {"name": "Digital output 1 (coil)", "group": "Digital I/O", "area": "coil", "address": 0, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 2 (coil)", "group": "Digital I/O", "area": "coil", "address": 1, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 3 (coil)", "group": "Digital I/O", "area": "coil", "address": 2, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 4 (coil)", "group": "Digital I/O", "area": "coil", "address": 3, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 5 (coil)", "group": "Digital I/O", "area": "coil", "address": 4, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 6 (coil)", "group": "Digital I/O", "area": "coil", "address": 5, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 7 (coil)", "group": "Digital I/O", "area": "coil", "address": 6, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital output 8 (coil)", "group": "Digital I/O", "area": "coil", "address": 7, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Relay 1 (coil)", "group": "Digital I/O", "area": "coil", "address": 8, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Relay 2 (coil)", "group": "Digital I/O", "area": "coil", "address": 9, "type": "bool", "access": "W", "description": "Write single coil (05) only"},
    {"name": "Digital input 1 count", "group": "Counters", "area": "holding", "address": 776, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 2 count", "group": "Counters", "area": "holding", "address": 778, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 3 count", "group": "Counters", "area": "holding", "address": 780, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 4 count", "group": "Counters", "area": "holding", "address": 782, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 5 count", "group": "Counters", "area": "holding", "address": 784, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 6 count", "group": "Counters", "area": "holding", "address": 786, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 7 count", "group": "Counters", "area": "holding", "address": 788, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Digital input 8 count", "group": "Counters", "area": "holding", "address": 790, "type": "uint32", "access": "RW", "firmware_min": "1.10"},
    {"name": "Remote channel 1", "group": "Remote channels", "area": "holding", "address": 256, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 32)"},
    {"name": "Remote channel 2", "group": "Remote channels", "area": "holding", "address": 258, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 33)"},
    {"name": "Remote channel 3", "group": "Remote channels", "area": "holding", "address": 260, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 34)"},
    {"name": "Remote channel 4", "group": "Remote channels", "area": "holding", "address": 262, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 35)"},
    {"name": "Remote channel 5", "group": "Remote channels", "area": "holding", "address": 264, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 36)"},
    {"name": "Remote channel 6", "group": "Remote channels", "area": "holding", "address": 266, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 37)"},
    {"name": "Remote channel 7", "group": "Remote channels", "area": "holding", "address": 268, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 38)"},
    {"name": "Remote channel 8", "group": "Remote channels", "area": "holding", "address": 270, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 39)"},
    {"name": "Remote channel 9", "group": "Remote channels", "area": "holding", "address": 272, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 40)"},
    {"name": "Remote channel 10", "group": "Remote channels", "area": "holding", "address": 274, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 41)"},
    {"name": "Remote channel 11", "group": "Remote channels", "area": "holding", "address": 276, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 42)"},
    {"name": "Remote channel 12", "group": "Remote channels", "area": "holding", "address": 278, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 43)"},
    {"name": "Remote channel 13", "group": "Remote channels", "area": "holding", "address": 280, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 44)"},
    {"name": "Remote channel 14", "group": "Remote channels", "area": "holding", "address": 282, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 45)"},
    {"name": "Remote channel 15", "group": "Remote channels", "area": "holding", "address": 284, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 46)"},
    {"name": "Remote channel 16", "group": "Remote channels", "area": "holding", "address": 286, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 47)"},
    {"name": "Remote channel 17", "group": "Remote channels", "area": "holding", "address": 288, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 48)"},
    {"name": "Remote channel 18", "group": "Remote channels", "area": "holding", "address": 290, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 49)"},
    {"name": "Remote channel 19", "group": "Remote channels", "area": "holding", "address": 292, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 50)"},
    {"name": "Remote channel 20", "group": "Remote channels", "area": "holding", "address": 294, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 51)"},
    {"name": "Remote channel 21", "group": "Remote channels", "area": "holding", "address": 296, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 52)"},
    {"name": "Remote channel 22", "group": "Remote channels", "area": "holding", "address": 298, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 53)"},
    {"name": "Remote channel 23", "group": "Remote channels", "area": "holding", "address": 300, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 54)"},
    {"name": "Remote channel 24", "group": "Remote channels", "area": "holding", "address": 302, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 55)"},
    {"name": "Remote channel 25", "group": "Remote channels", "area": "holding", "address": 304, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 56)"},
    {"name": "Remote channel 26", "group": "Remote channels", "area": "holding", "address": 306, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 57)"},
    {"name": "Remote channel 27", "group": "Remote channels", "area": "holding", "address": 308, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 58)"},
    {"name": "Remote channel 28", "group": "Remote channels", "area": "holding", "address": 310, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 59)"},
    {"name": "Remote channel 29", "group": "Remote channels", "area": "holding", "address": 312, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 60)"},
    {"name": "Remote channel 30", "group": "Remote channels", "area": "holding", "address": 314, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 61)"},
    {"name": "Remote channel 31", "group": "Remote channels", "area": "holding", "address": 316, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 62)"},
    {"name": "Remote channel 32", "group": "Remote channels", "area": "holding", "address": 318, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 63)"},
    {"name": "Remote channel 33", "group": "Remote channels", "area": "holding", "address": 320, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 64)"},
    {"name": "Remote channel 34", "group": "Remote channels", "area": "holding", "address": 322, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 65)"},
    {"name": "Remote channel 35", "group": "Remote channels", "area": "holding", "address": 324, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 66)"},
    {"name": "Remote channel 36", "group": "Remote channels", "area": "holding", "address": 326, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 67)"},
    {"name": "Remote channel 37", "group": "Remote channels", "area": "holding", "address": 328, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 68)"},
    {"name": "Remote channel 38", "group": "Remote channels", "area": "holding", "address": 330, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 69)"},
    {"name": "Remote channel 39", "group": "Remote channels", "area": "holding", "address": 332, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 70)"},
    {"name": "Remote channel 40", "group": "Remote channels", "area": "holding", "address": 334, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 71)"},
    {"name": "Remote channel 41", "group": "Remote channels", "area": "holding", "address": 336, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 72)"},
    {"name": "Remote channel 42", "group": "Remote channels", "area": "holding", "address": 338, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 73)"},
    {"name": "Remote channel 43", "group": "Remote channels", "area": "holding", "address": 340, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 74)"},
    {"name": "Remote channel 44", "group": "Remote channels", "area": "holding", "address": 342, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 75)"},
    {"name": "Remote channel 45", "group": "Remote channels", "area": "holding", "address": 344, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 76)"},
    {"name": "Remote channel 46", "group": "Remote channels", "area": "holding", "address": 346, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 77)"},
    {"name": "Remote channel 47", "group": "Remote channels", "area": "holding", "address": 348, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 78)"},
    {"name": "Remote channel 48", "group": "Remote channels", "area": "holding", "address": 350, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 79)"},
    {"name": "Remote channel 49", "group": "Remote channels", "area": "holding", "address": 352, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 80)"},
    {"name": "Remote channel 50", "group": "Remote channels", "area": "holding", "address": 354, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 81)"},
    {"name": "Remote channel 51", "group": "Remote channels", "area": "holding", "address": 356, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 82)"},
    {"name": "Remote channel 52", "group": "Remote channels", "area": "holding", "address": 358, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 83)"},
    {"name": "Remote channel 53", "group": "Remote channels", "area": "holding", "address": 360, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 84)"},
    {"name": "Remote channel 54", "group": "Remote channels", "area": "holding", "address": 362, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 85)"},
    {"name": "Remote channel 55", "group": "Remote channels", "area": "holding", "address": 364, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 86)"},
    {"name": "Remote channel 56", "group": "Remote channels", "area": "holding", "address": 366, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 87)"},
    {"name": "Remote channel 57", "group": "Remote channels", "area": "holding", "address": 368, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 88)"},
    {"name": "Remote channel 58", "group": "Remote channels", "area": "holding", "address": 370, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 89)"},
    {"name": "Remote channel 59", "group": "Remote channels", "area": "holding", "address": 372, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 90)"},
    {"name": "Remote channel 60", "group": "Remote channels", "area": "holding", "address": 374, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 91)"},
    {"name": "Remote channel 61", "group": "Remote channels", "area": "holding", "address": 376, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 92)"},
    {"name": "Remote channel 62", "group": "Remote channels", "area": "holding", "address": 378, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 93)"},
    {"name": "Remote channel 63", "group": "Remote channels", "area": "holding", "address": 380, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 94)"},
    {"name": "Remote channel 64", "group": "Remote channels", "area": "holding", "address": 382, "type": "float32", "access": "R", "description": "Value read from a remote Modbus device (also a signed integer in register 95)"},
    {"name": "Virtual channel 1", "group": "Virtual channels", "area": "holding", "address": 384, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 96)"},
    {"name": "Virtual channel 2", "group": "Virtual channels", "area": "holding", "address": 386, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 97)"},
    {"name": "Virtual channel 3", "group": "Virtual channels", "area": "holding", "address": 388, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 98)"},
    {"name": "Virtual channel 4", "group": "Virtual channels", "area": "holding", "address": 390, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 99)"},
    {"name": "Virtual channel 5", "group": "Virtual channels", "area": "holding", "address": 392, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 100)"},
    {"name": "Virtual channel 6", "group": "Virtual channels", "area": "holding", "address": 394, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 101)"},
    {"name": "Virtual channel 7", "group": "Virtual channels", "area": "holding", "address": 396, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 102)"},
    {"name": "Virtual channel 8", "group": "Virtual channels", "area": "holding", "address": 398, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 103)"},
    {"name": "Virtual channel 9", "group": "Virtual channels", "area": "holding", "address": 400, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 104)"},
    {"name": "Virtual channel 10", "group": "Virtual channels", "area": "holding", "address": 402, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 105)"},
    {"name": "Virtual channel 11", "group": "Virtual channels", "area": "holding", "address": 404, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 106)"},
    {"name": "Virtual channel 12", "group": "Virtual channels", "area": "holding", "address": 406, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 107)"},
    {"name": "Virtual channel 13", "group": "Virtual channels", "area": "holding", "address": 408, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 108)"},
    {"name": "Virtual channel 14", "group": "Virtual channels", "area": "holding", "address": 410, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 109)"},
    {"name": "Virtual channel 15", "group": "Virtual channels", "area": "holding", "address": 412, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 110)"},
    {"name": "Virtual channel 16", "group": "Virtual channels", "area": "holding", "address": 414, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 111)"},
    {"name": "Virtual channel 17", "group": "Virtual channels", "area": "holding", "address": 416, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 112)"},
    {"name": "Virtual channel 18", "group": "Virtual channels", "area": "holding", "address": 418, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 113)"},
    {"name": "Virtual channel 19", "group": "Virtual channels", "area": "holding", "address": 420, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 114)"},
    {"name": "Virtual channel 20", "group": "Virtual channels", "area": "holding", "address": 422, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 115)"},
    {"name": "Virtual channel 21", "group": "Virtual channels", "area": "holding", "address": 424, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 116)"},
    {"name": "Virtual channel 22", "group": "Virtual channels", "area": "holding", "address": 426, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 117)"},
    {"name": "Virtual channel 23", "group": "Virtual channels", "area": "holding", "address": 428, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 118)"},
    {"name": "Virtual channel 24", "group": "Virtual channels", "area": "holding", "address": 430, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 119)"},
    {"name": "Virtual channel 25", "group": "Virtual channels", "area": "holding", "address": 432, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 120)"},
    {"name": "Virtual channel 26", "group": "Virtual channels", "area": "holding", "address": 434, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 121)"},
    {"name": "Virtual channel 27", "group": "Virtual channels", "area": "holding", "address": 436, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 122)"},
    {"name": "Virtual channel 28", "group": "Virtual channels", "area": "holding", "address": 438, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 123)"},
    {"name": "Virtual channel 29", "group": "Virtual channels", "area": "holding", "address": 440, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 124)"},
    {"name": "Virtual channel 30", "group": "Virtual channels", "area": "holding", "address": 442, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 125)"},
    {"name": "Virtual channel 31", "group": "Virtual channels", "area": "holding", "address": 444, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 126)"},
    {"name": "Virtual channel 32", "group": "Virtual channels", "area": "holding", "address": 446, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 127)"},
    {"name": "Virtual channel 33", "group": "Virtual channels", "area": "holding", "address": 448, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 128)"},
    {"name": "Virtual channel 34", "group": "Virtual channels", "area": "holding", "address": 450, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 129)"},
    {"name": "Virtual channel 35", "group": "Virtual channels", "area": "holding", "address": 452, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 130)"},
    {"name": "Virtual channel 36", "group": "Virtual channels", "area": "holding", "address": 454, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 131)"},
    {"name": "Virtual channel 37", "group": "Virtual channels", "area": "holding", "address": 456, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 132)"},
    {"name": "Virtual channel 38", "group": "Virtual channels", "area": "holding", "address": 458, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 133)"},
    {"name": "Virtual channel 39", "group": "Virtual channels", "area": "holding", "address": 460, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 134)"},
    {"name": "Virtual channel 40", "group": "Virtual channels", "area": "holding", "address": 462, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 135)"},
    {"name": "Virtual channel 41", "group": "Virtual channels", "area": "holding", "address": 464, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 136)"},
    {"name": "Virtual channel 42", "group": "Virtual channels", "area": "holding", "address": 466, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 137)"},
    {"name": "Virtual channel 43", "group": "Virtual channels", "area": "holding", "address": 468, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 138)"},
    {"name": "Virtual channel 44", "group": "Virtual channels", "area": "holding", "address": 470, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 139)"},
    {"name": "Virtual channel 45", "group": "Virtual channels", "area": "holding", "address": 472, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 140)"},
    {"name": "Virtual channel 46", "group": "Virtual channels", "area": "holding", "address": 474, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 141)"},
    {"name": "Virtual channel 47", "group": "Virtual channels", "area": "holding", "address": 476, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 142)"},
    {"name": "Virtual channel 48", "group": "Virtual channels", "area": "holding", "address": 478, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 143)"},
    {"name": "Virtual channel 49", "group": "Virtual channels", "area": "holding", "address": 480, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 144)"},
    {"name": "Virtual channel 50", "group": "Virtual channels", "area": "holding", "address": 482, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 145)"},
    {"name": "Virtual channel 51", "group": "Virtual channels", "area": "holding", "address": 484, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 146)"},
    {"name": "Virtual channel 52", "group": "Virtual channels", "area": "holding", "address": 486, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 147)"},
    {"name": "Virtual channel 53", "group": "Virtual channels", "area": "holding", "address": 488, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 148)"},
    {"name": "Virtual channel 54", "group": "Virtual channels", "area": "holding", "address": 490, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 149)"},
    {"name": "Virtual channel 55", "group": "Virtual channels", "area": "holding", "address": 492, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 150)"},
    {"name": "Virtual channel 56", "group": "Virtual channels", "area": "holding", "address": 494, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 151)"},
    {"name": "Virtual channel 57", "group": "Virtual channels", "area": "holding", "address": 496, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 152)"},
    {"name": "Virtual channel 58", "group": "Virtual channels", "area": "holding", "address": 498, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 153)"},
    {"name": "Virtual channel 59", "group": "Virtual channels", "area": "holding", "address": 500, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 154)"},
    {"name": "Virtual channel 60", "group": "Virtual channels", "area": "holding", "address": 502, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 155)"},
    {"name": "Virtual channel 61", "group": "Virtual channels", "area": "holding", "address": 504, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 156)"},
    {"name": "Virtual channel 62", "group": "Virtual channels", "area": "holding", "address": 506, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 157)"},
    {"name": "Virtual channel 63", "group": "Virtual channels", "area": "holding", "address": 508, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 158)"},
    {"name": "Virtual channel 64", "group": "Virtual channels", "area": "holding", "address": 510, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 159)"},
    {"name": "Virtual channel 65", "group": "Virtual channels", "area": "holding", "address": 512, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 160)"},
    {"name": "Virtual channel 66", "group": "Virtual channels", "area": "holding", "address": 514, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 161)"},
    {"name": "Virtual channel 67", "group": "Virtual channels", "area": "holding", "address": 516, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 162)"},
    {"name": "Virtual channel 68", "group": "Virtual channels", "area": "holding", "address": 518, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 163)"},
    {"name": "Virtual channel 69", "group": "Virtual channels", "area": "holding", "address": 520, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 164)"},
    {"name": "Virtual channel 70", "group": "Virtual channels", "area": "holding", "address": 522, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 165)"},
    {"name": "Virtual channel 71", "group": "Virtual channels", "area": "holding", "address": 524, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 166)"},
    {"name": "Virtual channel 72", "group": "Virtual channels", "area": "holding", "address": 526, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 167)"},
    {"name": "Virtual channel 73", "group": "Virtual channels", "area": "holding", "address": 528, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 168)"},
    {"name": "Virtual channel 74", "group": "Virtual channels", "area": "holding", "address": 530, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 169)"},
    {"name": "Virtual channel 75", "group": "Virtual channels", "area": "holding", "address": 532, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 170)"},
    {"name": "Virtual channel 76", "group": "Virtual channels", "area": "holding", "address": 534, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 171)"},
    {"name": "Virtual channel 77", "group": "Virtual channels", "area": "holding", "address": 536, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 172)"},
    {"name": "Virtual channel 78", "group": "Virtual channels", "area": "holding", "address": 538, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 173)"},
    {"name": "Virtual channel 79", "group": "Virtual channels", "area": "holding", "address": 540, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 174)"},
    {"name": "Virtual channel 80", "group": "Virtual channels", "area": "holding", "address": 542, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 175)"},
    {"name": "Virtual channel 81", "group": "Virtual channels", "area": "holding", "address": 544, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 176)"},
    {"name": "Virtual channel 82", "group": "Virtual channels", "area": "holding", "address": 546, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 177)"},
    {"name": "Virtual channel 83", "group": "Virtual channels", "area": "holding", "address": 548, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 178)"},
    {"name": "Virtual channel 84", "group": "Virtual channels", "area": "holding", "address": 550, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 179)"},
    {"name": "Virtual channel 85", "group": "Virtual channels", "area": "holding", "address": 552, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 180)"},
    {"name": "Virtual channel 86", "group": "Virtual channels", "area": "holding", "address": 554, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 181)"},
    {"name": "Virtual channel 87", "group": "Virtual channels", "area": "holding", "address": 556, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 182)"},
    {"name": "Virtual channel 88", "group": "Virtual channels", "area": "holding", "address": 558, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 183)"},
    {"name": "Virtual channel 89", "group": "Virtual channels", "area": "holding", "address": 560, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 184)"},
    {"name": "Virtual channel 90", "group": "Virtual channels", "area": "holding", "address": 562, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 185)"},
    {"name": "Virtual channel 91", "group": "Virtual channels", "area": "holding", "address": 564, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 186)"},
    {"name": "Virtual channel 92", "group": "Virtual channels", "area": "holding", "address": 566, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 187)"},
    {"name": "Virtual channel 93", "group": "Virtual channels", "area": "holding", "address": 568, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 188)"},
    {"name": "Virtual channel 94", "group": "Virtual channels", "area": "holding", "address": 570, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 189)"},
    {"name": "Virtual channel 95", "group": "Virtual channels", "area": "holding", "address": 572, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 190)"},
    {"name": "Virtual channel 96", "group": "Virtual channels", "area": "holding", "address": 574, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 191)"},
    {"name": "Virtual channel 97", "group": "Virtual channels", "area": "holding", "address": 576, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 192)"},
    {"name": "Virtual channel 98", "group": "Virtual channels", "area": "holding", "address": 578, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 193)"},
    {"name": "Virtual channel 99", "group": "Virtual channels", "area": "holding", "address": 580, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 194)"},
    {"name": "Virtual channel 100", "group": "Virtual channels", "area": "holding", "address": 582, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 195)"},
    {"name": "Virtual channel 101", "group": "Virtual channels", "area": "holding", "address": 584, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 196)"},
    {"name": "Virtual channel 102", "group": "Virtual channels", "area": "holding", "address": 586, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 197)"},
    {"name": "Virtual channel 103", "group": "Virtual channels", "area": "holding", "address": 588, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 198)"},
    {"name": "Virtual channel 104", "group": "Virtual channels", "area": "holding", "address": 590, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 199)"},
    {"name": "Virtual channel 105", "group": "Virtual channels", "area": "holding", "address": 592, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 200)"},
    {"name": "Virtual channel 106", "group": "Virtual channels", "area": "holding", "address": 594, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 201)"},
    {"name": "Virtual channel 107", "group": "Virtual channels", "area": "holding", "address": 596, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 202)"},
    {"name": "Virtual channel 108", "group": "Virtual channels", "area": "holding", "address": 598, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 203)"},
    {"name": "Virtual channel 109", "group": "Virtual channels", "area": "holding", "address": 600, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 204)"},
    {"name": "Virtual channel 110", "group": "Virtual channels", "area": "holding", "address": 602, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 205)"},
    {"name": "Virtual channel 111", "group": "Virtual channels", "area": "holding", "address": 604, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 206)"},
    {"name": "Virtual channel 112", "group": "Virtual channels", "area": "holding", "address": 606, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 207)"},
    {"name": "Virtual channel 113", "group": "Virtual channels", "area": "holding", "address": 608, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 208)"},
    {"name": "Virtual channel 114", "group": "Virtual channels", "area": "holding", "address": 610, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 209)"},
    {"name": "Virtual channel 115", "group": "Virtual channels", "area": "holding", "address": 612, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 210)"},
    {"name": "Virtual channel 116", "group": "Virtual channels", "area": "holding", "address": 614, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 211)"},
    {"name": "Virtual channel 117", "group": "Virtual channels", "area": "holding", "address": 616, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 212)"},
    {"name": "Virtual channel 118", "group": "Virtual channels", "area": "holding", "address": 618, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 213)"},
    {"name": "Virtual channel 119", "group": "Virtual channels", "area": "holding", "address": 620, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 214)"},
    {"name": "Virtual channel 120", "group": "Virtual channels", "area": "holding", "address": 622, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 215)"},
    {"name": "Virtual channel 121", "group": "Virtual channels", "area": "holding", "address": 624, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 216)"},
    {"name": "Virtual channel 122", "group": "Virtual channels", "area": "holding", "address": 626, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 217)"},
    {"name": "Virtual channel 123", "group": "Virtual channels", "area": "holding", "address": 628, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 218)"},
    {"name": "Virtual channel 124", "group": "Virtual channels", "area": "holding", "address": 630, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 219)"},
    {"name": "Virtual channel 125", "group": "Virtual channels", "area": "holding", "address": 632, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 220)"},
    {"name": "Virtual channel 126", "group": "Virtual channels", "area": "holding", "address": 634, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 221)"},
    {"name": "Virtual channel 127", "group": "Virtual channels", "area": "holding", "address": 636, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 222)"},
    {"name": "Virtual channel 128", "group": "Virtual channels", "area": "holding", "address": 638, "type": "float32", "access": "R", "description": "Calculated channel (also a signed integer in register 223)"},
    {"name": "Alarm 1 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 0, "access": "R"},
    {"name": "Alarm 2 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 1, "access": "R"},
    {"name": "Alarm 3 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 2, "access": "R"},
    {"name": "Alarm 4 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 3, "access": "R"},
    {"name": "Alarm 5 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 4, "access": "R"},
    {"name": "Alarm 6 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 5, "access": "R"},
    {"name": "Alarm 7 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 6, "access": "R"},
    {"name": "Alarm 8 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 7, "access": "R"},
    {"name": "Alarm 9 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 8, "access": "R"},
    {"name": "Alarm 10 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 9, "access": "R"},
    {"name": "Alarm 11 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 10, "access": "R"},
    {"name": "Alarm 12 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 11, "access": "R"},
    {"name": "Alarm 13 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 12, "access": "R"},
    {"name": "Alarm 14 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 13, "access": "R"},
    {"name": "Alarm 15 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 14, "access": "R"},
    {"name": "Alarm 16 active", "group": "Alarms", "area": "holding", "address": 736, "type": "bool", "bit": 15, "access": "R"},
    {"name": "Alarm 17 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 0, "access": "R"},
    {"name": "Alarm 18 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 1, "access": "R"},
    {"name": "Alarm 19 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 2, "access": "R"},
    {"name": "Alarm 20 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 3, "access": "R"},
    {"name": "Alarm 21 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 4, "access": "R"},
    {"name": "Alarm 22 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 5, "access": "R"},
    {"name": "Alarm 23 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 6, "access": "R"},
    {"name": "Alarm 24 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 7, "access": "R"},
    {"name": "Alarm 25 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 8, "access": "R"},
    {"name": "Alarm 26 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 9, "access": "R"},
    {"name": "Alarm 27 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 10, "access": "R"},
    {"name": "Alarm 28 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 11, "access": "R"},
    {"name": "Alarm 29 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 12, "access": "R"},
    {"name": "Alarm 30 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 13, "access": "R"},
    {"name": "Alarm 31 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 14, "access": "R"},
    {"name": "Alarm 32 active", "group": "Alarms", "area": "holding", "address": 735, "type": "bool", "bit": 15, "access": "R"},
    {"name": "Alarm 1 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5242, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 2 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5250, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 3 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5258, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 4 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5266, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 5 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5274, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 6 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5282, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 7 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5290, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 8 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5298, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 9 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5306, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 10 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5314, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 11 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5322, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 12 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5330, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 13 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5338, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 14 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5346, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 15 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5354, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 16 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5362, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 17 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5370, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 18 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5378, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 19 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5386, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 20 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5394, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 21 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5402, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 22 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5410, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 23 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5418, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 24 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5426, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 25 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5434, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 26 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5442, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 27 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5450, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 28 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5458, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 29 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5466, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 30 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5474, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 31 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5482, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 32 setpoint", "group": "Alarm setpoints", "area": "holding", "address": 5490, "type": "float32", "access": "RW", "firmware_min": "1.01"},
    {"name": "Alarm 1 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6132, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 2 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6133, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 3 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6134, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 4 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6135, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 5 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6136, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 6 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6137, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 7 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6138, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 8 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6139, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 9 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6140, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 10 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6141, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 11 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6142, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 12 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6143, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 13 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6144, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 14 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6145, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 15 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6146, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 16 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6147, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 17 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6148, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 18 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6149, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 19 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6150, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 20 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6151, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 21 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6152, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 22 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6153, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 23 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6154, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 24 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6155, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 25 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6156, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 26 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6157, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 27 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6158, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 28 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6159, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 29 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6160, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 30 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6161, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 31 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6162, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Alarm 32 setpoint (integer)", "group": "Alarm setpoints", "area": "holding", "address": 6163, "type": "int16", "scale": 0.1, "access": "RW", "firmware_min": "1.30"},
    {"name": "Clock second", "group": "Logging", "area": "holding", "address": 738, "type": "uint16", "access": "R"},
    {"name": "Clock minute", "group": "Logging", "area": "holding", "address": 739, "type": "uint16", "access": "R"},
    {"name": "Clock hour", "group": "Logging", "area": "holding", "address": 740, "type": "uint16", "access": "R"},
    {"name": "Clock day", "group": "Logging", "area": "holding", "address": 741, "type": "uint16", "access": "R"},
    {"name": "Clock month", "group": "Logging", "area": "holding", "address": 742, "type": "uint16", "access": "R"},
    {"name": "Clock year", "group": "Logging", "area": "holding", "address": 743, "type": "uint16", "access": "R"},
    {"name": "Logging status", "group": "Logging", "area": "holding", "address": 768, "type": "uint16", "access": "R", "enum": {"0": "Paused", "1": "Logging"}},
    {"name": "Logging command", "group": "Logging", "area": "holding", "address": 990, "type": "uint16", "access": "RW", "enum": {"1": "Start logging", "2": "Pause logging"}, "write_min": 1, "write_max": 2, "description": "Works when logging start/stop by Modbus command is configured"}
  ]
}
