TapHome

Huawei SUN2000 (Modbus RTU)

Modbus RTU
Submitted by
Last updated: 03. 2026
Huawei SUN2000 (Modbus RTU)

The Huawei SUN2000 3-10KTL series are three-phase string inverters for residential PV systems, with rated power from 3 kW to 10 kW. This template connects to the inverter via Modbus RTU over RS-485, using the COM port on the bottom of the inverter. Unlike the TCP variant (which uses a Smart Dongle for network connectivity), the RTU variant communicates directly over a serial RS-485 bus.

The template provides active power monitoring with power control actions, DC input power with grid-side measurements, PV string current and voltage readings, grid power meter (via Smart Power Sensor), battery state of charge, daily and cumulative energy counters, and detailed inverter status with alarm decoding.

Huawei warns that Modbus RTU communication may become unstable when the inverter communicates with cloud servers via the WLAN Smart Dongle. Disconnect the WLAN Smart Dongle before using Modbus RTU to avoid CRC errors and communication failures on the RS-485 bus.

Hardware connection

The SUN2000 inverter has a 16-pin COM port (#8) on the bottom panel. The COM port provides two separate RS-485 buses:

BusPinsPurpose
Bus 1Pin 1 (485A1-1), Pin 3 (485B1-1)Cascading inverters, SmartLogger, TapHome connection
Bus 2Pin 7 (485A2), Pin 9 (485B2)Smart Power Sensor, energy storage

For TapHome Modbus RTU connection, use Bus 1:

  • Pin 1 (485A1-1) – connect to RS-485 A+ on TapHome controller
  • Pin 3 (485B1-1) – connect to RS-485 B- on TapHome controller
  • Pin 5 (PE) – shield ground (optional but recommended)
Inverter port locations
SUN2000 inverter bottom panel showing COM port (#8) and Smart Dongle port (#9)

The COM port (#8) is located on the bottom panel, next to the AC output port (#7) and the Smart Dongle port (#9).

COM port pinout
SUN2000 COM port 16-pin connector with pin numbering
PinDefinitionFunction
1485A1-1RS-485 A+ (Bus 1) – connect to TapHome A+
2485A1-2RS-485 A+ (Bus 1) – for cascading to next inverter
3485B1-1RS-485 B- (Bus 1) – connect to TapHome B-
4485B1-2RS-485 B- (Bus 1) – for cascading to next inverter
5PEShield layer grounding
7485A2RS-485 A+ (Bus 2) – Smart Power Sensor
9485B2RS-485 B- (Bus 2) – Smart Power Sensor
RS-485 cable installation
RS-485 signal cable installation into COM port connector showing pin positions 485A1-1, 485B1-1, and PE

Use an outdoor shielded twisted pair cable. Strip the outer jacket approximately 55 mm and the inner insulation 12-14 mm. Insert wires into the correct pin positions on the signal cable connector, then insert the connector into the COM port and turn clockwise to lock. Secure with the M3 screw (torque: 0.55 N.m).

Route the RS-485 signal cable separately from power cables to prevent electromagnetic interference.

Configuration

Communication parameters
ParameterValue
ProtocolModbus RTU
Baud rate9600 bps
Data bits8
ParityNone
Stop bits1
Slave ID1 (default, configurable via FusionSolar app)
Setting the Slave ID

The default Modbus slave address is 1. To change it:

  1. Connect to the inverter via the FusionSolar app (initial WiFi password: Changeme)
  2. Log in as installer (initial password: 00000a)
  3. Navigate to communication settings and change the RS-485 address
  4. Change the default password immediately after first login

The WLAN Smart Dongle must be disconnected for stable Modbus RTU communication. If the dongle is installed for FusionSolar cloud monitoring, remove it after configuration and before connecting TapHome via RS-485.

Device capabilities

The template exposes the following devices:

Active Power

An electricity meter device that reads the inverter’s current AC output power in kW (register H:32080, Int32, divided by 1000). This is the primary power monitoring device and provides both read and write capabilities.

Service attributes include peak active power of the day (H:32078), reactive power in kVar (H:32082), rated power, maximum active power, maximum apparent power, and maximum reactive power ratings (feed to grid and absorbed from grid).

Three service actions allow power control:

  • Reactive Power Compensation (PF) – set power factor from -1.0 to 1.0 (writes to H:40122)
  • Reactive Power Compensation (Q/S) – set reactive power ratio from -1.0 to 1.0 (writes to H:40123)
  • Active Power Derating (%) – limit output power as percentage 0-100% (writes to H:40125)
Battery

Displays battery state of charge as a percentage (register H:37760, UInt16, divided by 1000). A service attribute shows the battery running status (H:37762) with values: Offline, Standby, Running, Fault, or Sleep Mode.

The Battery device only appears functional when a LUNA2000 battery is connected to the inverter. Without a battery, the running status will show “Offline” and SOC will read zero.

Grid Power Meter

Reads active grid power from the Smart Power Sensor in kW (register H:37113, Int32, divided by 1000) and grid exported energy in kWh (register H:37119, Int32, divided by 100). Positive values indicate power exported to the grid, negative values indicate power imported from the grid.

Service attributes show the meter status (Normal/Offline) and meter type (3-phase/1-phase).

The Grid Power Meter device requires a Huawei Smart Power Sensor (DTSU666-H) connected to the inverter via RS-485 Bus 2 (pins 7 and 9 on the COM port). This device is not present in the TCP variant.

DC Input Power

Read-only sensor showing total DC power from all PV strings combined in kW (register H:32064, Int32, divided by 1000).

Service attributes provide grid-side measurements: grid frequency (H:32085), phase voltages A/B/C (H:32069-32071), phase currents A/B/C (H:32072-32076), and line-to-line voltages AB/BC/CA (H:32066-32068).

Daily Energy and Total Energy

Two read-only energy counters:

  • Daily Energy – energy generated today in kWh (register H:32114, divided by 100), resets daily
  • Total Energy – cumulative energy since commissioning in kWh (register H:32106, divided by 100)
PV string currents (PV1-PV2)

Two separate sensor devices, one per PV string, reading DC current in amps (registers H:32017 and H:32019, Int16, divided by 100). Each device includes a service attribute for the corresponding string voltage (H:32016 and H:32018, divided by 10).

The RTU template includes 2 PV string devices (PV1-PV2) compared to 4 in the TCP variant. The register map supports up to 24 strings – additional PV string devices can be added manually if needed.

Inverter Status

A multi-value switch (read-only) showing the inverter’s current operating state from register H:32089:

ValueStateDescription
0Inverter StateInitial / unknown
1IdleDetecting ISO, irradiation, or grid
2StartingInverter starting up
3On GridNormal power generation
4ShutdownFault, command, OVGR, or DC switch off
5Grid Dispatchcos(Phi)-P or Q-U curve active
6IV ScanningPV string I-V curve scanning
7Spot-CheckGrid spot-check in progress
8InspectingInspection mode
9DC Input DetectionDetecting DC input

Service attributes provide detailed state information: Full State (expanded status with sub-states), Grid Connection status, Teleindication (IEC104 telesignaling), Locking Status, PV Connection Status, and Startup/Shutdown timestamps.

Alarm monitoring

The module-level read script monitors alarm registers H:32008 and H:32009 (Bitfield16). Each bit maps to a specific fault or warning:

RegisterBitAlarm
H:320080High String Voltage
H:320081DC Arc Fault
H:320082String Reversed
H:320083Abnormal String (warning)
H:320087Power Grid Failure
H:320088-9Grid Under/Overvoltage
H:3200811-13Grid Frequency Faults
H:3200814-15Output Overcurrent / DC Component
H:320090Abnormal Leakage Current
H:320091-2Ground / Insulation Faults
H:320093-4High Temperature / Equipment Fault
H:320099Abnormal Energy Storage Device
H:3200910-11Active/Passive Islanding
Module-level diagnostics

The module exposes service attributes for device identification and diagnostics:

AttributeRegisterDescription
Model NameH:30000Inverter nameplate model
SNH:30015Serial number
PNH:30025Product code
Model IDH:30070Numeric model identifier
Number of StringsH:30071Connected PV strings
MPPT NumberH:30072MPP tracker count
Time ZoneH:43006UTC offset
Inverter EfficiencyH:32086Conversion efficiency (%)
Cabinet TemperatureH:32087Internal temperature
Insulation ResistanceH:32088PV array insulation
DSP Data CollectionH:32002Data collection status

A Time Zone service action allows setting the inverter’s UTC offset (writes to H:43006).

Additional capabilities

The SUN2000 inverter exposes additional registers not yet implemented in the template. These include firmware version, fault code register, a faster-updating active power reading, total DC input energy counter, monthly and yearly energy counters, battery charge/discharge power, unsigned grid exported energy, grid accumulated energy, and remote power on/shutdown commands. These can be added in a future template update.

Differences from the TCP variant

The RTU template includes two devices not present in the TCP variant: the Grid Power Meter (Smart Power Sensor readings) and Battery with SOC readout. However, the RTU template only includes 2 PV string devices (PV1-PV2) compared to 4 in the TCP variant. The register map is identical – only the transport layer differs (RS-485 serial vs TCP/IP via Smart Dongle).

Troubleshooting

No Modbus communication
  1. Verify the RS-485 cable is connected to the correct COM port pins: Pin 1 (485A1-1) = A+, Pin 3 (485B1-1) = B-
  2. Ensure the WLAN Smart Dongle is disconnected from the inverter
  3. Check that the baud rate is set to 9600 and parity to None (8N1) in TapHome
  4. Confirm the correct Slave ID (default: 1)
  5. Verify the signal cable connector is fully inserted and locked into the COM port
Intermittent communication failures

The most common cause is the WLAN Smart Dongle interfering with the RS-485 bus. The dongle’s internal communication with Huawei cloud servers causes CRC errors on the serial bus. Remove the dongle for stable RTU operation.

PV string values read zero

Unused PV string inputs will always read 0 A / 0 V. This is normal if the inverter model has fewer MPPT inputs than the template provides (e.g., a 3KTL model may only use PV1 and PV2).

Battery device shows “Offline”

The LUNA2000 battery registers are only populated when a compatible battery is physically connected to the inverter. Without a battery, Running Status will read “Offline” and SOC will be zero.

Inverter status stuck on “Idle”

During nighttime or low-irradiation conditions, the inverter enters idle mode. This is normal – it will transition to “On Grid” once sufficient solar irradiation is detected. The inverter may also have reduced data availability during standby.

Grid Power Meter reads zero

The Grid Power Meter device requires a Huawei Smart Power Sensor (DTSU666-H) connected via RS-485 Bus 2 (pins 7 and 9). If no meter is installed, the values will read zero and the meter status will show “Offline”.

Available devices

SUN2000 Module
Service Attributes
Model Name
SN
PN
Model ID
Number of Strings
MPPT Number
Time ZoneInverter UTC offset — reads and displays the configured time zone
Inverter EfficiencyDC-to-AC conversion efficiency as percentage
Cabinet TemperatureInternal inverter enclosure temperature
Insulation ResistancePV array insulation resistance in megaohms — monitors isolation safety
DSP Data CollectionData collection status — Yes (active) or No (inactive)
Service Actions
Time ZoneSet the inverter UTC offset — select from UTC-12:00 through UTC+14:00

SUN2000

Read (module)
var a1 := MODBUSR(H, 32008, Uint16);
var a2 := MODBUSR(H, 32009, Uint16);
IF(GETBIT(a1,0) = 1, ADDERROR("High String Voltage", 2001));
IF(GETBIT(a1,1) = 1, ADDERROR("DC Arc Fault", 2002));
IF(GETBIT(a1,2) = 1, ADDERROR("String Reversed", 2011));
IF(GETBIT(a1,3) = 1, ADDWARNING("PV String Backfeed ", 2012));
IF(GETBIT(a1,4) = 1, ADDWARNING("Abnormal String", 2013));
IF(GETBIT(a1,5) = 1, ADDERROR("AFCI Self-test Fault", 2021));
IF(GETBIT(a1,6)= 1, ADDERROR("Short circuit between phase to PE ", 2021));
IF(GETBIT(a1,7) = 1, ADDERROR("Power Grid Failure ", 2032));
IF(GETBIT(a1,8) = 1, ADDERROR("Grid Undervoltage ", 2033));
IF(GETBIT(a1,9) = 1, ADDERROR("Grid Overvoltage", 2034));
IF(GETBIT(a1,10) = 1, ADDERROR("Unbalanced Grid Voltage", 2035));
IF(GETBIT(a1,11) = 1, ADDERROR("Grid Overfrequency", 2036));
IF(GETBIT(a1,12) = 1, ADDERROR("Grid Underfrequency", 2037));
IF(GETBIT(a1,13) = 1, ADDERROR("Grid Frequency Instability", 2038));
IF(GETBIT(a1,14) = 1, ADDERROR("Output Overcurrent ", 2039));
IF(GETBIT(a1,15) = 1, ADDERROR("Large DC of Output current ", 2040));
IF(GETBIT(a2,0) = 1, ADDERROR("Abnormal Leakage Current ", 2051));
IF(GETBIT(a2,1) = 1, ADDERROR("Abnormal Ground.", 2061));
IF(GETBIT(a2,2) = 1, ADDERROR("Low Insulation Res. ", 2062));
IF(GETBIT(a2,3) = 1, ADDERROR("High Temperature", 2063));
IF(GETBIT(a2,4) = 1, ADDERROR("Abnormal Equipment", 2064));
IF(GETBIT(a2,5) = 1, ADDERROR("Upgrade Failed", 2065));
IF(GETBIT(a2,6) = 1, ADDWARNING("License Expired", 2066));
IF(GETBIT(a2,7) = 1, ADDERROR("Abnormal Monitor Unit", 61440));
IF(GETBIT(a2,8) = 1, ADDERROR("Power collector fault ", 2067));
IF(GETBIT(a2,9) = 1, ADDERROR("Abnormal energy storage device", 2068));
IF(GETBIT(a2,10) = 1, ADDERROR("Active islanding", 2070));
IF(GETBIT(a2,11) = 1, ADDERROR("Passive islanding", 2071));
IF(GETBIT(a2,12) = 1, ADDERROR("Transient AC overvoltage", 2072));
IF(GETBIT(a2,15) = 1, ADDERROR("Abnormal PV module configuration", 2080));
Service Attributes
Model Name
MODBUSR(H, 30000, String, 15)
SN
MODBUSR(H, 30015, String, 10)
PN
MODBUSR(H, 30025, String, 10)
Model ID
MODBUSR(H, 30070, Uint16)
Number of Strings
MODBUSR(H, 30071, Uint16)
MPPT Number
MODBUSR(H, 30072, Uint16)
Time Zone
IF(MODBUSR(H, 43006, Int16) = 0, "UTC±00:00");
var time := MODBUSR(H, 43006, Int16)/0.6;
var zone := IF(MOD(time,100) = 0, time/100 + ":00", ROUND(time/100) + ":" + MOD(time,100));
RETURN (IF(time > 0, "UTC+" + zone, "UTC-" + zone ));
Inverter Efficiency
 MODBUSR(H, 32086, Uint16)/100 + "%"
Cabinet Temperature
MODBUSR(H, 32087, Int16) / 10 + " ℃ "
Insulation Resistance
MODBUSR(H, 32088, Uint16)/1000 + "MΩ "
DSP data collection
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Yes", "No")
Service Actions
Time Zone
Parameters: Time Zone
MODBUSWNE(H, 43006, Int16, timz*60)
Active Power Electricity Meter

Electricity meter with active power (kW), reactive power, power factor, and power control actions for derating and compensation

Register: H:32080 Int32 Unit: kW numeric
Service Attributes
Active Power Peak of This Day
Reactive Power
Rated Power
Reactive Power Compensation (PF)
Reactive Power Compensation (Q/S)
Active Power Derating Percent (0.1%)
Active Power Derating (Fixed Value W)
Maximum Active Power
Maximum Apparent Power
Maximum Reactive Power (Fed to Grid)
Maximum Reactive Power (Absorbed from Grid)
Service Actions
Reactive Power Compensation (PF)Set power factor from -1.0 to 1.0 for reactive power compensation
Reactive Power Compensation (Q/S)Set reactive power ratio from -1.0 to 1.0
Active Power Derating Percent (%)Limit inverter output power as percentage 0-100%

Active Power

Read demand
MODBUSR(H, 32080, Int32,2)/1000;
Service Attributes
Active Power peak of this day
MODBUSR(H, 32078, Int32, 2) + " kW"
Reactive Power
MODBUSR(H, 32082, Int32, 2)/1000 + " kVar"
Rated Power
MODBUSR(H, 30073, Uint32, 2)/1000 + " kW"
Reactive Power Compensation (PF)
MODBUSR(H, 40122, Int16)/1000
Reactive Power Compensation (Q/S)
MODBUSR(H, 40123, Int16)/1000
Active Power Derating percent (0.1%)
MODBUSR(H, 40122, Int16)/10 + "%"
Active Power Derating (fixed value W)
MODBUSR(H, 40126, Uint32, 2) + " W"
Maximum Active Power
MODBUSR(H, 30075, Uint32, 2)/1000 + " kW"
Maximum Apparent Power
MODBUSR(H, 30077, Uint32, 2)/1000 + " kVA"
Maximum reactive power (fed to grid)
MODBUSR(H, 30079, Uint32, 2)/1000 + " kVar"
Maximum reactive power (absorbed from grid)
MODBUSR(H, 30081, Uint32, 2)/1000 + " kVar"
Service Actions
Reactive Power Compensation (PF)
Parameters: Reactive power compensation
MODBUSWNE(H, 40122, Int16, pf*1000);
Reactive Power Compensation (Q/S)
Parameters: Reactive power compensation (-1, 1] (-1–1 rpc)
MODBUSW(H, 40123, Int16, rpc*1000);
Active Power Derating Percent(%)
Parameters: Active Power Derating Percent(%) (0–100 apdp)
MODBUSW(H, 40125, Uint16, apdp*10)
Battery Dimmer Read-only

Battery state of charge (SOC) as percentage — shows available energy in LUNA2000 storage

Register: H:37760 UInt16 Unit: % numeric
Service Attributes
StatusBattery running status — Offline, Standby, Running, Fault, or Sleep Mode

Battery

Read level
MODBUSR(H, 37760, Uint16) / 1000
Service Attributes
Status
SWITCH(MODBUSR(H, 37762, Uint16), 0, "offline", 1, "standby", 2, "running", 3, "fault", 4, "sleep mode", "error");
Grid Power Meter Electricity Meter Read-only

Active grid power (kW) and exported energy (kWh) from Smart Power Sensor — positive is export, negative is import

Register: H:37113 Int32 Unit: kW numeric
Service Attributes
StatusPower meter status — Normal or Offline
TypePower meter type — 3-phase or 1-phase

Grid Power Meter

Read total consumption
MODBUSR(H, 37119, Int32) / 100
Read demand
MODBUSR(H, 37113, Int32) / 1000
Service Attributes
Status
IF(MODBUSR(H, 37100, Uint16) = 1, "Normal", "Offline");
Type
IF(MODBUSR(H, 37125, Uint16) = 1, "3 phase", "1 phase");
Daily Energy Variable Read-only

Energy generated today in kWh — resets at midnight

Register: H:32114 Int32 Unit: kWh numeric

Daily Energy

Read
MODBUSR(H, 32114, Int32, 2)/100
Total Energy Variable Read-only

Cumulative total energy generated since commissioning

Register: H:32106 Int32 Unit: kWh numeric

Total Energy

Read
MODBUSR(H, 32106, Int32, 2)/100
DC Input Power Electricity Meter Read-only

Total DC power from all PV strings combined (kW) with grid-side measurements — phase voltages, currents, line-to-line voltages, and frequency

Register: H:32064 Int32 Unit: kW numeric
Service Attributes
A Voltage
B Voltage
C Voltage
A Current
B Current
C Current
AB Voltage
BC Voltage
CA Voltage
Frequency

DC Input Power

Read demand
MODBUSR(H, 32064, Int32, 2)/1000
Service Attributes
A Voltage
MODBUSR(H, 32069, Int16)/10 + " V"
B Voltage
MODBUSR(H, 32070, Int16)/10 + " V"
C Voltage
MODBUSR(H, 32071, Int16)/10 + " V"
A Current
MODBUSR(H, 32072, Int32, 2)/1000 + " A"
B Current
MODBUSR(H, 32074, Int32, 2)/1000 + " A"
C Current
MODBUSR(H, 32076, Int32, 2)/1000 + " A"
AB Voltage
MODBUSR(H, 32066, Int16)/10 + " V"
BC Voltage
MODBUSR(H, 32067, Int16)/10 + " V"
CA Voltage
MODBUSR(H, 32068, Int16)/10 + " V"
Frequency
MODBUSR(H, 32085, Uint16)/100 + " Hz"
Inverter Status Multi-value Switch Read-only

Inverter operating state — Idle, Starting, On-Grid, Shutdown, Grid Dispatch, IV Scanning, Spot-Check, Inspecting, DC Input Detection

Register: H:32089 UInt16 numeric
Values / States: Initializing · Idle · Starting · On-Grid · Shutdown · Grid Dispatch · IV scanning · Spot-Check · Inspecting · DC input detection

Inverter Status

Read switch state
var reg := MODBUSR(H, 32089, Uint16);
IF(reg = 0, 0,
IF(reg < 4 OR reg = 40960,1,
IF(reg = 256, 2, 
IF(reg < 515, 3, 
IF(reg < 775, 4,
IF(reg = 1025 OR reg = 1026, 5, 
IF(reg = 1280 OR reg = 1281, 7,
IF(reg = 1536, 8, 
IF(reg = 2048, 6,
IF(reg = 2304, 9
))))))))))
Service Attributes
Full State
var state := MODBUSR(H, 32089, Uint16);
SWITCH(state, 0, "Idle: Initializing",
 1,"Idle: Detecting ISO", 
 2,"Idle: Detecting irradiation", 
 3, "Idle: Grid Detecting", 
 256, "Starting", 
 512, "On-Grid", 
 513, "On-Grid: Power Limit", 
 514, "On-Grid: self-derating", 
 768, "Shutdown: Fault", 
 769, "Shutdown: Command", 
 770, "Shutdown: OVGR", 
 771,"Shutdown: Communication disconnected", 
 772, "Shutdown: Power Limit", 
 773, "Shutdown: Start manually", 
 774, "Shutdown: DC Switch OFF",
 1025, "Grid dispatch:cos(Phi)-P curve",
 1026, "Grid dispatch:Q-U curve",
40960, "Idle: No irradiation",
1280, "Spot-check",
1281, "Spot-checking",
1536, "Inspecting",
1792, "SFCI self-check",
2048, "IV scanning",
2304, "DC input detection",
"Unknown"
 );
Grid Connection
var reg := MODBUSR(H, 32000,Uint16);
IF(GETBIT(reg,0) = 1, "Standby",
IF(GETBIT(reg,2) = 1 , "Normal Grid Connection",
IF(GETBIT(reg,3) = 1, "Grid connection with derating due to power rationing",
IF(GETBIT(reg,4) = 1, "Grid connection with derating due to inverter internal causes", "Not Connected"
)
)
)
)
Teleindication
var reg := MODBUSR(H, 32000,Uint16);
IF(GETBIT(reg,0) = 1, "Standby",
IF(GETBIT(reg,5) = 1 , "Normal Stop",
IF(GETBIT(reg,6) = 1, "Stop due to faults",
IF(GETBIT(reg,7) = 1, "Stop due to power rationing",
IF(GETBIT(reg,8) = 1, "Shutdown",
IF(GETBIT(reg,9) = 1, "Spot check",
IF(GETBIT(reg,1) = 1, "Grid Connected",
"Unknown State")
)
)
)
)
)
)
Locking Status
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Unlocked", "Locked");
PV Connection Status
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Connected", "Disconnected");
Startup time
var reg := MODBUSR(H, 32091, Uint32, 2);
var min := FLOOR(MOD(reg, 3600)/60);
var ho := FLOOR(MOD(reg,86400)/3600);
var minutes := IF(min<10, "0" + min, min);
var hours := IF(ho<10, "0" + ho, ho);
hours + ":" + minutes;
Shutdown time
var reg := MODBUSR(H, 32093, Uint32, 2);
var min := FLOOR(MOD(reg, 3600)/60);
var ho := FLOOR(MOD(reg,86400)/3600);
var minutes := IF(min<10, "0" + min, min);
var hours := IF(ho<10, "0" + ho, ho);
hours + ":" + FLOOR(minutes);
PV1 Current Variable Read-only
Register: H:32017 Int16 Unit: A numeric
Service Attributes
PV1 Voltage

PV1 Current

Read
MODBUSR(H, 32017, Int16)/100
Service Attributes
PV1 Voltage
MODBUSR(H, 32016, Int16)/10 + "V"
PV2 Current Variable Read-only
Register: H:32019 Int16 Unit: A numeric
Service Attributes
PV2 Voltage

PV2 Current

Read
MODBUSR(H, 32019, Int16)/100
Service Attributes
PV2 Voltage
MODBUSR(H, 32018, Int16)/10
Connection: Modbus RTU • 9600 baud• 8N1 • Slave ID: $[SlaveId]
Possible improvements (12)
  • H:30035 Firmware Version — STR, 15 regs, read-only — useful for diagnostics
  • H:32010 Alarm 3 — Bitfield16, additional alarm bits not decoded in template readscript
  • H:32090 Fault Code — U16, specific fault code when device is in fault state
  • H:32095 Active Power (fast) — I32, kW, /1000, faster-updating active power reading
  • H:32108 Total DC Input Energy — U32, kWh, /100, cumulative DC energy input
  • H:32116 Monthly Energy — U32, kWh, /100, electricity generated this month
  • H:32118 Yearly Energy — U32, kWh, /100, electricity generated this year
  • H:37765 Battery Charge/Discharge Power — I32, W, positive=charging negative=discharging — would complement existing Battery SOC device
  • H:37121 Grid Exported Energy (unsigned) — U32, kWh, /100, unsigned variant of grid exported energy — complements the signed I32 already in template at H:37119
  • H:37123 Grid Accumulated Energy — U32, kWh, /100, total energy consumed from grid
  • H:40200 Power On — WO, E16, remote inverter power-on command
  • H:40201 Shutdown — WO, E16, remote inverter shutdown command

Sources