Fronius Datamanager SunSpec inverter (float) Modbus register map
Modbus map of a Fronius inverter read through the Fronius Datamanager over Modbus TCP or Modbus RTU. It holds the SunSpec common block, inverter model 111/112/113 (float setting), nameplate, basic settings, extended measurements, immediate controls, multiple MPPT and basic storage control models, plus the Fronius specific registers and site totals. Fronius meters on the same Datamanager use a separate map. The tables are the float setting; the integer with scale factor setting uses models 101 to 103 and different addresses.
- Protocol
- Modbus TCP and Modbus RTU (RS485, Datamanager 2.0 only)
- Defaults
- Modbus TCP port preset 502 (port 80 cannot be used). Modbus RTU is enabled at the factory on Datamanager 2.0, except on Symo Hybrid; baud rate and parity are selectable and the manual states no default. The inverter Modbus device ID equals the inverter number (inverter number 00 is device ID 100). Use a query timeout of at least 10 seconds (p. 62, 63, 72-75).
- 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
- 161
- Checked against
- Document 42,0410,2049, edition 031-14062024 (English US section). Checked against the copy of that vendor URL archived at web.archive.org on 2024-07-10; the live vendor URL returned HTTP 404 on 2026-10-24, so a newer edition could not be checked.
Address base. The manual gives register numbers (SunSpec start 40001, Fronius registers from 212) and states that the address in the Modbus request is one lower: register 40001 is read with address 40000 (0x9C40), and its worked example reads register 40005 with address 40004 (p. 66-67). This file lists the register numbers as printed. Register numbers of models after the common block depend on the model type setting and on which models the device has, so find the model by its ID and use offsets (p. 75). Model 124 exists only on inverters with a storage solution. For example 212 in the manual (Delete stored ratings of the current inverter) is address 211 on the wire.
Word order. The manual does not state the word order of 32-bit and 64-bit values or floats. Its string example returns the first character in the high byte of the first register. Check a known value (for example Common_SID, which should read 0x53756E53) against your master's word order setting.
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
| Manual | Wire | Register | Type | Regs | Unit | Scale | Access | Area |
|---|---|---|---|---|---|---|---|---|
| 212 | 211 | Delete stored ratings of the current inverterF_Delete_Data · Write 0xFFFF to delete the stored ratings of the inverter currently communicating. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 213 | 212 | Store ratings of all inverters persistentlyF_Store_Data · Write 0xFFFF to store the rating data of all inverters on the Datamanager. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 214 | 213 | Active inverter state codeF_Active_State_Code · Not supported for Fronius Hybrid inverters, so the reported status may differ at night. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 215 | 214 | Reset all event flags and active state codeF_Reset_All_Event_Flags · Write 0xFFFF to clear the event flags and the active state code. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 216 | 215 | SunSpec model type (float or integer with scale factors)F_ModelType · 1 = floating point (models 111 to 113 and 211 to 213), 2 = integer with scale factors (101 to 103 and 201 to 203). Write 1 or 2, then immediately write 6 to the same register to confirm; otherwise the change reverts after a few seconds. Changing it moves the addresses of all models after the common block. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 217 | 216 | Storage restrictions view mode (model 124)F_Storage_Restrictions_View_Mode · 0 = local restrictions (set through the Modbus interface, default), 1 = global restrictions. The table text is cut short after "Global restrictions are those". |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 500 | 499 | Site power, sum of all connected invertersF_Site_Power · Value is in W and needs no scale factor. |
uint32 | 2 | W | 1 | R | Holding (FC03) |
| 502 | 501 | Site energy for the current dayF_Site_Energy_Day · Value is in Wh and needs no scale factor. |
uint64 | 4 | Wh | 1 | R | Holding (FC03) |
| 506 | 505 | Site energy for the last yearF_Site_Energy_Year · Value is in Wh and needs no scale factor. |
uint64 | 4 | Wh | 1 | R | Holding (FC03) |
| 510 | 509 | Site total energyF_Site_Energy_Total · Value is in Wh and needs no scale factor. |
uint64 | 4 | Wh | 1 | R | Holding (FC03) |
| 40001 | 40000 | SunSpec identifier "SunS"Common_SID · Fixed value 0x53756E53 ("SunS"). |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40003 | 40002 | Common model identifierCommon_ID · Fixed value 1. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40004 | 40003 | Common model lengthCommon_L · Fixed value 65. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40005 | 40004 | ManufacturerCommon_Mn · Reads "Fronius". |
string | 16 | 1 | R | Holding (FC03) | |
| 40021 | 40020 | Device modelCommon_Md · Device model, for example IG+150V. |
string | 16 | 1 | R | Holding (FC03) | |
| 40037 | 40036 | Options (Datamanager firmware version)Common_Opt · Contains the firmware version of the Datamanager. |
string | 8 | 1 | R | Holding (FC03) | |
| 40045 | 40044 | Inverter software versionCommon_Vr |
string | 8 | 1 | R | Holding (FC03) | |
| 40053 | 40052 | Inverter serial numberCommon_SN · Not supported on all devices; depends on the inverter controller production date. |
string | 16 | 1 | R | Holding (FC03) | |
| 40069 | 40068 | Modbus device addressCommon_DA · Range 1 to 247. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40070 | 40069 | Inverter model identifier (111, 112 or 113)Inv_ID · 111 = single phase, 112 = split phase, 113 = three phase. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40071 | 40070 | Inverter model lengthInv_L · Fixed value 60. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40072 | 40071 | AC total currentInv_A |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 40074 | 40073 | AC phase A currentInv_AphA |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 40076 | 40075 | AC phase B currentInv_AphB |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 40078 | 40077 | AC phase C currentInv_AphC |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 40080 | 40079 | AC voltage phase A to BInv_PPVphAB |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40082 | 40081 | AC voltage phase B to CInv_PPVphBC |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40084 | 40083 | AC voltage phase C to AInv_PPVphCA |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40086 | 40085 | AC voltage phase A to neutralInv_PhVphA |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40088 | 40087 | AC voltage phase B to neutralInv_PhVphB |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40090 | 40089 | AC voltage phase C to neutralInv_PhVphC |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40092 | 40091 | AC powerInv_W |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 40094 | 40093 | AC frequencyInv_Hz |
float32 | 2 | Hz | 1 | R | Holding (FC03) |
| 40096 | 40095 | AC apparent powerInv_VA |
float32 | 2 | VA | 1 | R | Holding (FC03) |
| 40098 | 40097 | AC reactive powerInv_VAr |
float32 | 2 | VAr | 1 | R | Holding (FC03) |
| 40100 | 40099 | AC power factorInv_PF · The table gives the unit as %. |
float32 | 2 | % | 1 | R | Holding (FC03) |
| 40102 | 40101 | AC lifetime energy productionInv_WH · The table notes the value may be imprecise. |
float32 | 2 | Wh | 1 | R | Holding (FC03) |
| 40104 | 40103 | DC currentInv_DCA · Not supported if the inverter has multiple DC inputs; use the multiple MPPT model instead. |
float32 | 2 | A | 1 | R | Holding (FC03) |
| 40106 | 40105 | DC voltageInv_DCV · Not supported if the inverter has multiple DC inputs; use the multiple MPPT model instead. |
float32 | 2 | V | 1 | R | Holding (FC03) |
| 40108 | 40107 | DC power, total of all DC inputsInv_DCW · Total power of all DC inputs. |
float32 | 2 | W | 1 | R | Holding (FC03) |
| 40118 | 40117 | Operating stateInv_St · The manual lists SunSpec operating codes: 1 off, 2 sleeping (auto shutdown), 3 starting, 4 MPPT (working normally), 5 throttled (power reduction active), 6 shutting down, 7 fault, 8 standby. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40119 | 40118 | Vendor defined operating stateInv_StVnd · The manual lists Fronius operating codes: 1 to 8 as for St, then 9 no SolarNet communication, 10 no communication with inverter, 11 overcurrent on SolarNet plug, 12 bootloader (inverter being updated), 13 AFCI event. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40120 | 40119 | Event flags, bits 0 to 31Inv_Evt1 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40122 | 40121 | Event flags, bits 32 to 63Inv_Evt2 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40124 | 40123 | Vendor defined event flags, bits 0 to 31Inv_EvtVnd1 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40126 | 40125 | Vendor defined event flags, bits 32 to 63Inv_EvtVnd2 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40128 | 40127 | Vendor defined event flags, bits 64 to 95Inv_EvtVnd3 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40130 | 40129 | Vendor defined event flags, bits 96 to 127Inv_EvtVnd4 · Bit field; event lists are in the downloadable Fronius state codes and events files. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40132 | 40131 | Nameplate model identifierNameplate_ID · Fixed value 120. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40133 | 40132 | Nameplate model lengthNameplate_L · Fixed value 26. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40134 | 40133 | DER device typeNameplate_DERTyp · Value 4 means PV device. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40135 | 40134 | Rated continuous power outputNameplate_WRtg |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40136 | 40135 | Scale factor WRtg_SFNameplate_WRtg_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40137 | 40136 | Rated continuous apparent powerNameplate_VARtg |
uint16 | 1 | VA | 1 | R | Holding (FC03) |
| 40138 | 40137 | Scale factor VARtg_SFNameplate_VARtg_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40139 | 40138 | Rated reactive power, quadrant 1Nameplate_VArRtgQ1 · Quadrants 2 and 3 are not supported. |
int16 | 1 | var | 10 | R | Holding (FC03) |
| 40142 | 40141 | Rated reactive power, quadrant 4Nameplate_VArRtgQ4 · Quadrants 2 and 3 are not supported. |
int16 | 1 | var | 10 | R | Holding (FC03) |
| 40143 | 40142 | Scale factor VArRtg_SFNameplate_VArRtg_SF · Table gives constant 1; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40144 | 40143 | Rated maximum RMS AC currentNameplate_ARtg |
uint16 | 1 | A | 0.01 | R | Holding (FC03) |
| 40145 | 40144 | Scale factor ARtg_SFNameplate_ARtg_SF · Table gives constant -2; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40146 | 40145 | Minimum power factor, quadrant 1Nameplate_PFRtgQ1 · Unit cos(). Quadrants 2 and 3 are not supported. |
int16 | 1 | 0.001 | R | Holding (FC03) | |
| 40149 | 40148 | Minimum power factor, quadrant 4Nameplate_PFRtgQ4 · Unit cos(). Quadrants 2 and 3 are not supported. |
int16 | 1 | 0.001 | R | Holding (FC03) | |
| 40150 | 40149 | Scale factor PFRtg_SFNameplate_PFRtg_SF · Table gives constant -3; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40151 | 40150 | Nominal energy rating of storage deviceNameplate_WHRtg |
uint16 | 1 | Wh | 1 | R | Holding (FC03) |
| 40152 | 40151 | Scale factor WHRtg_SFNameplate_WHRtg_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40155 | 40154 | Maximum charge rate of storage deviceNameplate_MaxChaRte |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40156 | 40155 | Scale factor MaxChaRte_SFNameplate_MaxChaRte_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40157 | 40156 | Maximum discharge rate of storage deviceNameplate_MaxDisChaRte |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40158 | 40157 | Scale factor MaxDisChaRte_SFNameplate_MaxDisChaRte_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40160 | 40159 | Basic settings model identifierSettings_ID · Fixed value 121. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40161 | 40160 | Basic settings model lengthSettings_L · Fixed value 30. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40162 | 40161 | Maximum power output settingSettings_WMax · Defaults to the rated power WRtg. |
uint16 | 1 | W | 10 | RW | Holding (FC03) |
| 40163 | 40162 | Reference voltage at the point of common couplingSettings_VRef · Read-only in this table. |
uint16 | 1 | V | 1 | R | Holding (FC03) |
| 40164 | 40163 | Voltage offset from point of common coupling to inverterSettings_VRefOfs |
int16 | 1 | V | 1 | RW | Holding (FC03) |
| 40167 | 40166 | Maximum apparent power setpointSettings_VAMax · The table lists this as RW but gives only function code 0x03. |
uint16 | 1 | VA | 10 | R | Holding (FC03) |
| 40168 | 40167 | Maximum reactive power setting, quadrant 1Settings_VARMaxQ1 · Defaults to VArRtgQ1. |
int16 | 1 | var | 10 | R | Holding (FC03) |
| 40171 | 40170 | Maximum reactive power setting, quadrant 4Settings_VARMaxQ4 · Defaults to VArRtgQ4. |
int16 | 1 | var | 10 | R | Holding (FC03) |
| 40173 | 40172 | Minimum power factor setpoint, quadrant 1Settings_PFMinQ1 · Unit cos(). Defaults to PFRtgQ1. |
int16 | 1 | 0.001 | R | Holding (FC03) | |
| 40176 | 40175 | Minimum power factor setpoint, quadrant 4Settings_PFMinQ4 · Unit cos(). Defaults to PFRtgQ4. |
int16 | 1 | 0.001 | R | Holding (FC03) | |
| 40182 | 40181 | Scale factor WMax_SFSettings_WMax_SF · Table gives constant 1; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40183 | 40182 | Scale factor VRef_SFSettings_VRef_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40184 | 40183 | Scale factor VRefOfs_SFSettings_VRefOfs_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40186 | 40185 | Scale factor VAMax_SFSettings_VAMax_SF · Table gives constant 1; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40187 | 40186 | Scale factor VARMax_SFSettings_VARMax_SF · Table gives constant 1; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40189 | 40188 | Scale factor PFMin_SFSettings_PFMin_SF · Table gives constant -3; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40192 | 40191 | Extended measurements model identifierExtMeas_ID · Fixed value 122. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40193 | 40192 | Extended measurements model lengthExtMeas_L · Fixed value 44. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40194 | 40193 | PV inverter connection statusExtMeas_PVConn · Bit 0 connected, bit 1 available, bit 2 operating, bit 3 test. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 40195 | 40194 | Storage inverter connection statusExtMeas_StorConn · Bit 0 connected, bit 1 available, bit 2 operating, bit 3 test. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 40196 | 40195 | Grid connection statusExtMeas_ECPConn · 0 = disconnected, 1 = connected. |
bitfield16 | 1 | 1 | R | Holding (FC03) | |
| 40197 | 40196 | AC lifetime active energy outputExtMeas_ActWh · Unit Wh. |
uint64 | 4 | Wh | 1 | R | Holding (FC03) |
| 40227 | 40226 | Active inverter controlsExtMeas_StActCtl · Bit 0 FixedW (power reduction), bit 1 FixedVAR, bit 2 FixedPF. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40229 | 40228 | Time synchronization sourceExtMeas_TmSrc · Returns the string "RTC". |
string | 4 | 1 | R | Holding (FC03) | |
| 40233 | 40232 | Inverter clock, seconds since 2000-01-01 00:00 UTCExtMeas_Tms · Seconds since 2000-01-01 00:00 UTC. |
uint32 | 2 | s | 1 | R | Holding (FC03) |
| 40238 | 40237 | Immediate controls model identifierCtl_ID · Fixed value 123. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40239 | 40238 | Immediate controls model lengthCtl_L · Fixed value 24. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40240 | 40239 | Connect or disconnect time windowCtl_Conn_WinTms · Standby control timing; default 0. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40241 | 40240 | Connect or disconnect timeoutCtl_Conn_RvrtTms · Standby control timing; default 0. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40242 | 40241 | Connection control (standby or grid feed)Ctl_Conn · Write 0 to switch the inverter to standby (no grid feed), write 1 to reactivate. Needs "Inverter control via Modbus" enabled in the Datamanager Modbus settings. |
bitfield16 | 1 | 1 | RW | Holding (FC03) | |
| 40243 | 40242 | Power output limitCtl_WMaxLimPct · Power limit in percent of WMax. The manual says values below 10 may force standby depending on software version. Enter the value, then start the mode with WMaxLim_Ena; to change an active limit, rewrite the value and restart with WMaxLim_Ena. |
uint16 | 1 | % | 0.01 | RW | Holding (FC03) |
| 40244 | 40243 | Power limit time windowCtl_WMaxLimPct_WinTms · Range 0 to 300 s; default 0. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40245 | 40244 | Power limit timeoutCtl_WMaxLimPct_RvrtTms · Range 0 to 28800 s; 0 keeps the mode active until disabled. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40246 | 40245 | Power limit ramp timeCtl_WMaxLimPct_RmpTms · The table lists RW with only function code 0x03; the manual says writes to this register are ignored without an exception. Range 0 to 65534 s. |
uint16 | 1 | s | 1 | R | Holding (FC03) |
| 40247 | 40246 | Power limit enableCtl_WMaxLim_Ena · 0 = disabled, 1 = enabled. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 40248 | 40247 | Constant power factor setpointCtl_OutPFSet · Valid range 0.8 to 1.0 and -0.8 to -0.999. Sign convention in the manual: positive is under-excited, negative is over-excited. Enable with OutPFSet_Ena. |
int16 | 1 | 0.001 | RW | Holding (FC03) | |
| 40249 | 40248 | Power factor time windowCtl_OutPFSet_WinTms · Range 0 to 300 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40250 | 40249 | Power factor timeoutCtl_OutPFSet_RvrtTms · Range 0 to 28800 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40251 | 40250 | Power factor ramp timeCtl_OutPFSet_RmpTms · Range 0 to 65534 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40252 | 40251 | Constant power factor enableCtl_OutPFSet_Ena · 0 = disabled, 1 = enabled. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 40254 | 40253 | Constant reactive power setpointCtl_VArMaxPct · Reactive power as a percentage of VArMax. Enable with VArPct_Ena. |
int16 | 1 | % | 1 | RW | Holding (FC03) |
| 40256 | 40255 | Reactive power time windowCtl_VArPct_WinTms · Range 0 to 300 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40257 | 40256 | Reactive power timeoutCtl_VArPct_RvrtTms · Range 0 to 28800 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40258 | 40257 | Reactive power ramp timeCtl_VArPct_RmpTms · Range 0 to 65534 s. |
uint16 | 1 | s | 1 | RW | Holding (FC03) |
| 40259 | 40258 | Reactive power limit modeCtl_VArPct_Mod · Value 2 = VAR limit as a percentage of VArMax. Cannot be changed. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40260 | 40259 | Constant reactive power enableCtl_VArPct_Ena · 0 = disabled, 1 = enabled. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 40261 | 40260 | Scale factor WMaxLimPct_SFCtl_WMaxLimPct_SF · Table gives constant -2; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40262 | 40261 | Scale factor OutPFSet_SFCtl_OutPFSet_SF · Table gives constant -3; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40263 | 40262 | Scale factor VArPct_SFCtl_VArPct_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40264 | 40263 | Multiple MPPT model identifierMPPT_ID · Fixed value 160. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40265 | 40264 | Multiple MPPT model lengthMPPT_L · Fixed value 48. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40266 | 40265 | DC current scale factorMPPT_DCA_SF · Apply as 10 to the power of this value to the DC current registers. The table gives no constant. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40267 | 40266 | DC voltage scale factorMPPT_DCV_SF · Apply as 10 to the power of this value to the DC voltage registers. The table gives no constant. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40268 | 40267 | DC power scale factorMPPT_DCW_SF · Apply as 10 to the power of this value to the DC power registers. The table gives no constant. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40269 | 40268 | DC energy scale factorMPPT_DCWH_SF · Not supported for Fronius Hybrid inverters. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40270 | 40269 | Global eventsMPPT_Evt · Bit field. |
uint32 | 2 | 1 | R | Holding (FC03) | |
| 40272 | 40271 | Number of DC inputsMPPT_N · Table value 2. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40274 | 40273 | DC input 1 identifierMPPT_Input1_ID · Table value 1. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40275 | 40274 | DC input 1 labelMPPT_Input1_IDStr · Reads "String 1". |
string | 8 | 1 | R | Holding (FC03) | |
| 40283 | 40282 | DC input 1 currentMPPT_Input1_DCA · Multiply by 10 to the power of DCA_SF (40266). In hybrid systems input 1 is the PV input. |
uint16 | 1 | A | 1 | R | Holding (FC03) |
| 40284 | 40283 | DC input 1 voltageMPPT_Input1_DCV · Multiply by 10 to the power of DCV_SF (40267). |
uint16 | 1 | V | 1 | R | Holding (FC03) |
| 40285 | 40284 | DC input 1 powerMPPT_Input1_DCW · Multiply by 10 to the power of DCW_SF (40268). |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40286 | 40285 | DC input 1 lifetime energyMPPT_Input1_DCWH · Multiply by 10 to the power of DCWH_SF (40269). Not supported for Fronius Hybrid inverters. |
uint32 | 2 | Wh | 1 | R | Holding (FC03) |
| 40288 | 40287 | DC input 1 timestampMPPT_Input1_Tms · Seconds since 2000-01-01 00:00 UTC. |
uint32 | 2 | s | 1 | R | Holding (FC03) |
| 40291 | 40290 | DC input 1 operating stateMPPT_Input1_DCSt · Operating state of DC input 1. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40294 | 40293 | DC input 2 identifierMPPT_Input2_ID · Table value 2. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40295 | 40294 | DC input 2 labelMPPT_Input2_IDStr · Reads "String 2", or "Not supported" if there is only one DC input. |
string | 8 | 1 | R | Holding (FC03) | |
| 40303 | 40302 | DC input 2 currentMPPT_Input2_DCA · Multiply by 10 to the power of DCA_SF (40266). Not supported if only one DC input. In hybrid systems input 2 is the storage; only the absolute value is shown. |
uint16 | 1 | A | 1 | R | Holding (FC03) |
| 40304 | 40303 | DC input 2 voltageMPPT_Input2_DCV · Multiply by 10 to the power of DCV_SF (40267). Not supported if only one DC input. |
uint16 | 1 | V | 1 | R | Holding (FC03) |
| 40305 | 40304 | DC input 2 powerMPPT_Input2_DCW · Multiply by 10 to the power of DCW_SF (40268). Not supported if only one DC input. In hybrid systems only the absolute value of the storage power is shown. |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40306 | 40305 | DC input 2 lifetime energyMPPT_Input2_DCWH · Multiply by 10 to the power of DCWH_SF (40269). Not supported if only one DC input or on Fronius Hybrid inverters. |
uint32 | 2 | Wh | 1 | R | Holding (FC03) |
| 40308 | 40307 | DC input 2 timestampMPPT_Input2_Tms · Seconds since 2000-01-01 00:00 UTC. Not supported if only one DC input. |
uint32 | 2 | s | 1 | R | Holding (FC03) |
| 40311 | 40310 | DC input 2 operating stateMPPT_Input2_DCSt · Operating state of DC input 2. Not supported if only one DC input. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40314 | 40313 | Basic storage controls model identifierStor_ID · Fixed value 124. Model 124 is only available on inverters with a storage solution; without it the end block starts at 40314 (the manual gives 40313 as its start address with offsets from 1). |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40315 | 40314 | Basic storage controls model lengthStor_L · Fixed value 24. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40316 | 40315 | Reference value for maximum charge and discharge powerStor_WchaMax · Reference value for the InWRte and OutWRte percentages: max(MaxChaRte, MaxDisChaRte). Value 0 if there is no storage. |
uint16 | 1 | W | 1 | R | Holding (FC03) |
| 40317 | 40316 | Maximum charging rate setpointStor_WchaGra · The table range column gives 100. |
uint16 | 1 | %/s | 1 | R | Holding (FC03) |
| 40318 | 40317 | Maximum discharge rate setpointStor_WdisChaGra · The table range column gives 100. |
uint16 | 1 | %/s | 1 | R | Holding (FC03) |
| 40319 | 40318 | Storage control modeStor_StorCtl_Mod · Bit 0 activates the charge limit (InWRte), bit 1 activates the discharge limit (OutWRte); value 3 activates both. Needs "Inverter control via Modbus" enabled. |
bitfield16 | 1 | 1 | RW | Holding (FC03) | |
| 40321 | 40320 | Minimum reserve for storageStor_MinRsvPct · Minimum state of charge reserve; setting it can show as "Energy saving mode" in Fronius Solar.web. |
uint16 | 1 | % | 0.01 | RW | Holding (FC03) |
| 40322 | 40321 | Storage state of chargeStor_ChaState · Storage charge level in percent. Table unit is "% AhrRtg". |
uint16 | 1 | % | 0.01 | R | Holding (FC03) |
| 40325 | 40324 | Storage charge statusStor_ChaSt · 1 OFF, 2 EMPTY, 3 DISCHARGING, 4 CHARGING, 5 FULL, 6 HOLDING, 7 TESTING (used during calibration or service charge). |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40326 | 40325 | Discharge rate limitStor_OutWRte · Percent of WChaMax; valid range -100.00 to +100.00 percent (raw -10000 to 10000 at scale factor -2). The manual p. 92-94 gives worked power window examples; StorCtl_Mod = 2 activates this limit. |
int16 | 1 | % | 0.01 | RW | Holding (FC03) |
| 40327 | 40326 | Charge rate limitStor_InWRte · Percent of WChaMax; valid range -100.00 to +100.00 percent (raw -10000 to 10000 at scale factor -2). The manual p. 92-94 gives worked power window examples; StorCtl_Mod = 1 activates this limit. |
int16 | 1 | % | 0.01 | RW | Holding (FC03) |
| 40331 | 40330 | Charging from grid setpointStor_ChaGriSet · 0 = PV only (grid charging disabled), 1 = grid charging enabled. Combined with the "battery charging from DNO grid" setting in Fronius system monitoring. |
uint16 | 1 | 1 | RW | Holding (FC03) | |
| 40332 | 40331 | Scale factor WchaMax_SFStor_WchaMax_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40333 | 40332 | Scale factor WchaDisChaGra_SFStor_WchaDisChaGra_SF · Table gives constant 0; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40335 | 40334 | Scale factor MinRsvPct_SFStor_MinRsvPct_SF · Table gives constant -2; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40336 | 40335 | Scale factor ChaState_SFStor_ChaState_SF · Table gives constant -2; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40339 | 40338 | Scale factor InOutWRte_SFStor_InOutWRte_SF · Table gives constant -2; the manual says scale factors can change with firmware, so read it. |
int16 | 1 | 1 | R | Holding (FC03) | |
| 40340 | 40339 | End block identifierEnd_ID · Fixed value 0xFFFF. |
uint16 | 1 | 1 | R | Holding (FC03) | |
| 40341 | 40340 | End block lengthEnd_L · Fixed value 0. |
uint16 | 1 | 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
- Download the Modbus Poll blocks file.
- 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.
- 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.
- 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: Fronius Datamanager Modbus TCP & RTU, Operating Instructions (www.fronius.com)
Document 42,0410,2049, edition 031-14062024 (English US section). Checked against the copy of that vendor URL archived at web.archive.org on 2024-07-10; the live vendor URL returned HTTP 404 on 2026-10-24, so a newer edition could not be checked., p. 62-63, 66-67, 72-75, 77-83, 91-94 (English section, edition 031-14062024). The manual contains no register tables for these models; the rows come from the Fronius register map archive (Inverter float map xlsx, Complete Map sheet).. Read on 2026-10-24.
Also used: Fronius Modbus SunSpec Maps, State Codes and Events (register map archive, version 1.1.7-0) (www.fronius.com)
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.