{
  "manufacturer": "pilot",
  "model": "spm32",
  "device": "spm32",
  "category": "Altro",
  "protocol": "modbus",
  "version": "v1",
  "firmware": null,
  "verification": "IMPORTED",
  "isDemo": false,
  "source": {
    "title": "pilot spm32 — modbus-database (registers.json)",
    "url": "https://www.aggsoft.com/serial-data-logger/tutorials/modbus-data-logging/pilot-spm32.htm",
    "documentRef": null,
    "revision": null
  },
  "generatedAt": "2026-09-21T14:23:12.301Z",
  "registers": [
    {
      "address": "1",
      "addressNumeric": 1,
      "signal": "vb_ph_n",
      "name": "Vb-(ph-n)",
      "description": "Vb-(ph-n)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2",
      "addressNumeric": 2,
      "signal": "vc_ph_n",
      "name": "Vc-(ph-n)",
      "description": "Vc-(ph-n)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "3",
      "addressNumeric": 3,
      "signal": "vab_ph_ph",
      "name": "Vab-(ph-ph)",
      "description": "Vab-(ph-ph)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "4",
      "addressNumeric": 4,
      "signal": "vbc_ph_ph",
      "name": "Vbc-(ph-ph)",
      "description": "Vbc-(ph-ph)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5",
      "addressNumeric": 5,
      "signal": "vca_ph_ph",
      "name": "Vca-(ph-ph)",
      "description": "Vca-(ph-ph)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "6",
      "addressNumeric": 6,
      "signal": "ia",
      "name": "Ia",
      "description": "Ia",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "7",
      "addressNumeric": 7,
      "signal": "ib",
      "name": "Ib",
      "description": "Ib",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "8",
      "addressNumeric": 8,
      "signal": "ic",
      "name": "Ic",
      "description": "Ic",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "9",
      "addressNumeric": 9,
      "signal": "neutral_current",
      "name": "Neutral-current",
      "description": "Neutral-current",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "10",
      "addressNumeric": 10,
      "signal": "total_active_power",
      "name": "Total-active-power",
      "description": "Total-active-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "12",
      "addressNumeric": 12,
      "signal": "total_reactive_power",
      "name": "Total-reactive-power",
      "description": "Total-reactive-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "var",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "14",
      "addressNumeric": 14,
      "signal": "total_power_factor",
      "name": "Total-power-factor",
      "description": "Total-power-factor",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "15",
      "addressNumeric": 15,
      "signal": "phase_a_active_power",
      "name": "Phase-A-active-power",
      "description": "Phase-A-active-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "16",
      "addressNumeric": 16,
      "signal": "phase_b_active_power",
      "name": "Phase-B-active-power",
      "description": "Phase-B-active-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "17",
      "addressNumeric": 17,
      "signal": "phase_c_active_power",
      "name": "Phase-C-active-power",
      "description": "Phase-C-active-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "18",
      "addressNumeric": 18,
      "signal": "phase_a_reactive_power",
      "name": "Phase-A-reactive-power",
      "description": "Phase-A-reactive-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "var",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "19",
      "addressNumeric": 19,
      "signal": "phase_b_reactive_power",
      "name": "Phase-B-reactive-power",
      "description": "Phase-B-reactive-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "var",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "20",
      "addressNumeric": 20,
      "signal": "phase_c_reactive_power",
      "name": "Phase-C-reactive-power",
      "description": "Phase-C-reactive-power",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "var",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "21",
      "addressNumeric": 21,
      "signal": "phase_a_power_factor",
      "name": "Phase-A-power-factor",
      "description": "Phase-A-power-factor",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "22",
      "addressNumeric": 22,
      "signal": "phase_b_power_factor",
      "name": "Phase-B-power-factor",
      "description": "Phase-B-power-factor",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "23",
      "addressNumeric": 23,
      "signal": "phase_c_power_factor",
      "name": "Phase-C-power-factor",
      "description": "Phase-C-power-factor",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "24",
      "addressNumeric": 24,
      "signal": "frequency",
      "name": "Frequency",
      "description": "Frequency",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "Hz",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "25",
      "addressNumeric": 25,
      "signal": "total_kwh",
      "name": "Total-kwh",
      "description": "Total-kwh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "27",
      "addressNumeric": 27,
      "signal": "total_kvarh",
      "name": "Total-kvarh",
      "description": "Total-kvarh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kvarh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "29",
      "addressNumeric": 29,
      "signal": "import_kwh",
      "name": "Import.-kwh",
      "description": "Import.-kwh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "31",
      "addressNumeric": 31,
      "signal": "export_kwh",
      "name": "Export.-kwh",
      "description": "Export.-kwh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "33",
      "addressNumeric": 33,
      "signal": "import_kvarh",
      "name": "Import-kvarh",
      "description": "Import-kvarh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kvarh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "35",
      "addressNumeric": 35,
      "signal": "export_kvarh",
      "name": "Export.-kvarh",
      "description": "Export.-kvarh",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kvarh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "37",
      "addressNumeric": 37,
      "signal": "digital_input_on_off_status",
      "name": "Digital-input-(on-off-status)",
      "description": "Digital-input-(on-off-status)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "38",
      "addressNumeric": 38,
      "signal": "relay_status",
      "name": "Relay-status",
      "description": "Relay-status",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "39",
      "addressNumeric": 39,
      "signal": "alarm_status",
      "name": "Alarm-status",
      "description": "Alarm-status",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "40",
      "addressNumeric": 40,
      "signal": "ct_ratio",
      "name": "Ct-ratio",
      "description": "Ct-ratio",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "41",
      "addressNumeric": 41,
      "signal": "pt_ratio",
      "name": "Pt-ratio",
      "description": "Pt-ratio",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "42",
      "addressNumeric": 42,
      "signal": "average_voltage_ph_n",
      "name": "Average-voltage-(ph-n)",
      "description": "Average-voltage-(ph-n)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "43",
      "addressNumeric": 43,
      "signal": "average_voltage_ph_ph",
      "name": "Average-voltage-(ph-ph)",
      "description": "Average-voltage-(ph-ph)",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "44",
      "addressNumeric": 44,
      "signal": "average_current",
      "name": "Average-current",
      "description": "Average-current",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "45",
      "addressNumeric": 45,
      "signal": "current_unbalance_rate",
      "name": "Current-unbalance-rate",
      "description": "Current-unbalance-rate",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "46",
      "addressNumeric": 46,
      "signal": "phase_a_apparent_power",
      "name": "Phase-A-apparent-power",
      "description": "Phase-A-apparent-power",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "VA",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "47",
      "addressNumeric": 47,
      "signal": "phase_b_apparent_power",
      "name": "Phase-B-apparent-power",
      "description": "Phase-B-apparent-power",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "VA",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "48",
      "addressNumeric": 48,
      "signal": "phase_c_apparent_power",
      "name": "Phase-C-apparent-power",
      "description": "Phase-C-apparent-power",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "VA",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "49",
      "addressNumeric": 49,
      "signal": "total_apparent_power",
      "name": "Total-apparent-power",
      "description": "Total-apparent-power",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "51",
      "addressNumeric": 51,
      "signal": "total_apparent_energy",
      "name": "Total-apparent-energy",
      "description": "Total-apparent-energy",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kVAh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "700",
      "addressNumeric": 700,
      "signal": "demand_for_ia",
      "name": "Demand-for-ia",
      "description": "Demand-for-ia",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "701",
      "addressNumeric": 701,
      "signal": "demand_for_ib",
      "name": "Demand-for-ib",
      "description": "Demand-for-ib",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "702",
      "addressNumeric": 702,
      "signal": "demand_for_ic",
      "name": "Demand-for-ic",
      "description": "Demand-for-ic",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "703",
      "addressNumeric": 703,
      "signal": "demand_for_pa",
      "name": "Demand-for-pa",
      "description": "Demand-for-pa",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "704",
      "addressNumeric": 704,
      "signal": "demand_for_pb",
      "name": "Demand-for-pb",
      "description": "Demand-for-pb",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "705",
      "addressNumeric": 705,
      "signal": "demand_for_pc",
      "name": "Demand-for-pc",
      "description": "Demand-for-pc",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "706",
      "addressNumeric": 706,
      "signal": "demand_for_ptot_low",
      "name": "Demand-for-ptot-(low)",
      "description": "Demand-for-ptot-(low)",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "708",
      "addressNumeric": 708,
      "signal": "max_demand_for_ia",
      "name": "Max.-demand-for-ia",
      "description": "Max.-demand-for-ia",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    }
  ]
}