SunSpec Modbus: eine Registerkarte für viele Wechselrichter
SunSpec Modbus ist die offene Registerkarte, die SMA, Fronius, Kostal und SolarEdge teilen. Aufbau, int+SF versus float, Ports und gemischte Parks auslesen.

SunSpec Modbus ist eine offene Registerkarte, die viele Wechselrichtermarken teilen, sodass eine Ausleselogik einen SMA, einen Fronius und einen SolarEdge gleichermaßen liest. Statt pro Hersteller eine eigene Adressliste zu lernen, lernen Sie einen Aufbau: eine feste "SunS"-Marke, ein Common Model, das das Gerät benennt, und danach ein oder mehrere Modelle mit den Messwerten. Für Installateure mit einem gemischten Wechselrichterpark ist SunSpec Modbus genau das, was markenneutrales Monitoring praktikabel macht. Dieser Leitfaden erklärt, was SunSpec ist, wie die Registerkarte (register map) aufgebaut ist, den Unterschied zwischen int+SF und float, welche Marken auf welchem Port lauschen und wie Sie all das in ein Dashboard bringen.
Aktualisiert: August 2026.
Die wichtigsten Punkte
- SunSpec ist eine offene Registerkarte, die SMA, Fronius, Kostal, SolarEdge und andere über Modbus zeigen, erkennbar an der ASCII-Marke "SunS".
- Die meisten Marken lauschen auf Modbus TCP Port 502, doch SolarEdge nutzt 1502; ein Gateway mit Standard 502 scheitert dort still.
- Im int+SF-Profil ist jeder Wert eine Ganzzahl mit einem eigenen Skalierungsfaktor; vergessen Sie ihn, stimmt der Wert um den Faktor zehn nicht.
Kostenlos: RS485 und Modbus RTU Installations-Checkliste (PDF)
Die Checkliste fuer jeden RS485 Bus, bevor Sie die Anlage uebergeben. Ausdrucken und mitnehmen.
- Verdrahtungsreihenfolge: A/B Polaritaet, GND und Schirmung
- Terminierung und Biasing, inklusive Multimeter-Pruefungen
- Spickzettel Kommunikationseinstellungen (Baudrate, Paritaet, Stoppbits)
- Die 10 haeufigsten Fehler und wie Sie sie erkennen
Sie erhalten die Checkliste und gelegentlich einen praktischen Modbus Tipp. Kein Spam, jederzeit abbestellbar.
Was ist SunSpec über Modbus?
SunSpec über Modbus (SunSpec over Modbus) ist ein offenes Informationsmodell der SunSpec Alliance, das festlegt, wie ein Wechselrichter oder Zähler seine Daten in Modbus Holding Registern bereitstellt. Statt dass jeder Hersteller eine eigene Adressliste erfindet, zeigt ein SunSpec-Gerät eine vorhersehbare Kette von "Modellen": zuerst eine Marke und ein Common Model, dann gerätespezifische Modelle wie einen Wechselrichter oder einen Zähler. Ein Modbus-Client liest diese Kette mit Function Code 03 (Read Holding Registers) über Modbus TCP oder RS485 RTU.
Die Karte steht nicht auf einer beliebigen Adresse. Eine SunSpec-Gerätekarte beginnt auf einer von drei Basisadressen im Holding-Register-Raum, 0, 40000 (0x9C40) oder 50000 (0xC350), und die ersten beiden Register enthalten den ASCII-Text "SunS" (0x53756E53) als feste Marke, gemäß der SunSpec Device Information Model Specification. Ein Client bestätigt so, dass er mit einem SunSpec-Gerät spricht, bevor er die restliche Kette durchläuft.
Warum SunSpec für einen gemischten Wechselrichterpark zählt
Der Wert von SunSpec ist, dass es viele markenspezifische Integrationen zu einer zusammenfaltet. Ein Installateur, der ein Portfolio an Standorten überwacht, hat selten überall dieselbe Marke. Ohne gemeinsames Modell bedeutet jede Marke eine eigene Registerkarte, einen eigenen Parser und eigenen Wartungsaufwand. SunSpec macht daraus eine Ausleselogik, die über konforme Geräte hinweg funktioniert.
Diese gemeinsame Karte wird in Deutschland zusätzlich relevant durch §14a EnWG (steuerbare Verbrauchseinrichtungen) und die Netzintegration von PV und Speicher: lokale Echtzeitdaten sind die Grundlage für Steuerung, Einspeisemanagement und Direktvermarktung. SunSpec Modbus dient zudem als Kommunikationsprofil für die Zertifizierung nach IEEE 1547-2018 an der Netzschnittstelle. Die Pillar-Seite Photovoltaik-Monitoring per Modbus gibt den weiteren Kontext; dieser Artikel ist die Protokollschicht darunter.
Aufbau der SunSpec-Registerkarte
Die SunSpec-Karte ist eine Kette von Blöcken, keine flache Liste, und diese Kette hat auf jedem konformen Gerät dieselbe Form. Sie startet auf Register 40001 (logisch) mit der SunS-Marke, dann das Common Model (Model 1), dann ein oder mehrere Gerätemodelle, dann ein End Marker. Model 1 ist verpflichtend und enthält Hersteller, Modell, Seriennummer und Firmwareversion, gemäß der SunSpec Information Model Specification, sodass Sie jedes Gerät identifizieren können, bevor Sie einen Messwert lesen.
Jedes Modell in der Kette beginnt mit einem Header aus zwei Registern: einer Modell-ID und einer Länge. Die Gerätemodelle, die für Photovoltaik zählen, sind die Wechselrichtermodelle 101 (einphasig), 102 (split-phase) und 103 (dreiphasig), plus die Zählermodelle 201, 202 und 203. Da jedes Modell seine eigene Länge meldet, durchläuft ein korrekter Client die Kette, liest jeden Header und springt um die angegebene Länge vor, bis er den End Marker (Modell-ID 0xFFFF) erreicht. Deshalb verschieben sich exakte Adressen je Gerät: die Position eines Wechselrichtermodells hängt davon ab, welche Modelle davor stehen.
int+SF versus float: zwei Varianten derselben Karte
SunSpec liefert die Wechselrichtermesswerte in zwei Kodierungen, und die falsche zu wählen ist eine häufige Quelle für Unsinnswerte. Das int+SF-Profil nutzt die Modelle 101, 102 und 103: jeder Wert ist eine 16-Bit-Ganzzahl mit einem eigenen Skalierungsfaktor-Register. Das float-Profil nutzt die Modelle 111, 112 und 113: jeder Wert ist ein IEEE-754-32-Bit-Float über zwei Register, ohne Skalierungsfaktor.
Bei int+SF ist ein Skalierungsfaktor (sunssf) eine vorzeichenbehaftete 16-Bit-Ganzzahl, die als Zehnerpotenz-Exponent wirkt. Der echte Wert ist der Rohwert mal zehn hoch Skalierungsfaktor, wie in der SunSpec-Spezifikation und der SMA SunSpec Modbus Technical Information festgelegt. Liest die AC-Leistung 550 und der Skalierungsfaktor W_SF 1, ist der echte Wert 550 mal zehn hoch 1, also 5.500 W. Vergessen Sie die Multiplikation, melden Sie 550 W an einem 5,5-kW-String.
int+SF ist kompakt und breit unterstützt, daher die Standardwahl für einen gemischten Park. float ist in Software einfacher zu verarbeiten, weil kein Skalierungsfaktor anzuwenden ist, nutzt aber zwei Register pro Wert und wird von etwas weniger Clients unterstützt. Wählen Sie ein Profil und wenden Sie es über den ganzen Park konsistent an.
Die SunSpec-Register, die Sie wirklich lesen
Die Register unten sind das typische int+SF-Wechselrichtermodell (Model 103, dreiphasig). Behandeln Sie die Adressen als Standardaufbau nach dem Common Model und bestätigen Sie sie mit einem Testpoll oder der Hersteller-Registerkarte, denn der exakte Offset hängt von der Modellkette auf diesem Gerät ab. Lesen Sie sie mit Function Code 03.
| Adres | Naam | Type | Eenheid | R/RW | Beschrijving |
|---|---|---|---|---|---|
| 40072 | AC-Strom gesamt | uint16 | A | R | Gesamter AC-Strom, Skalierungsfaktor A_SF daneben |
| 40080 | AC-Spannung L-N | uint16 | V | R | Phasenspannung, Skalierungsfaktor V_SF daneben |
| 40083 | AC-Leistung | int16 | W | R | Aktive AC-Leistung gesamt, Skalierungsfaktor W_SF auf 40084 |
| 40085 | Netzfrequenz | uint16 | Hz | R | Netzfrequenz, Skalierungsfaktor Hz_SF daneben |
| 40093 | Gesamtenergie | acc32 | Wh | R | Lebensdauer-Ertrag (Wh), Skalierungsfaktor WH_SF daneben |
| 40107 | Betriebszustand | enum16 | enum | R | St: 1 aus, 2 Standby, 4 MPPT (produziert), 7 Fehler |
Für ein brauchbares Monitoring-Set genügen vier Werte: AC-Leistung für die Echtzeitausgabe, Gesamtenergie für den Ertrag, der Betriebszustand für die Fehlererkennung und die Netzfrequenz für den Netzqualitäts-Kontext. Brauchen Sie zusätzlich Einspeisung und Verbrauch, lesen Sie das SunSpec-Zählermodell (201 bis 203) des angeschlossenen Zählers, das derselben Registerlogik folgt.
Welche Marken sprechen SunSpec, und auf welchem Port
Die meisten Marken zeigen SunSpec über Modbus TCP auf Port 502, dem IANA-Standardport, doch sie sind sich nicht alle einig. Der häufigste Feldfehler ist, ein Gateway auf Port 502 zu richten für eine Marke, die anderswo lauscht. SolarEdge ist die klassische Ausnahme: es bedient SunSpec auf Port 1502, sodass ein fest auf 502 gesetzter Client keine Verbindung und keine erklärende Fehlermeldung bekommt.
Die Abdeckung variiert auch nach Modell und Firmware. SMA (Sunny Boy, Sunny Tripower) zeigt ein eigenes Profil neben SunSpec, Fronius GEN24 ist reines SunSpec in int+SF oder float, und Kostal Plenticore bietet SunSpec Modbus TCP. Für die markenspezifischen Aktivierungsschritte behandeln der SMA Modbus Leitfaden, der Fronius Modbus Leitfaden und der SolarEdge Modbus Leitfaden jedes Gerät im Detail.
Nicht implementierte Register erkennen
Ein SunSpec-Gerät lässt nicht unterstützte Werte nicht leer. Es gibt einen definierten Sentinel-Wert zurück, und einen Sentinel als echte Zahl zu lesen ist eine weitere Art, wie Grafiken falsch werden. Gemäß der SMA SunSpec Modbus Technical Information gibt ein nicht implementierter int16 den Wert 0x8000 zurück, ein uint16 gibt 0xFFFF, ein acc32 ohne Akkumulation gibt 0x00000000 und ein nicht implementierter Skalierungsfaktor gibt 0x8000.
Die praktische Regel: prüfen Sie jeden Wert zuerst gegen seinen Sentinel, behandeln Sie ihn bei Übereinstimmung als fehlend, und wenden Sie erst dann den Skalierungsfaktor an und speichern ihn. So verunreinigt ein teilweise gefülltes Gerät (üblich bei kleineren einphasigen Einheiten) Ihren Datensatz nicht.
Von SunSpec zu einem Dashboard
Für einen einzelnen Wechselrichter genügt ein Modbus-Client auf einem Laptop oder eine Home Assistant Modbus-Einbindung, und generische SunSpec-Integrationen sind unter Prosumern weit verbreitet. Die Registerlogik ist dieselbe wie oben: SunS-Marke finden, Modellkette durchlaufen, Skalierungsfaktoren anwenden, Sentinel-Werte filtern.
Für einen wachsenden Park über mehrere Standorte und Marken wird ein festes Gateway je Standort praktischer als ein Laptop. Ein ModbusCloud Gateway (siehe die Gateway-Seite) hängt am lokalen Netz, öffnet eine Modbus-TCP-Sitzung zu jedem Wechselrichter auf dem richtigen Port, durchläuft die SunSpec-Kette, wendet die Skalierungsfaktoren an und sendet die Werte verschlüsselt an ein Dashboard. Weil die Karte gemeinsam ist, konsolidiert ein gemischter Park aus SMA, Fronius, Kostal und SolarEdge in eine Übersicht statt in vier Herstellerportale.
Der geschäftliche Hebel ist der offene Standard selbst. Eine Registerlogik liest jeden SunSpec-konformen Wechselrichter, sodass das Aufnehmen einer neuen Marke eine Portänderung ist, keine neue Integration. Lokale Echtzeit-Produktionsdaten sind zudem die Basis für Batteriesteuerung, Direktvermarktung und Einspeisemanagement, alles Aufgaben, die Daten in einem Intervall brauchen, das Ihnen das Herstellerportal nicht liefert.
Häufig gestellte Fragen
Ist SunSpec dasselbe wie Modbus?
Nein. Modbus ist das Transportprotokoll, das Registerwerte über TCP oder RS485 bewegt. SunSpec ist ein offenes Datenmodell, das festlegt, welches Register was enthält, sodass viele Marken denselben Aufbau zeigen. SunSpec setzt auf Modbus auf; Sie lesen es weiterhin mit Function Code 03.
Welche Wechselrichter unterstützen SunSpec Modbus?
SMA, Fronius, Kostal und SolarEdge zeigen alle SunSpec über Modbus, und Huawei, SolaX und APsystems decken es je nach Modell und Firmware unterschiedlich ab. SMA und Fronius nutzen Port 502; SolarEdge nutzt 1502. Bestätigen Sie die SunSpec-Unterstützung stets im Datenblatt.
Wo beginnt eine SunSpec-Registerkarte?
Eine SunSpec-Karte beginnt auf Basisadresse 0, 40000 (0x9C40) oder 50000 (0xC350). Die ersten beiden Register enthalten die ASCII-Marke SunS (0x53756E53). Ein Client liest die Basis, prüft die Marke und durchläuft danach die Modellkette.
Was ist der Unterschied zwischen int+SF und float in SunSpec?
int+SF (Modelle 101, 102, 103) speichert jeden Wert als Ganzzahl mit einem eigenen Skalierungsfaktor-Register; der echte Wert ist die Rohzahl mal zehn hoch Skalierungsfaktor. float (Modelle 111, 112, 113) speichert einen 32-Bit-Float über zwei Register ohne Skalierungsfaktor. int+SF ist kompakt; float ist einfacher zu verarbeiten.
Wie erkenne ich, ob ein SunSpec-Register nicht implementiert ist?
SunSpec gibt einen Sentinel statt eines leeren Werts zurück. Ein nicht implementierter int16 liest 0x8000, ein uint16 liest 0xFFFF, ein acc32 liest 0x00000000 und ein Skalierungsfaktor liest 0x8000. Filtern Sie diese, bevor Sie einen Skalierungsfaktor anwenden, sonst protokollieren Sie einen stark falschen Wert.
Nutzt SunSpec Modbus TCP oder RS485?
Beides. SunSpec ist ein Registermodell, es funktioniert also über Modbus TCP (Ethernet oder WLAN) und über Modbus RTU (RS485), je nachdem, was der Wechselrichter bietet. Moderne String-Wechselrichter zeigen SunSpec meist über Modbus TCP; RS485 ist bei Zählern und älteren Einheiten üblich.
Kann ich mehrere Marken mit einem Gateway auslesen?
Ja, das ist der Sinn von SunSpec. Weil SMA, Fronius, Kostal und SolarEdge die Registerkarte teilen, liest ein Gateway mit einem SunSpec-Parser sie alle; nur der TCP-Port wechselt je Marke. Ein ModbusCloud Gateway konsolidiert so einen gemischten Park in ein Dashboard.
SunSpec Modbus ist die Schicht, die markenneutrales Solar-Monitoring realistisch macht. Lernen Sie die Karte einmal, die SunS-Marke, das Common Model, die Wechselrichtermodelle, die Skalierungsfaktoren, die Sentinel-Werte und den Port je Marke, und Sie lesen nahezu jeden String-Wechselrichter ohne Herstellerkonto. Das ModbusCloud Gateway macht aus dieser gemeinsamen Karte ein Dashboard, sodass ein gemischter Park aus SMA, Fronius, Kostal und SolarEdge eine Übersicht wird statt vier Portale.
Bereit loszulegen?
Bestellen Sie das ModbusCloud Gateway und ueberwachen Sie Ihre Anlagen in 5 Minuten.
Gateway ansehen