{
  "spec_version": 1,
  "slug": "deye-sunsynk-sg04lp3",
  "manufacturer": "Deye / Sunsynk",
  "model": "SUN-5/6/8/10/12K-SG04LP3",
  "category": "Solar inverter",
  "supplier_url": "https://deye.com/product/sun-5-6-8-10-12k-sg04lp3-eu/",
  "default_configuration": {
    "protocol": "modbus_tcp",
    "port": 502,
    "unit_id": 1,
    "addressing": "zero_based",
    "byte_order": "BigEndian",
    "word_order": "LowFirst",
    "native_interface": "rs485",
    "serial": {
      "parity": "None",
      "baud_rate": 9600,
      "data_bits": 8,
      "stop_bits": 1
    }
  },
  "coils": [],
  "discrete_inputs": [],
  "input_registers": [],
  "holding_registers": [
    {
      "address": 80,
      "count": 1,
      "name": "Inverter enabled",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = off, 1 = on."
    },
    {
      "address": 99,
      "count": 1,
      "name": "Battery equalization voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 100,
      "count": 1,
      "name": "Battery absorption voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 101,
      "count": 1,
      "name": "Battery float voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 102,
      "count": 1,
      "name": "Battery capacity",
      "data_type": "UInt16",
      "units": "Ah",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 103,
      "count": 1,
      "name": "Battery low voltage",
      "data_type": "Int16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 104,
      "count": 1,
      "name": "System zero export power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 105,
      "count": 1,
      "name": "Battery equalization days",
      "data_type": "UInt16",
      "units": "days",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 106,
      "count": 1,
      "name": "Battery equalization hours",
      "data_type": "UInt16",
      "units": "h",
      "scale_factor": 0.5,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 108,
      "count": 1,
      "name": "Battery max charge current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 109,
      "count": 1,
      "name": "Battery max discharge current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 111,
      "count": 1,
      "name": "Battery type",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = voltage, 1 = lithium BMS, 2 = no battery."
    },
    {
      "address": 112,
      "count": 1,
      "name": "Battery wake up",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bit 0: 0 = disabled, 1 = enabled."
    },
    {
      "address": 113,
      "count": 1,
      "name": "Battery resistance",
      "data_type": "UInt16",
      "units": "mΩ",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 114,
      "count": 1,
      "name": "Battery charge efficiency",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 115,
      "count": 1,
      "name": "Battery shutdown capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 116,
      "count": 1,
      "name": "Battery restart capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 117,
      "count": 1,
      "name": "Battery low capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 118,
      "count": 1,
      "name": "Battery shutdown voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 119,
      "count": 1,
      "name": "Battery restart voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 120,
      "count": 1,
      "name": "Battery low voltage (capacity)",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 123,
      "count": 1,
      "name": "Generator charge start voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 124,
      "count": 1,
      "name": "Generator charge start SOC",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 125,
      "count": 1,
      "name": "Generator charge current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 126,
      "count": 1,
      "name": "Grid charge start voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 127,
      "count": 1,
      "name": "Grid charge start SOC",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 128,
      "count": 1,
      "name": "Grid charge current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 129,
      "count": 1,
      "name": "Generator charge enabled",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = off, 1 = on."
    },
    {
      "address": 130,
      "count": 1,
      "name": "Grid charge enabled",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = off, 1 = on."
    },
    {
      "address": 133,
      "count": 1,
      "name": "AUX port usage",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = generator, 1 = smart load, 2 = micro inverter."
    },
    {
      "address": 141,
      "count": 1,
      "name": "Priority load",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = off, 1 = on."
    },
    {
      "address": 142,
      "count": 1,
      "name": "Load limit",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = allow export, 1 = essentials, 2 = zero export."
    },
    {
      "address": 143,
      "count": 1,
      "name": "Export limit power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 145,
      "count": 1,
      "name": "Solar export",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "0 = off, 1 = on."
    },
    {
      "address": 146,
      "count": 1,
      "name": "Time-of-use program enabled",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bit field: bit 0 enables the timer, bits 1-7 enable Monday to Sunday."
    },
    {
      "address": 154,
      "count": 1,
      "name": "Program 1 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 155,
      "count": 1,
      "name": "Program 2 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 156,
      "count": 1,
      "name": "Program 3 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 157,
      "count": 1,
      "name": "Program 4 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 158,
      "count": 1,
      "name": "Program 5 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 159,
      "count": 1,
      "name": "Program 6 power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 160,
      "count": 1,
      "name": "Program 1 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 161,
      "count": 1,
      "name": "Program 2 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 162,
      "count": 1,
      "name": "Program 3 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 163,
      "count": 1,
      "name": "Program 4 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 164,
      "count": 1,
      "name": "Program 5 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 165,
      "count": 1,
      "name": "Program 6 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 166,
      "count": 1,
      "name": "Program 1 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 167,
      "count": 1,
      "name": "Program 2 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 168,
      "count": 1,
      "name": "Program 3 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 169,
      "count": 1,
      "name": "Program 4 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 170,
      "count": 1,
      "name": "Program 5 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 171,
      "count": 1,
      "name": "Program 6 capacity",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 172,
      "count": 1,
      "name": "Program 1 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 173,
      "count": 1,
      "name": "Program 2 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 174,
      "count": 1,
      "name": "Program 3 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 175,
      "count": 1,
      "name": "Program 4 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 176,
      "count": 1,
      "name": "Program 5 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 177,
      "count": 1,
      "name": "Program 6 mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bits 0-1 charge mode, bits 2-4 run mode, bit 5 sell."
    },
    {
      "address": 179,
      "count": 1,
      "name": "Off-grid mode",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW",
      "description": "Bit 0: 0 = off, 1 = on."
    },
    {
      "address": 191,
      "count": 1,
      "name": "Grid peak shaving power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 210,
      "count": 1,
      "name": "Battery 1 BMS charging voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 211,
      "count": 1,
      "name": "Battery 1 BMS discharging voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 212,
      "count": 1,
      "name": "Battery 1 BMS charging current limit",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 213,
      "count": 1,
      "name": "Battery 1 BMS discharging current limit",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 214,
      "count": 1,
      "name": "Battery 1 BMS SOC",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 215,
      "count": 1,
      "name": "Battery 1 BMS voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 216,
      "count": 1,
      "name": "Battery 1 BMS current",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 217,
      "count": 1,
      "name": "Battery 1 BMS temperature",
      "data_type": "Int16",
      "units": "°C",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 218,
      "count": 1,
      "name": "Battery 1 BMS max charge current limit",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 219,
      "count": 1,
      "name": "Battery 1 BMS max discharge current limit",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 220,
      "count": 1,
      "name": "Battery 1 BMS alarm flag",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 229,
      "count": 1,
      "name": "Battery 1 manufacturer",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 340,
      "count": 1,
      "name": "Maximum solar power",
      "data_type": "UInt16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "RW"
    },
    {
      "address": 500,
      "count": 1,
      "name": "Overall state",
      "data_type": "UInt16",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 502,
      "count": 1,
      "name": "Day active energy",
      "data_type": "Int16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 506,
      "count": 2,
      "name": "Total active energy",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 514,
      "count": 1,
      "name": "Day battery charge",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 515,
      "count": 1,
      "name": "Day battery discharge",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 516,
      "count": 2,
      "name": "Total battery charge",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 518,
      "count": 2,
      "name": "Total battery discharge",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 520,
      "count": 1,
      "name": "Day grid import",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 521,
      "count": 1,
      "name": "Day grid export",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 522,
      "count": 2,
      "name": "Total grid import",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 524,
      "count": 2,
      "name": "Total grid export",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 526,
      "count": 1,
      "name": "Day load energy",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 527,
      "count": 2,
      "name": "Total load energy",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 529,
      "count": 1,
      "name": "Day PV energy",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 534,
      "count": 2,
      "name": "Total PV energy",
      "data_type": "UInt32",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 536,
      "count": 1,
      "name": "Day generator energy",
      "data_type": "UInt16",
      "units": "kWh",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 540,
      "count": 1,
      "name": "DC transformer temperature",
      "data_type": "Int16",
      "units": "°C",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 541,
      "count": 1,
      "name": "Radiator temperature",
      "data_type": "Int16",
      "units": "°C",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 552,
      "count": 1,
      "name": "Relay status",
      "data_type": "Hex",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R",
      "description": "Bit 0 inverter, bit 2 grid, bit 3 generator, bits 5-6 dry contacts."
    },
    {
      "address": 555,
      "count": 1,
      "name": "Fault code",
      "data_type": "Hex",
      "units": "",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 586,
      "count": 1,
      "name": "Battery temperature",
      "data_type": "Int16",
      "units": "°C",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 587,
      "count": 1,
      "name": "Battery voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 588,
      "count": 1,
      "name": "Battery SOC",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 589,
      "count": 1,
      "name": "Battery 2 SOC",
      "data_type": "UInt16",
      "units": "%",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 590,
      "count": 1,
      "name": "Battery power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 591,
      "count": 1,
      "name": "Battery current",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 593,
      "count": 1,
      "name": "Battery 2 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 594,
      "count": 1,
      "name": "Battery 2 current",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 595,
      "count": 1,
      "name": "Battery 2 power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 596,
      "count": 1,
      "name": "Battery 2 temperature",
      "data_type": "Int16",
      "units": "°C",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 598,
      "count": 1,
      "name": "Grid voltage L1",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 599,
      "count": 1,
      "name": "Grid voltage L2",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 600,
      "count": 1,
      "name": "Grid voltage L3",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 604,
      "count": 1,
      "name": "Grid inner-side power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 605,
      "count": 1,
      "name": "Grid inner-side power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 606,
      "count": 1,
      "name": "Grid inner-side power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 607,
      "count": 1,
      "name": "Grid inner-side power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 608,
      "count": 1,
      "name": "Grid inner-side apparent power, total",
      "data_type": "Int16",
      "units": "VA",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 609,
      "count": 1,
      "name": "Grid frequency",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 613,
      "count": 1,
      "name": "Grid current L1",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 614,
      "count": 1,
      "name": "Grid current L2",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 615,
      "count": 1,
      "name": "Grid current L3",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 616,
      "count": 1,
      "name": "Grid CT power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 617,
      "count": 1,
      "name": "Grid CT power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 618,
      "count": 1,
      "name": "Grid CT power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 619,
      "count": 1,
      "name": "Grid CT power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 622,
      "count": 1,
      "name": "Grid power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 623,
      "count": 1,
      "name": "Grid power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 624,
      "count": 1,
      "name": "Grid power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 625,
      "count": 1,
      "name": "Grid power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 627,
      "count": 1,
      "name": "Inverter voltage L1",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 628,
      "count": 1,
      "name": "Inverter voltage L2",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 629,
      "count": 1,
      "name": "Inverter voltage L3",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 630,
      "count": 1,
      "name": "Inverter current L1",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 631,
      "count": 1,
      "name": "Inverter current L2",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 632,
      "count": 1,
      "name": "Inverter current L3",
      "data_type": "Int16",
      "units": "A",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 633,
      "count": 1,
      "name": "Inverter power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 634,
      "count": 1,
      "name": "Inverter power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 635,
      "count": 1,
      "name": "Inverter power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 636,
      "count": 1,
      "name": "Inverter power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 638,
      "count": 1,
      "name": "Inverter frequency",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 640,
      "count": 1,
      "name": "UPS load power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 641,
      "count": 1,
      "name": "UPS load power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 642,
      "count": 1,
      "name": "UPS load power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 643,
      "count": 1,
      "name": "UPS load power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 644,
      "count": 1,
      "name": "Load voltage L1",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 645,
      "count": 1,
      "name": "Load voltage L2",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 646,
      "count": 1,
      "name": "Load voltage L3",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 650,
      "count": 1,
      "name": "Load power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 651,
      "count": 1,
      "name": "Load power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 652,
      "count": 1,
      "name": "Load power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 653,
      "count": 1,
      "name": "Load power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 655,
      "count": 1,
      "name": "Load frequency",
      "data_type": "UInt16",
      "units": "Hz",
      "scale_factor": 0.01,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 661,
      "count": 1,
      "name": "Generator voltage L1",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 662,
      "count": 1,
      "name": "Generator voltage L2",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 663,
      "count": 1,
      "name": "Generator voltage L3",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 664,
      "count": 1,
      "name": "Generator power L1",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 665,
      "count": 1,
      "name": "Generator power L2",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 666,
      "count": 1,
      "name": "Generator power L3",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 667,
      "count": 1,
      "name": "Generator power, total",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 672,
      "count": 1,
      "name": "PV1 power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 673,
      "count": 1,
      "name": "PV2 power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 674,
      "count": 1,
      "name": "PV3 power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 675,
      "count": 1,
      "name": "PV4 power",
      "data_type": "Int16",
      "units": "W",
      "scale_factor": 1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 676,
      "count": 1,
      "name": "PV1 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 677,
      "count": 1,
      "name": "PV1 current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 678,
      "count": 1,
      "name": "PV2 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 679,
      "count": 1,
      "name": "PV2 current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 680,
      "count": 1,
      "name": "PV3 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 681,
      "count": 1,
      "name": "PV3 current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 682,
      "count": 1,
      "name": "PV4 voltage",
      "data_type": "UInt16",
      "units": "V",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    },
    {
      "address": 683,
      "count": 1,
      "name": "PV4 current",
      "data_type": "UInt16",
      "units": "A",
      "scale_factor": 0.1,
      "offset": 0,
      "access": "R"
    }
  ],
  "combined_registers": [],
  "notes": "RS-485 device: reach it through a Modbus RTU-to-TCP gateway using the factory serial settings above. The SG04LP3 family exposes all values as holding registers (function code 03) with the least significant word at the lower address, hence LowFirst. Power readings are 16-bit signed values; scaling by -1 flips the sign so that the app's convention (positive = import/charge) matches the inverter's. Settings are writable holding registers; the same map covers the Deye and Sunsynk badged units. Battery compatibility: Deye's approved-battery list (DY-LV48-0126, issued 2026-05-27) covers the SUN-5/6/8/10/12K-SG04LP3 models and names BYD Battery-Box LV Flex Lite/LV5.0, LG RESU 6.5/10/12, FinDreams FD-LV5.0, Deye's own SE/RW/AI-W packs, plus Dyness, Pylontech, Soluna, WeCo, BSLBATT, Freedom Won, Hithium, VOLTA, VISION, Uhome, Narada, Shoto, Sacred Sun, REVOV, KODAK, JINKO, AOBOET, Alpha and TIANNENG - https://www.deyeinverter.com/deyeinverter/2026/05/27/DeyeApprovedBatterylistDY-LV48-0126.pdf."
}
