{
  "manufacturer": "huawei",
  "model": "solar-inverter",
  "device": "solar-inverter",
  "category": "Energy Generation",
  "protocol": "modbus",
  "version": "v1",
  "firmware": null,
  "verification": "IMPORTED",
  "isDemo": false,
  "source": {
    "title": "huawei solar-inverter — modbus-database (registers.json)",
    "url": "https://www.aggsoft.com/serial-data-logger/tutorials/modbus-data-logging/huawei-solar-inverter.htm",
    "documentRef": null,
    "revision": null
  },
  "generatedAt": "2026-09-21T14:44:49.588Z",
  "registers": [
    {
      "address": "69",
      "addressNumeric": 69,
      "signal": "model_id",
      "name": "Model-id",
      "description": "Model-id",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "71",
      "addressNumeric": 71,
      "signal": "number_of_mpp_trackers",
      "name": "Number-of-mpp-trackers",
      "description": "Number-of-mpp-trackers",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "72",
      "addressNumeric": 72,
      "signal": "rated_power",
      "name": "Rated-power",
      "description": "Rated-power",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "74",
      "addressNumeric": 74,
      "signal": "maximum_active_power_max",
      "name": "Maximum-active-power-(-max)",
      "description": "Maximum-active-power-(-max)",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "76",
      "addressNumeric": 76,
      "signal": "maximum_apparent_power_smax",
      "name": "Maximum-apparent-power-(smax)",
      "description": "Maximum-apparent-power-(smax)",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kVA",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "78",
      "addressNumeric": 78,
      "signal": "maximum_reactive_power_qmax_fed_to_the_power_grid",
      "name": "Maximum-reactive-power-(qmax,-fed-to-the-power-grid)",
      "description": "Maximum-reactive-power-(qmax,-fed-to-the-power-grid)",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kVar",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "80",
      "addressNumeric": 80,
      "signal": "maximum_reactive_power_absorbed_from_the_power_grid",
      "name": "Maximum-reactive-power-absorbed-from-the-power-grid)",
      "description": "Maximum-reactive-power-absorbed-from-the-power-grid)",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kVar",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "1999",
      "addressNumeric": 1999,
      "signal": "state_1",
      "name": "State-1",
      "description": "State-1",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2008",
      "addressNumeric": 2008,
      "signal": "alarm_2",
      "name": "Alarm-2",
      "description": "Alarm-2",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2009",
      "addressNumeric": 2009,
      "signal": "alarm_3",
      "name": "Alarm-3",
      "description": "Alarm-3",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2015",
      "addressNumeric": 2015,
      "signal": "pvlvoltage",
      "name": "Pvlvoltage",
      "description": "Pvlvoltage",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2016",
      "addressNumeric": 2016,
      "signal": "pvlcurrent",
      "name": "Pvlcurrent",
      "description": "Pvlcurrent",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2017",
      "addressNumeric": 2017,
      "signal": "pv2voltage",
      "name": "Pv2voltage",
      "description": "Pv2voltage",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2018",
      "addressNumeric": 2018,
      "signal": "pv2current",
      "name": "Pv2current",
      "description": "Pv2current",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2019",
      "addressNumeric": 2019,
      "signal": "pv3voltage",
      "name": "Pv3voltage",
      "description": "Pv3voltage",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2020",
      "addressNumeric": 2020,
      "signal": "pv3current",
      "name": "Pv3current",
      "description": "Pv3current",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2022",
      "addressNumeric": 2022,
      "signal": "pv4current",
      "name": "Pv4current",
      "description": "Pv4current",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2063",
      "addressNumeric": 2063,
      "signal": "input_power",
      "name": "Input-power",
      "description": "Input-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2065",
      "addressNumeric": 2065,
      "signal": "power_grid_voltage_line_voltage_between_phases_a_and_b",
      "name": "Power-grid-voltage/line-voltage-between-phases-A-and-B",
      "description": "Power-grid-voltage/line-voltage-between-phases-A-and-B",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2066",
      "addressNumeric": 2066,
      "signal": "line_voltage_between_phases_b_and_c",
      "name": "Line-voltage-between-phases-B-and-C",
      "description": "Line-voltage-between-phases-B-and-C",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2067",
      "addressNumeric": 2067,
      "signal": "line_voltage_between_phases_c_and_a",
      "name": "Line-voltage-between-phases-C-and-A",
      "description": "Line-voltage-between-phases-C-and-A",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2068",
      "addressNumeric": 2068,
      "signal": "phase_a_voltage",
      "name": "Phase-A-voltage",
      "description": "Phase-A-voltage",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2069",
      "addressNumeric": 2069,
      "signal": "phase_b_voltage",
      "name": "Phase-B-voltage",
      "description": "Phase-B-voltage",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2070",
      "addressNumeric": 2070,
      "signal": "phase_c_voltage",
      "name": "Phase-C-voltage",
      "description": "Phase-C-voltage",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "V",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2071",
      "addressNumeric": 2071,
      "signal": "power_grid_current_phase_a_current",
      "name": "Power-grid-current/phase-A-current",
      "description": "Power-grid-current/phase-A-current",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2073",
      "addressNumeric": 2073,
      "signal": "phase_b_current",
      "name": "Phase-B-current",
      "description": "Phase-B-current",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2075",
      "addressNumeric": 2075,
      "signal": "phase_c_current",
      "name": "Phase-C-current",
      "description": "Phase-C-current",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "A",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2077",
      "addressNumeric": 2077,
      "signal": "peak_active_power_of_current_day",
      "name": "Peak-active-power-of-current-day",
      "description": "Peak-active-power-of-current-day",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2079",
      "addressNumeric": 2079,
      "signal": "active_power",
      "name": "Active-power",
      "description": "Active-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2081",
      "addressNumeric": 2081,
      "signal": "reactive_power",
      "name": "Reactive-power",
      "description": "Reactive-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kVar",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2083",
      "addressNumeric": 2083,
      "signal": "power_factor",
      "name": "Power-factor",
      "description": "Power-factor",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2084",
      "addressNumeric": 2084,
      "signal": "grid_frequency",
      "name": "Grid-frequency",
      "description": "Grid-frequency",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "Hz",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2085",
      "addressNumeric": 2085,
      "signal": "efficiency",
      "name": "Efficiency",
      "description": "Efficiency",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "%",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2086",
      "addressNumeric": 2086,
      "signal": "internal_temperature",
      "name": "Internal-temperature",
      "description": "Internal-temperature",
      "functionCode": 3,
      "datatype": "int16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "DC",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2087",
      "addressNumeric": 2087,
      "signal": "insulation_resistance",
      "name": "Insulation-resistance",
      "description": "Insulation-resistance",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": "MW",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2088",
      "addressNumeric": 2088,
      "signal": "device_status",
      "name": "Device-status",
      "description": "Device-status",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2089",
      "addressNumeric": 2089,
      "signal": "fault_code",
      "name": "Fault-code",
      "description": "Fault-code",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2090",
      "addressNumeric": 2090,
      "signal": "startup_time",
      "name": "Startup-time",
      "description": "Startup-time",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2092",
      "addressNumeric": 2092,
      "signal": "shutdown_time",
      "name": "Shutdown-time",
      "description": "Shutdown-time",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2105",
      "addressNumeric": 2105,
      "signal": "accumulated_energy_yield",
      "name": "Accumulated-energy-yield",
      "description": "Accumulated-energy-yield",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "2113",
      "addressNumeric": 2113,
      "signal": "daily_energy_yield",
      "name": "Daily-energy-yield",
      "description": "Daily-energy-yield",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5299",
      "addressNumeric": 5299,
      "signal": "active_adjustment_mode",
      "name": "[active]-adjustment-mode",
      "description": "[active]-adjustment-mode",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5301",
      "addressNumeric": 5301,
      "signal": "active_adjustment_value",
      "name": "[active]-adjustment-value",
      "description": "[active]-adjustment-value",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5302",
      "addressNumeric": 5302,
      "signal": "active_adjustment_command",
      "name": "[active]-adjustment-command",
      "description": "[active]-adjustment-command",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5303",
      "addressNumeric": 5303,
      "signal": "reactive_adjustment_mode",
      "name": "[reactive]-adjustment-mode",
      "description": "[reactive]-adjustment-mode",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5304",
      "addressNumeric": 5304,
      "signal": "reactive_adjustment_value",
      "name": "[reactive]-adjustment-value",
      "description": "[reactive]-adjustment-value",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "5306",
      "addressNumeric": 5306,
      "signal": "reactive_adjustment_command",
      "name": "[reactive]-adjustment-command",
      "description": "[reactive]-adjustment-command",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "6999",
      "addressNumeric": 6999,
      "signal": "energy_storage_unit_1_running_status",
      "name": "[energy-storage-unit-1]-running-status",
      "description": "[energy-storage-unit-1]-running-status",
      "functionCode": 3,
      "datatype": "uint16",
      "length": 1,
      "scale": 1,
      "offset": 0,
      "unit": null,
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "7000",
      "addressNumeric": 7000,
      "signal": "energy_storage_unit_1_charge_and_discharge_power",
      "name": "[energy-storage-unit-1]-charge-and-discharge-power",
      "description": "[energy-storage-unit-1]-charge-and-discharge-power",
      "functionCode": 3,
      "datatype": "int32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "W",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    },
    {
      "address": "7014",
      "addressNumeric": 7014,
      "signal": "energy_storage_unit_1_current_day_charge_capacity",
      "name": "[energy-storage-unit-1]-current-day-charge-capacity",
      "description": "[energy-storage-unit-1]-current-day-charge-capacity",
      "functionCode": 3,
      "datatype": "uint32",
      "length": 2,
      "scale": 1,
      "offset": 0,
      "unit": "kWh",
      "access": "READ",
      "endianness": null,
      "group": null,
      "notes": null
    }
  ]
}