
SunSpec Model 404 — String Combiner (Advanced)
SunSpec Model 404 is the Advanced String Combiner information model, published by the SunSpec Alliance for photovoltaic DC collection systems. The template reads the full combiner block over Modbus TCP: aggregate DC current, voltage, power, cumulative energy, amp-hours, DC performance ratio, and enclosure temperature, plus all per-string scale factor registers needed to decode individual input measurements. Event and vendor-event bitmask registers surface fault and warning states without requiring a separate alarm channel. Connecting any SunSpec Model 404 compliant combiner to the ModbusCloud Gateway gives installers and asset managers live and historical string-level production data in one portal.
- Protocol
- Modbus TCP
- Connection
- Ethernet, Modbus TCP
- Registers
- 23, read only
- Brand
- SunSpec
- Last updated
Registers (23)
23 read, 0 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| id | Read | ||||
| l | Read | ||||
| dca_sf | Read | ||||
| dcahr_sf | Read | ||||
| dcv_sf | Read | ||||
| dcw_sf | Read | ||||
| dcwh_sf | Read | ||||
| dcamax | A | Read | |||
| n | Read | ||||
| evt | Read | ||||
| evtvnd | Read | ||||
| dca | A | Read | |||
| dcahr | Ah | Read | |||
| dcv | V | Read | |||
| tmp | °C | Read | |||
| dcw | W | Read | |||
| dcpr | Pct | Read | |||
| dcwh | Wh | Read | |||
| indca_sf | Read | ||||
| indcahr_sf | Read | ||||
| indcv_sf | Read | ||||
| indcw_sf | Read | ||||
| indcwh_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
- Monitor total combiner DC power and cumulative energy daily to verify array production against expected yield.
- Track the DC performance ratio register to detect soiling, shading, or module degradation across seasons.
- Alert on non-zero values in the combiner event bitmask to catch fault conditions before they affect inverter output.
- Compare per-string scale factor decoded current readings to identify underperforming or disconnected strings.
- Report combiner enclosure temperature over time to verify thermal management and detect overheating trends.
Installation
Enable Modbus TCP on the string combiner or its communications gateway under the device web interface or communication settings menu, and note the assigned IP address and TCP port (default 502).
Connect the combiner's Ethernet port to the same LAN segment as the ModbusCloud Gateway, ensuring no firewall blocks TCP port 502 between the two devices.
In the ModbusCloud portal, add a new device, select the ModbusCloud Gateway as the transport, import the SunSpec Model 404 template, and set the Modbus unit ID to match the combiner slave address.
Trigger a manual poll in the portal and verify that registers dca, dcv, and dcw return plausible values during daylight; confirm scale factors dca_sf and dcw_sf are non-zero before trusting scaled readings.
Things to watch for
Why do dca, dcv, and dcw all read zero or 0x8000?
A raw value of 0x8000 (32768 for int16) is the SunSpec 'not implemented' sentinel. The combiner has not populated those points, often because no strings are connected or the device firmware requires a minimum number of configured inputs. Check that string inputs are active and the combiner is producing DC current.
Scaled current values look wildly wrong. What is happening?
SunSpec uses signed int16 scale factor registers (dca_sf, indca_sf, etc.) as powers of ten. A value of -2 means divide the raw integer by 100. If your Modbus master treats these as unsigned, the negative exponent becomes a large positive number and the scaled result is nonsense. Ensure your client reads scale factor registers as signed int16.
The gateway connects but register n always reads 0.
Register n reports the number of configured input strings. On many combiners this is set during commissioning via the device web interface or a DIP switch bank. If strings have not been configured in the combiner itself, n will remain 0 and per-string blocks will not be populated. Verify the combiner's input count setting matches your physical installation.
The gateway cannot reach the combiner on TCP port 502.
SunSpec Modbus TCP devices typically listen on port 502, but some combiners use a non-standard port or require Modbus TCP to be explicitly enabled in firmware. Check the combiner's communication settings, confirm the IP address is reachable with a ping, and verify the unit ID matches the configured Modbus slave address.
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?








