This repository has been archived on 2026-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
powersync-plugins-modbus/huawei/huawei-registers.json

436 lines
14 KiB
JSON

{
"className": "Huawei",
"protocol": "RTU",
"endianness": "BigEndian",
"errorLimitUntilNotReachable": 15,
"checkReachableRegister": "inverterActivePower",
"enums": [
{
"name": "InverterDeviceStatus",
"values": [
{
"key": "StandbyInitializing",
"value": 0
},
{
"key": "StandbyDetectingInsulationResistance",
"value": 1
},
{
"key": "StandbyDetectingIrradiation",
"value": 2
},
{
"key": "StandbyDridDetecting",
"value": 3
},
{
"key": "Starting",
"value": 256
},
{
"key": "OnGrid",
"value": 512
},
{
"key": "PowerLimited",
"value": 513
},
{
"key": "SelfDerating",
"value": 514
},
{
"key": "ShutdownFault",
"value": 768
},
{
"key": "ShutdownCommand",
"value": 769
},
{
"key": "ShutdownOVGR",
"value": 770
},
{
"key": "ShutdownCommunicationDisconnected",
"value": 771
},
{
"key": "ShutdownPowerLimit",
"value": 772
},
{
"key": "ShutdownManualStartupRequired",
"value": 773
},
{
"key": "ShutdownInputUnderpower",
"value": 774
},
{
"key": "GridSchedulingPCurve",
"value": 1025
},
{
"key": "GridSchedulingQUCurve",
"value": 1026
},
{
"key": "GridSchedulingPFUCurve",
"value": 1027
},
{
"key": "GridSchedulingDryContact",
"value": 1028
},
{
"key": "GridSchedulingQPCurve",
"value": 1029
},
{
"key": "SpotCheckReady",
"value": 1280
},
{
"key": "SpotChecking",
"value": 1281
},
{
"key": "Inspecting",
"value": 1536
},
{
"key": "AfciSelfCheck",
"value": 1792
},
{
"key": "IVScanning",
"value": 2048
},
{
"key": "DCInputDetection",
"value": 2304
},
{
"key": "RunningOffGridCharging",
"value": 2560
},
{
"key": "StandbyNoIrradiation",
"value": 40960
}
]
},
{
"name": "BatteryDeviceStatus",
"values": [
{
"key": "Offline",
"value": 0
},
{
"key": "Standby",
"value": 1
},
{
"key": "Running",
"value": 2
},
{
"key": "Fault",
"value": 3
},
{
"key": "SleepMode",
"value": 4
}
]
}
],
"blocks": [
{
"id": "identifyer",
"readSchedule": "init",
"registers": [
{
"id": "model",
"address": 30000,
"size": 15,
"type": "string",
"registerType": "holdingRegister",
"description": "Model",
"access": "RO"
},
{
"id": "serialNumber",
"address": 30015,
"size": 10,
"type": "string",
"registerType": "holdingRegister",
"description": "Serial number",
"access": "RO"
},
{
"id": "productNumber",
"address": 30025,
"size": 10,
"type": "string",
"registerType": "holdingRegister",
"description": "Product number",
"access": "RO"
}
]
},
{
"id": "setup",
"readSchedule": "init",
"registers": [
{
"id": "modelId",
"address": 30070,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"description": "Model ID",
"defaultValue": "0",
"access": "RO"
},
{
"id": "numberOfPvStrings",
"address": 30071,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"description": "Number of PV strings",
"defaultValue": "0",
"access": "RO"
},
{
"id": "numberOfMppTracks",
"address": 30072,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"description": "Number of MPP tracks",
"defaultValue": "0",
"access": "RO"
},
{
"id": "ratedPower",
"address": 30073,
"size": 2,
"type": "uint32",
"registerType": "holdingRegister",
"description": "Rated power (Pn)",
"unit": "kW",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
},
{
"id": "maxActivePower",
"address": 30075,
"size": 2,
"type": "uint32",
"registerType": "holdingRegister",
"description": "Maximum active power (P max)",
"unit": "kW",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
},
{
"id": "maxApparentPower",
"address": 30077,
"size": 2,
"type": "uint32",
"registerType": "holdingRegister",
"description": "Maximum apparant power (S max)",
"unit": "kVA",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
},
{
"id": "maxReactivePowerToGrid",
"address": 30079,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"description": "Maximum reactive power (Q max) - fed to grid",
"unit": "kVar",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
},
{
"id": "maxReactivePowerFromGrid",
"address": 30081,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"description": "Maximum reactive power (Q max) - absorbed from grid",
"unit": "kVar",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
}
]
}
],
"registers": [
{
"id": "inverterActivePower",
"address": 32080,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Inverter active power",
"unit": "kW",
"staticScaleFactor": -3,
"defaultValue": "0",
"access": "RO"
},
{
"id": "inverterDeviceStatus",
"address": 32089,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Inverter device status",
"enum": "InverterDeviceStatus",
"defaultValue": "InverterDeviceStatusStandbyInitializing",
"access": "RO"
},
{
"id": "inverterEnergyProduced",
"address": 32106,
"size": 2,
"type": "uint32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Inverter energy produced",
"unit": "kWh",
"staticScaleFactor": -2,
"defaultValue": "0",
"access": "RO"
},
{
"id": "powerMeterActivePower",
"address": 37113,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Power meter active power",
"unit": "W",
"defaultValue": "0",
"access": "RO"
},
{
"id": "powerMeterEnergyReturned",
"address": 37119,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": " Positive active electricity - To Grid",
"unit": "kWh",
"staticScaleFactor": -2,
"defaultValue": "0",
"access": "RO"
},
{
"id": "powerMeterEnergyAquired",
"address": 37121,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Reverse active power - From Grid",
"unit": "kWh",
"staticScaleFactor": -2,
"defaultValue": "0",
"access": "RO"
},
{
"id": "lunaBattery1Status",
"address": 37000,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 1 status",
"enum": "BatteryDeviceStatus",
"defaultValue": "BatteryDeviceStatusOffline",
"access": "RO"
},
{
"id": "lunaBattery1Power",
"address": 37001,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 1 power",
"unit": "W",
"defaultValue": "0",
"access": "RO"
},
{
"id": "lunaBattery1Soc",
"address": 37004,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 1 state of charge",
"staticScaleFactor": -1,
"unit": "%",
"defaultValue": "0",
"access": "RO"
},
{
"id": "lunaBattery2Status",
"address": 37741,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 2 status",
"enum": "BatteryDeviceStatus",
"defaultValue": "BatteryDeviceStatusOffline",
"access": "RO"
},
{
"id": "lunaBattery2Power",
"address": 37743,
"size": 2,
"type": "int32",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 2 power",
"unit": "W",
"defaultValue": "0",
"access": "RO"
},
{
"id": "lunaBattery2Soc",
"address": 37738,
"size": 1,
"type": "uint16",
"registerType": "holdingRegister",
"readSchedule": "update",
"description": "Luna 2000 Battery 2 state of charge",
"staticScaleFactor": -1,
"unit": "%",
"defaultValue": "0",
"access": "RO"
}
]
}