
SunSpec Model 121 — Basic Settings
SunSpec Model 121 is the Inverter Controls Basic Settings model, part of the open SunSpec Alliance standard for distributed energy resource inverters. The template communicates over Modbus TCP and provides read/write access to the core operating limits that govern how a compliant inverter behaves on the grid: maximum active power (WMax), voltage reference and offset (VRef, VRefOfs), voltage window (VMin, VMax), apparent power ceiling (VAMax), per-quadrant reactive power and power factor limits, active power ramp rate (WGra), nominal grid frequency (ECPNomHz), and phase assignment (ConnPh). Paired scale factor registers ensure correct engineering-unit conversion. Any SunSpec-certified inverter implementing Model 121 can be monitored and configured through a single template in your ModbusCloud portal.
- Protocol
- Modbus TCP
- Connection
- Ethernet, Modbus TCP
- Registers
- 32, read and write
- Brand
- SunSpec
- Last updated
Registers (32)
32 read, 20 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| id | Read | ||||
| l | Read | ||||
| wmax | W | Read and write | |||
| vref | V | Read and write | |||
| vrefofs | V | Read and write | |||
| vmax | V | Read and write | |||
| vmin | V | Read and write | |||
| vamax | VA | Read and write | |||
| varmaxq1 | var | Read and write | |||
| varmaxq2 | var | Read and write | |||
| varmaxq3 | var | Read and write | |||
| varmaxq4 | var | Read and write | |||
| wgra | % WMax/sec | Read and write | |||
| pfminq1 | cos() | Read and write | |||
| pfminq2 | cos() | Read and write | |||
| pfminq3 | cos() | Read and write | |||
| pfminq4 | cos() | Read and write | |||
| varact | Read and write | ||||
| clctotva | Read and write | ||||
| maxrmprte | % WGra | Read and write | |||
| ecpnomhz | Hz | Read and write | |||
| connph | Read and write | ||||
| wmax_sf | Read | ||||
| vref_sf | Read | ||||
| vrefofs_sf | Read | ||||
| vminmax_sf | Read | ||||
| vamax_sf | Read | ||||
| varmax_sf | Read | ||||
| wgra_sf | Read | ||||
| pfmin_sf | Read | ||||
| maxrmprte_sf | Read | ||||
| ecpnomhz_sf | Read |
Loading registers…
Send your device list
If a device is not in the library yet, we build the template for free as soon as we have the register data.
Use cases
- Verify WMax and VAMax setpoints on newly commissioned SunSpec inverters match the grid-connection permit.
- Monitor VRef and VMin/VMax settings across multiple sites to confirm voltage regulation parameters are consistent.
- Track WGra ramp rate values to detect unauthorised configuration changes that could cause grid frequency disturbances.
- Alert when ECPNomHz deviates from the nominal 50 Hz to identify inverters operating on incorrect country profiles.
- Audit per-quadrant reactive power limits (VArMaxQ1 to Q4) before enabling advanced Volt-VAr control schemes.
Installation
Enable Modbus TCP on the inverter through its web interface or commissioning tool, typically found under the communication or Modbus section, and note the assigned IP address and TCP port (default 502).
Connect the inverter to the same Ethernet network as the ModbusCloud Gateway and confirm the Gateway can reach the inverter's IP address on the configured port.
In the ModbusCloud portal, add a new device, select the ModbusCloud Gateway, import the SunSpec Model 121 template, and set the unit ID to match the inverter's configured Modbus slave ID.
Read back the id register (address 0) and confirm it returns 121, then spot-check WMax against the inverter's nameplate to verify the connection and scaling are correct.
Things to watch for
Why do WMax or VRef values look wrong after reading?
All data registers in Model 121 use paired scale factor registers (for example wmax_sf at address 22). The raw register value must be multiplied by 10 raised to the power of the scale factor. If your client does not apply scale factors automatically, read the relevant _sf register and apply it before interpreting the value.
The gateway connects but no Model 121 registers are visible. What now?
SunSpec devices place Model 121 at a dynamic offset after the Common Model (Model 1) and any Nameplate Model (Model 120). The absolute Modbus address of register 0 in Model 121 varies per device. Scan from the SunSpec base address (typically 40000) using the model chaining protocol, or consult the device's PICS document for the exact start address.
Writing to VMin or VMax has no effect. Why?
Some SunSpec-certified inverters protect grid-parameter registers with a vendor-specific unlock mechanism (for example an SMA Grid Guard code). Confirm the device's PICS document to check whether Model 121 write registers require an unlock sequence before values are accepted, and that no other Modbus client holds an exclusive session.
Is it safe to write WMax or VAMax setpoints remotely without additional precautions?
Caution is required. Writing WMax, VAMax, VMin, VMax, or per-quadrant reactive power limits directly can override grid-compliance settings and may violate the grid-connection agreement or trip protection relays. Always verify the target value against the inverter's nameplate ratings and applicable grid codes before committing a write, and test in a controlled maintenance window.
Knowledge base articles for this device

SunSpec Modbus: one register map for many inverters
SunSpec Modbus is the open register map SMA, Fronius, SolarEdge and Kostal share. The layout, int+SF vs float, the TCP port per brand and reading a mixed fleet.
Fronius Modbus: read a Symo GEN24 over Modbus TCP
Fronius Modbus explained: enable Modbus TCP on the Symo GEN24 on port 502, choose between int+SF and float, read the right SunSpec registers and scale them correctly. Practical guide for solar installers.
SMA Modbus: reading a Sunny Boy over Modbus TCP (installers)
SMA Modbus explained: enable the Modbus TCP server on port 502, choose between the SMA profile (unit ID 3) and SunSpec (unit ID 126), read the right registers, and handle the NaN values at night. Practical guide for installers.
Want to see how it works?








