SMA Sunny Tripower 60 Modbus register map

The SMA Sunny Tripower 60 is a three-phase commercial PV inverter. Through the Inverter Manager gateway it exposes a SunSpec inverter model 103 map over Modbus TCP with AC and DC measurements, energy yield, temperatures and vendor status and event words.

Protocol
Modbus TCP
Defaults
Modbus TCP on port 502. The Inverter Manager answers at unit ID 125 and inverters at unit IDs 126 to 167 (older firmware below 1.45 used 1 and 2 to 43) (p. 12, 56).
Addresses in the manual
1-based register numbers (wire address is the number minus 1)
32 and 64-bit values
Not stated in the manual
Registers listed
49
Checked against
STP60_SHP75_STPS60-SunSpec_Modbus-TI-en-15, Version 1.5

Address base. Register numbers start at 40001 in the SunSpec profile; the manual says to subtract 1 to get the address to use in a request, so 40001 is read at address 40000 (p. 12). For example 40001 in the manual (SunSpec map identifier "SunS") is address 40000 on the wire.

Word order. The manual says data is sent big-endian, high byte first within each register (p. 13), but does not state the word order of 32-bit values.

Modbus Poll and the Modbus protocol itself count from 0. The "Wire address" column is the number to type into Modbus Poll.

Downloads

The register table has every column on this page. The blocks file imports into Modbus Poll. The template JSON holds the same blocks plus unit, scale and access for scripts.

Registers

49 registers
Manual Wire Register Type Regs Unit Scale Access Area
40001 40000 SunSpec map identifier "SunS"SunSpec_ID · Fixed value 0x53756E53, start of the SunSpec map. uint32 2 1 R Holding (FC03)
40003 40002 Common model identifierCommon_ID · Fixed value 1 for the SunSpec common model. uint16 1 1 R Holding (FC03)
40004 40003 Common block lengthCommon_Length · Block length in registers, 66. uint16 1 1 R Holding (FC03)
40005 40004 Manufacturer nameManufacturer · Reads "SMA". string 16 1 R Holding (FC03)
40021 40020 Device model stringModel string 16 1 R Holding (FC03)
40037 40036 Inverter nameOptions string 8 1 R Holding (FC03)
40045 40044 Installed firmware versionVersion string 8 1 R Holding (FC03)
40053 40052 Serial number of the addressed deviceSerialNumber string 16 1 R Holding (FC03)
40069 40068 Modbus unit ID of the deviceDeviceAddress · Unit IDs 126 to 167 map to STP 60 units 1 to 42. uint16 1 1 R Holding (FC03)
40186 40185 Inverter model identifierInverter_ID · 101, 102 or 103 as the connection model; the manual says 103 applies to this inverter. uint16 1 1 R Holding (FC03)
40187 40186 Inverter model lengthInverter_Length · Block length in registers, 50. uint16 1 1 R Holding (FC03)
40188 40187 AC total currentAC_Current · Scale factor register 40192 holds the fixed value -2 per the manual, so the scale is applied here. uint16 1 A 0.01 R Holding (FC03)
40189 40188 Line conductor L1 currentAC_Current_L1 · Scale factor register 40192 holds the fixed value -2 per the manual, so the scale is applied here. uint16 1 A 0.01 R Holding (FC03)
40190 40189 Line conductor L2 currentAC_Current_L2 · Scale factor register 40192 holds the fixed value -2 per the manual, so the scale is applied here. uint16 1 A 0.01 R Holding (FC03)
40191 40190 Line conductor L3 currentAC_Current_L3 · Scale factor register 40192 holds the fixed value -2 per the manual, so the scale is applied here. uint16 1 A 0.01 R Holding (FC03)
40192 40191 Current scale factorAC_Current_SF · Reads -2 per the manual. int16 1 1 R Holding (FC03)
40193 40192 Voltage L1 to L2AC_Voltage_L1L2 · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40194 40193 Voltage L2 to L3AC_Voltage_L2L3 · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40195 40194 Voltage L3 to L1AC_Voltage_L3L1 · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40196 40195 Voltage L1 to neutralAC_Voltage_L1N · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40197 40196 Voltage L2 to neutralAC_Voltage_L2N · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40198 40197 Voltage L3 to neutralAC_Voltage_L3N · Scale factor register 40199 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40199 40198 Voltage scale factorAC_Voltage_SF · Reads -1 per the manual. int16 1 1 R Holding (FC03)
40200 40199 Active powerAC_Power · Scale factor register 40201 holds the fixed value 1 per the manual, meaning the raw value is multiplied by 10. int16 1 W 10 R Holding (FC03)
40201 40200 Active power scale factorAC_Power_SF · Printed value is 1 (multiplier 10). int16 1 1 R Holding (FC03)
40202 40201 Grid frequencyAC_Frequency · Scale factor register 40203 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 Hz 0.1 R Holding (FC03)
40203 40202 Frequency scale factorAC_Frequency_SF · Reads -1 per the manual. int16 1 1 R Holding (FC03)
40204 40203 Apparent powerAC_VA · Scale factor register 40205 holds the fixed value 1 per the manual, meaning the raw value is multiplied by 10. int16 1 VA 10 R Holding (FC03)
40205 40204 Apparent power scale factorAC_VA_SF · Printed value is 1 (multiplier 10). int16 1 1 R Holding (FC03)
40206 40205 Reactive powerAC_VAr · Scale factor register 40207 holds the fixed value 1 per the manual, meaning the raw value is multiplied by 10. int16 1 var 10 R Holding (FC03)
40207 40206 Reactive power scale factorAC_VAr_SF · Printed value is 1 (multiplier 10). int16 1 1 R Holding (FC03)
40208 40207 Displacement power factorAC_PF · Scale factor register 40209 holds the fixed value -1 per the manual, so the scale is applied here. int16 1 0.1 R Holding (FC03)
40209 40208 Power factor scale factorAC_PF_SF · Reads -1 per the manual. int16 1 1 R Holding (FC03)
40210 40209 Total energy yieldAC_Energy_WH · Accumulator that only increases; scale factor register 40212 holds 0. uint32 2 Wh 1 R Holding (FC03)
40212 40211 Energy scale factorAC_Energy_SF · Reads 0 per the manual. int16 1 1 R Holding (FC03)
40213 40212 DC currentDC_Current · Scale factor register 40214 holds the fixed value -2 per the manual, so the scale is applied here. uint16 1 A 0.01 R Holding (FC03)
40214 40213 DC current scale factorDC_Current_SF · Reads -2 per the manual. int16 1 1 R Holding (FC03)
40215 40214 DC voltageDC_Voltage · Scale factor register 40216 holds the fixed value -1 per the manual, so the scale is applied here. uint16 1 V 0.1 R Holding (FC03)
40216 40215 DC voltage scale factorDC_Voltage_SF · Reads -1 per the manual. int16 1 1 R Holding (FC03)
40217 40216 DC powerDC_Power · Scale factor register 40218 holds the fixed value 1 per the manual, meaning the raw value is multiplied by 10. int16 1 W 10 R Holding (FC03)
40218 40217 DC power scale factorDC_Power_SF · Printed value is 1 (multiplier 10). int16 1 1 R Holding (FC03)
40219 40218 Internal temperatureTemp_Cabinet · Scale factor register 40223 holds 0. int16 1 °C 1 R Holding (FC03)
40220 40219 Heat sink temperatureTemp_Heatsink · Scale factor register 40223 holds 0. int16 1 °C 1 R Holding (FC03)
40223 40222 Temperature scale factorTemp_SF · Reads 0 per the manual. int16 1 1 R Holding (FC03)
40225 40224 Manufacturer-specific status codeStatus_Vendor · Decimal codes include 0 and 10 (boot stages), 30 to 54 (startup and waiting states), 60 (grid feed-in), 70 (fail-safe mode) and 80 (no feed-in for a few minutes). Details are in the manual and the installation manual. uint16 1 1 R Holding (FC03)
40230 40229 Grid-related event bitsEvent_Vendor1 · Bit field, SMA event group for AC utility grid messages. uint32 2 1 R Holding (FC03)
40232 40231 Reliability-related event bitsEvent_Vendor2 · Bit field, SMA event group for reliability messages. uint32 2 1 R Holding (FC03)
40234 40233 DC-side event bitsEvent_Vendor3 · Bit field, SMA event group for DC grid messages. uint32 2 1 R Holding (FC03)
40236 40235 Inverter hardware event bitsEvent_Vendor4 · Bit field, SMA event group for inverter messages. uint32 2 1 R Holding (FC03)

Scale is the number to multiply the raw value by to get the unit. Types with more than one register (32 and 64-bit) follow the word order above.

Open in Modbus Poll

  1. Download the Modbus Poll blocks file.
  2. Open Modbus Poll, connect to the device and set its unit ID. The manual does not state the word order for 32-bit values. Check one known value (a voltage or a counter) and switch the setting if it reads wrong.
  3. In the blocks panel on the right, click Import CSV and pick the file. CSV import is a Pro feature. Without Pro, Modbus Poll polls the first 20 values of your blocks.
  4. The wire addresses are already in the file, so there is no 0-based or 1-based conversion to do.

Once the values look right, export the tag list to Ignition, Kepware, Node-RED, Home Assistant or Voltrus SCADA.

Source and accuracy

Manufacturer document: Technical Information, Sunny Tripower 60 / Sunny Highpower PEAK1 / Sunny Tripower Storage 60 SunSpec Modbus Interface (files.sma.de)

STP60_SHP75_STPS60-SunSpec_Modbus-TI-en-15, Version 1.5, p. 12-13, 41-48. Read on 2026-10-24.

Addresses, types, units and scale are taken from the document above. Names and descriptions are written by Voltrus. Firmware versions can differ, so confirm a value on your own device before you rely on it.

Found a mistake? Report it by email with the register address and the manual page.

More from SMA

All SMA register maps

Other solar inverters

All register maps · Modbus addressing explained