verified connector library

Growatt inverter (Modbus RTU Protocol II)

Register map(s) for this device, each at the trust rung it earned. Addresses are 0-based as on the wire; word order and scaling are only confirmed at the hardware-verified rung.

interop-verified

Read + decoded cleanly over a real network vs an independent third-party Modbus test server (transport and framing; reads are remapped into the server's register window, so the map's own addresses are NOT exercised). Does NOT prove word order/scaling against the actual device.

pointaddress (0-based)typescaleunit
inverter_status0U161
ppv1U32BE0.1W
vpv13U160.1%
ipv14U160.1%
ppv15U32BE0.1
vpv27U160.1VA
ipv28U160.1V
ppv29U32BE0.1
pac35U32BE0.1W
fac37U160.01Hz
vac138U160.1V
iac139U160.1A
pac140U32BE0.1VA
vac242U160.1
iac243U160.1
pac244U32BE0.1
vac346U160.1
iac347U160.1
pac348U32BE0.1
eac_today53U32BE0.1V
eac_total55U32BE0.1Hz
time_total57U32BE0.5s
temp_inverter93I160.1°C
temp_ipm94I160.1°C
temp_boost95I160.1°C
p_bus_voltage98U160.1V
n_bus_voltage99U160.1V
vbat1013U160.1V
soc1014U161%
battery_temperature1040I160.1°C

link settings as documented (unverified): RTU; default 9600 8N1; unit ID 1; FC 03,04,06,16; Valid slave device addresses are in the range of 0 - 254 decimal. 0 is the broadcast address.

bench facts as documented (unverified)
wiring notesRS485 interface
max registers/read125
response timeout850 ms
inter-frame delay850 ms
broadcastsupported
protocol notesMinimum CMD period (RS485 Time out) is 850ms. Suggestion is 1s.
model registerHolding 28-29
serial registerHolding 23-27
firmware registerHolding 9-11
identification notesNew serial number registers are also available at Holding 209-223.
doc revisionV1.24
field reports — community-sourced, unverified (checked 2026-06-11)
  • Grid Export Power and Grid Import Power values were swapped in previous integration versions, requiring manual correction or disabling of auto-detected 'Invert Grid Power' settings. [source]
  • VPP battery charge/discharge daily values (registers 31202 and 31206) were swapped on SPH V2.01 profiles (sph_3000_6000_v201 and sph_7000_10000_v201). [source]
  • Reusing SPH/SPF Modbus assumptions on Growatt WIT series hybrid inverters causes broken AC charging control, missing VPP entities, and conflicts with external controllers due to different register behaviors (e.g., signed values on register 30409). [source]
  • On some Growatt SPH models, register 1044 is read-only, preventing users from writing to it to enforce priority settings. [source]
  • confirmed: Baud rates [9600, 38400] with default 9600, parity N, stop bits 1, and slave addresses 0-254 (0 as broadcast) — confirmed by Growatt Inverter Modbus RTU Protocol II V1.24 and community documentation
  • confirmed: Identification registers (Firmware at Holding 9-11, Model at Holding 28-29, Serial at Holding 23-27, and new serial registers at Holding 209-223) — confirmed by Growatt Inverter Modbus RTU Protocol II V1.24 and GitHub integrations
  • confirmed: Inter-frame delay and response timeout of 850ms (with 1s suggested) — confirmed by Growatt Inverter Modbus RTU Protocol II V1.24 and ESPHome community threads
  • confirmed: Register map addresses (inverter_status @ 0, ppv @ 1, vpv1 @ 3, ipv1 @ 4, ppv1 @ 5, vpv2 @ 7, ipv2 @ 8, ppv2 @ 9, pac @ 35, fac @ 37, vac1 @ 38, iac1 @ 39, pac1 @ 40, vac2 @ 42, iac2 @ 43, pac2 @ 44, vac3 @ 46, iac3 @ 47, pac3 @ 48, eac_today @ 53, eac_total @ 55, time_total @ 57, temp_inverter @ 93, temp_ipm @ 94, temp_boost @ 95, p_bus_voltage @ 98, n_bus_voltage @ 99, vbat @ 1013, soc @ 1014, battery_temperature @ 1040) — confirmed by Growatt Inverter Modbus RTU Protocol II V1.24 and evcc/ESPHome configurations

generated by gemini:gemini-3.5-flash · harvested from https://raw.githubusercontent.com/johanmeijer/grott/master/documentatie/Growatt-Inverter-Modbus-RTU-Protocol-II-V1-24-English-new.pdf (Growatt); manual-faithful — the document's claims, panel risk: LOW — panel concurs, no field disagreements; proved interop-verified on 2026-06-10 · recorded 2026-06-10

The trust ladder

Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.

Have a device that isn't here? Upload its register map — generation is free, and the connector earns its rung by being proven, not claimed.

Need it proven on your own device? Hardware verification — if it doesn't verify, you don't pay.

Building a platform? License the verified library — machine-readable maps, firmware matrix, API access.