All devices

Huawei · Solar inverter

SUN2000 (with Smart Dongle / SmartLogger, Modbus TCP) Modbus register map

Download JSONSupplier documentationSuggest an edit

Default configuration

Protocol
Modbus TCP
Port
502
Unit ID
0
Addressing
0-based
Byte order
Big endian
Word order
High word first

Register map

AddressCountNameTypeUnitScaleAccess
3000015
Model
Inverter model string, e.g. "SUN2000-8KTL-M1". Up to 30 characters.
Ascii-1R
3001510
Serial number (SN)
Ascii-1R
3002510
Part number (PN)
Ascii-1R
300701
Model ID
Numeric model code; the mapping is in the "Supported Models" table of Huawei's interface definitions.
UInt16-1R
300711
Number of PV strings
UInt16-1R
300721
Number of MPP trackers
UInt16-1R
300732
Rated power (Pn)
UInt32kW0.001R
300752
Maximum active power (Pmax)
Nominal AC output power; useful as the 100 % reference for power limiting.
UInt32kW0.001R
320001
State 1
Bit field: 0 = standby, 1 = grid-connected, 2 = grid-connected normally, 3 = derating by power rationing, 4 = derating for internal reasons, 5 = normal stop, 6 = stop due to fault, 7 = stop due to power rationing, 8 = shutdown, 9 = spot check.
Hex-1R
320021
State 2
Bit field: 0 = locking status (0 locked, 1 unlocked), 1 = PV connection, 2 = DSP data collection.
Hex-1R
320032
State 3
Bit field: 0 = off-grid (0 on-grid, 1 off-grid), 1 = off-grid switch.
UInt32-1R
320081
Alarm 1
Alarm bit field; see the alarm table in Huawei's interface definitions.
Hex-1R
320161
PV1 voltage
Int16V0.1R
320171
PV1 current
Int16A0.01R
320181
PV2 voltage
Int16V0.1R
320191
PV2 current
Int16A0.01R
320642
Input power (DC)
Total DC input power of all strings.
Int32kW0.001R
320661
Grid voltage A-B / phase A voltage
Line-to-line voltage on three-phase models, phase voltage on single-phase models.
UInt16V0.1R
320671
Grid voltage B-C / phase B voltage
UInt16V0.1R
320681
Grid voltage C-A / phase C voltage
UInt16V0.1R
320691
Phase A voltage
Invalid on single-phase models.
UInt16V0.1R
320701
Phase B voltage
UInt16V0.1R
320711
Phase C voltage
UInt16V0.1R
320722
Phase A current
Int32A0.001R
320742
Phase B current
Int32A0.001R
320762
Phase C current
Int32A0.001R
320802
Active power (AC)
Total AC output power; this is the register most monitoring tools use.
Int32kW0.001R
320822
Reactive power
Int32kvar0.001R
320841
Power factor
Int16-0.001R
320851
Grid frequency
UInt16Hz0.01R
320871
Internal temperature
Int16°C0.1R
320891
Device status
0x0000 initialising, 0x0100 starting, 0x0200 on-grid, 0x0201 grid-connected power limited, 0x0203 off-grid running, 0x0300+ shutdown (fault, command, OVGR, communication lost, ...), 0x0401+ grid scheduling, 0x0500 spot check, 0x0A00 off-grid charging, 0xA000 standby: no irradiation.
UInt16-1R
320901
Fault code
Current fault code; 0 = no fault.
UInt16-1R
321062
Accumulated energy yield
UInt32kWh0.01R
321142
Daily energy yield
UInt32kWh0.01R
371001
Meter status
0 = offline, 1 = normal, 2 = abnormal.
UInt16-1R
371012
Meter voltage, phase A
Int32V0.1R
371032
Meter voltage, phase B
Int32V0.1R
371052
Meter voltage, phase C
Int32V0.1R
371072
Meter current, phase A
Int32A0.01R
371092
Meter current, phase B
Int32A0.01R
371112
Meter current, phase C
Int32A0.01R
371132
Meter active power
Positive = feeding into the grid, negative = drawn from the grid.
Int32W1R
371152
Meter reactive power
Int32var1R
371171
Meter power factor
Int16-0.001R
371181
Meter grid frequency
Int16Hz0.01R
371192
Meter energy, feed-in (export)
Energy fed by the inverter into the grid; Huawei calls this the positive active electricity.
Int32kWh0.01R
371212
Meter energy, drawn (import)
Energy supplied from the grid; Huawei calls this the reverse active power.
Int32kWh0.01R
371251
Meter type
0 = single phase, 1 = three phase.
UInt16-1R
377582
Battery rated capacity
UInt32Wh1R
377601
Battery state of charge (SOC)
UInt16%0.1R
377621
Battery running status
0 = offline, 1 = standby, 2 = running, 3 = fault, 4 = sleep mode.
UInt16-1R
377631
Battery bus voltage
UInt16V0.1R
377641
Battery bus current
Int16A0.1R
377652
Battery charge/discharge power
Positive = charging, negative = discharging.
Int32W1R
377802
Total battery charge (lifetime)
UInt32kWh0.01R
377822
Total battery discharge (lifetime)
UInt32kWh0.01R
377842
Current-day battery charge
UInt32kWh0.01R
377862
Current-day battery discharge
UInt32kWh0.01R
400002
System time
Epoch seconds, local time.
UInt32s1RW
401201
Fixed active power derating
Setpoint for grid-scheduling active power limitation; takes effect with the matching control mode.
UInt16kW0.1RW
401221
Reactive power compensation (PF)
Target power factor, e.g. 950 = 0.95. Range (-1, -0.8] and [0.8, 1].
Int16-0.001RW
401231
Reactive power compensation (Q/S)
Reactive power as a fraction of Smax, range [-1, 1].
Int16-0.001RW
401251
Active power percentage derating
Active power limit in % of Pmax for grid-scheduling by percentage.
UInt16%0.1RW
401262
Fixed active power derating (W)
Active power limit as an absolute value in W.
UInt32W1RW
470752
Maximum charging power
Upper limit for battery charging, capped by the inverter's rated charge power (37046).
UInt32W1RW
470772
Maximum discharging power
Upper limit for battery discharging, capped by the inverter's rated discharge power (37048).
UInt32W1RW
470811
Charging cutoff capacity (max SOC)
Default 100 %; range 90-100 %.
UInt16%0.1RW
470821
Discharging cutoff capacity (min SOC)
Default 15 %; range 12-20 %.
UInt16%0.1RW
470871
Charge from grid
0 = disabled, 1 = enabled (LUNA2000 AC charging from the grid).
UInt16-1RW
471001
Forcible charge/discharge
0 = stop, 1 = charge, 2 = discharge. Requires a forcible charge/discharge period (47083) and mode (47246).
UInt16-1RW
474151
Active power control mode
0 = unlimited, 1 = DI active scheduling, 5 = zero power to grid, 6 = power-limited (kW), 7 = power-limited (%).
UInt16-1RW
474181
Maximum feed-in grid power
Export limit in % of the plant capacity; only applied when the active power control mode is 7.
UInt16%0.1RW

Combined registers

  • PV1 power (calculated)Holding registers 32016 * Holding registers 32017 (W)PV1 voltage x PV1 current. Huawei publishes per-string voltage and current but no per-string power register.
  • PV2 power (calculated)Holding registers 32018 * Holding registers 32019 (W)PV2 voltage x PV2 current.

Notes

Modbus TCP must be enabled on the inverter (Communication settings, installer/maintenance access) and the registers are served by the Smart Dongle (SDongleA-05, port 502) or a SmartLogger. Unit ID 0 addresses the directly connected device, which is the default in Huawei's interface definitions; some dongle firmware versions answer on unit ID 1 instead, and downstream devices behind a SmartLogger use their own address (the SmartLogger can also expose the data on port 6607). All registers are holding registers: read-only values with function code 3, settings written with 6/16. Address numbers are Huawei's register numbers used as wire addresses. "Gain" in Huawei's tables is applied here as the scale factor (gain 10 -> 0.1, gain 100 -> 0.01, gain 1000 -> 0.001). The meter block (37100-37138) is only populated when a Smart Power Sensor / DTSU666 is connected. The battery block (37758-37786) is the aggregate view of all battery units and is only present on hybrid (M1) models with LUNA2000 or LG RESU; battery unit 1 has its own registers at 37000-37025 and unit 2 at 37700-37755. Writes are range-checked by the inverter, and repeatedly written settings can be rejected while the dongle is busy, so keep the polling interval for RW registers long. Source: Huawei "Solar Inverter Modbus Interface Definitions", issue 05 (2023-02-16).