SMA Modbus: Sunny Boy uitlezen via Modbus TCP 2026
SMA Modbus uitlezen: zet de Modbus TCP server aan op poort 502, kies tussen het SMA profiel (Unit ID 3) en SunSpec (Unit ID 126), lees de juiste registers en herken de NaN-waarden 's nachts. Praktische gids voor NL installateurs.

SMA Modbus uitlezen betekent dat je een SMA Sunny Boy omvormer lokaal over Modbus TCP uitleest in plaats van via het Sunny Portal van de fabrikant. Je opent een Modbus TCP verbinding naar de omvormer op poort 502, kiest een van de twee Modbus profielen die SMA aanbiedt en krijgt AC-vermogen, opgewekte energie, netspanning, temperatuur en de bedrijfstoestand rechtstreeks binnen. Voor een NL installateur is dat de basis voor eigen monitoring, alerts en energiemanagement, zonder afhankelijk te zijn van een fabrikant-account. Deze gids legt uit hoe je de Modbus TCP server inschakelt, wat het verschil is tussen het SMA profiel (Unit ID 3) en het SunSpec profiel (Unit ID 126), welke registers ertoe doen, en waarom je 's nachts vreemd grote getallen ziet.
Bijgewerkt: juli 2026.
Wat je in deze gids vindt
- Welke SMA omvormers Modbus spreken en over welke interface
- De Modbus TCP server aanzetten via de web-UI van de omvormer
- SMA profiel (Unit ID 3) versus SunSpec profiel (Unit ID 126): wanneer kies je wat
- De registers die je in de praktijk gebruikt, met datatypes en schaling
- Waarom je 's nachts 2.147.483.648 leest en hoe je die NaN-waarde afvangt
- Veelvoorkomende problemen en hun oorzaak
Wat is Modbus TCP op een SMA Sunny Boy?
Modbus TCP op een SMA Sunny Boy is een lokale Modbus-server die de omvormer over Ethernet of WiFi aanbiedt op poort 502, de IANA-standaardpoort voor Modbus TCP. De server is standaard uitgeschakeld en zit in elke Speedwire- of Webconnect-omvormer, dus in vrijwel elke Sunny Boy en Sunny Tripower die de laatste tien jaar is geplaatst. Je hebt geen extra hardware nodig om de productiedata binnen te halen, alleen een Modbus-client of gateway op hetzelfde subnet.
Het aantrekkelijke aan deze route is de onafhankelijkheid. Waar het Sunny Portal (en de nieuwere ennexOS-omgeving) een cloud-account, internet en de SMA-infrastructuur vereist, praat Modbus TCP direct op je eigen netwerk. Dat maakt lokale alerts, langere dataretentie en merkneutrale consolidatie mogelijk. Voor de protocolbasis is het handig om wat is Modbus erbij te houden; deze gids veronderstelt dat je weet wat een holding register is.
Wat je nodig hebt
Voordat je SMA Modbus kunt uitlezen, controleer je vier dingen. Zonder deze basis loop je bij de eerste pollpoging vast op een timeout of een leeg antwoord.
- Een SMA omvormer met Speedwire of Webconnect (elke moderne Sunny Boy en Sunny Tripower). Oudere modellen zonder netwerkinterface kunnen Modbus alleen via een aparte SMA-Modbus datamodule.
- Een netwerkverbinding naar de omvormer, via de ingebouwde Ethernet-poort of WiFi, op hetzelfde subnet als je Modbus-client.
- Het IP-adres van de omvormer, plus toegang tot de web-UI met het installateur-account (SMA vraagt de installateurscode voor parameterwijzigingen).
- Een Modbus-client of gateway die op poort 502 kan pollen, plus de registerkaart verderop in deze gids.
De Modbus TCP server aanzetten
Modbus TCP staat standaard uit. Je schakelt het in via de ingebouwde web-UI van de omvormer, bereikbaar op het IP-adres van de omvormer of via het interne WiFi access point. De procedure is kort en identiek voor Sunny Boy en Sunny Tripower.
- 1
Log in op de omvormer
Open de web-UI van de omvormer in een browser op hetzelfde netwerk, of verbind met het interne WiFi access point van de omvormer. Log in met het installateur-account, niet het gebruikersaccount, anders zijn de communicatie-parameters grijs.
- 2
Ga naar Externe communicatie
Navigeer naar Apparaatparameters en dan Externe communicatie. Hier staat het onderdeel Modbus met de TCP-server en de Unit ID instelling.
- 3
Zet de TCP-server op Aan
Zet TCP-server op Aan. De poort staat vast op 502. De omvormer start nu een Modbus-server op de netwerkinterface.
- 4
Noteer de Unit ID
Noteer de ingestelde Unit ID (fabrieksinstelling 3). Die 3 is de identiteit voor het SMA profiel; voor het SunSpec profiel gebruik je dezelfde omvormer op Unit ID 126 (zie de volgende sectie).
- 5
Test de verbinding
Poll vanaf je client register 30775 (AC-vermogen, SMA profiel) op Unit ID 3, of holding register 40000 op Unit ID 126 voor de SunSpec-marker SunS. Krijg je een plausibele waarde terug, dan staat de server correct aan.
Belangrijk: het lokale Modbus uitlezen loopt naast het Sunny Portal, niet in plaats ervan. De omvormer blijft over HTTPS met de SMA-cloud praten voor garantie, firmware-updates en monitoring op afstand, terwijl je dezelfde omvormer lokaal op poort 502 uitleest. Je hoeft dus niets aan de portaal-verbinding te veranderen.
SMA profiel of SunSpec profiel: welke kies je?
Dit is de kern van SMA Modbus en de reden dat SMA anders werkt dan de meeste merken. Elke SMA omvormer biedt op poort 502 twee registerprofielen tegelijk aan, onderscheiden door de Unit ID.
Het SMA Modbus profiel is fabrikant-eigen. De inverter heeft hier default Unit ID 3. De registers staan in het 30000-blok, gebruiken vaste datatypes met impliciete decimalen (SMA noemt dat FIX0 tot FIX3) en hebben eigen NaN-waarden. Dit profiel geeft de meeste SMA-specifieke meetwaarden.
Het SunSpec Modbus profiel volgt de open SunSpec standaard. De Unit ID is de SMA Unit ID plus 123, dus default 126. De registerkaart start bij 40001 met de ASCII-marker SunS en is identiek aan die van andere SunSpec-merken zoals SolarEdge en Fronius. Je hoeft niets om te schakelen: je richt je client gewoon op Unit ID 126.
De SMA registers die ertoe doen
De onderstaande registers volgen het SMA Modbus profiel (Unit ID 3) uit de technische informatie SMA-Modbus-general. Adressen zijn stabiel over firmware-revisies heen, maar verifieer altijd met een testpoll voordat je dashboards bouwt. Lees deze registers met function code 03 (holding) of 04 (input), afhankelijk van je client.
| Adres | Naam | Type | Eenheid | R/RW | Beschrijving |
|---|---|---|---|---|---|
| 30201 | Condition | U32 | enum | R | Status: 35 = storing, 303 = uit, 307 = ok, 455 = waarschuwing |
| 30231 | Nominal power | U32 | W | R | Nominaal AC-vermogen van de omvormer |
| 30513 | Total yield | U64 | Wh | R | Totale opgewekte energie sinds installatie |
| 30517 | Daily yield | U64 | Wh | R | Dagopbrengst, reset middernacht |
| 30775 | AC power | S32 | W | R | Actief AC-vermogen totaal, FIX0 (geen decimalen) |
| 30783 | Grid voltage L1 | U32 | V | R | Netspanning fase L1, FIX2 (deel door 100) |
| 30803 | Grid frequency | U32 | Hz | R | Netfrequentie, FIX2 (deel door 100) |
| 30953 | Internal temp | S32 | C | R | Interne temperatuur, FIX1 (deel door 10) |
Twee dingen die je hier moet begrijpen, anders lees je onzin.
FIX-datatypes in plaats van scale factors
Waar SunSpec een apart scale-factor register gebruikt, zit de schaling bij het SMA profiel vast in het datatype. FIX0 betekent geen decimalen, FIX1 deel door 10, FIX2 deel door 100, FIX3 deel door 1000. Register 30803 (netfrequentie) leest bijvoorbeeld 5000 met FIX2, wat 50,00 Hz is. Register 30775 (AC-vermogen) is FIX0, dus de ruwe waarde is direct in watt. Werk je op het SunSpec profiel, dan gelden juist wel de losse scale-factor registers zoals bij SolarEdge; die aanpak staat in de Modbus SolarEdge gids.
Waarom je 's nachts rare getallen leest
Dit is de meest gerapporteerde SMA-valkuil bij zelfbouw-uitlezing. De CPU van de omvormer wordt gevoed uit de PV-spanning. 's Nachts, als er geen zonlicht is, staat die CPU uit en leveren de registers geen echte meetwaarde maar een NaN-sentinel. Voor een S32-register zoals 30775 is dat 0x80000000, oftewel 2.147.483.648 als je het onterecht als unsigned leest. Voor U32 is de sentinel 0xFFFFFFFF en voor U64 0xFFFFFFFFFFFFFFFF. Je moet die waarden in je client afvangen en als 0 W interpreteren, anders krijgt je dashboard 's nachts absurde pieken. Deze NaN-behandeling is een bekend punt in open-source integraties zoals evcc (issue #3030) en de Home Assistant Modbus-integratie.
Voor een bruikbare monitoring-set volstaan vier registers: 30775 voor realtime vermogen, 30513 voor de totale opbrengst, 30201 voor de bedrijfstoestand en 30953 voor temperatuur (handig voor derating-detectie in de zomer). Wie ook teruglevering en verbruik wil meten, koppelt een SMA Energy Meter of Sunny Home Manager, die eigen Modbus-meetwaarden aanbiedt.
Veelvoorkomende problemen oplossen
De meeste SMA Modbus problemen komen op een handvol oorzaken neer. Loop deze lijst af als je geen verbinding of onzinnige waardes krijgt.
- TCP-server staat nog uit. De Modbus-server is standaard uitgeschakeld. Controleer in Externe communicatie of TCP-server op Aan staat.
- Verkeerde Unit ID. Poll je het SMA profiel, gebruik dan Unit ID 3. Poll je SunSpec, gebruik 126. Een client op Unit ID 1 (veel gateways default) krijgt niets terug.
- NaN-waarden niet afgevangen. Grote getallen zoals 2.147.483.648 zijn geen meetfout maar de nacht-sentinel. Filter 0x80000000, 0xFFFFFFFF en 0xFFFFFFFFFFFFFFFF weg.
- FIX-schaling vergeten. Een netfrequentie van 5000 is 50,00 Hz (FIX2). Zonder de deling door 10, 100 of 1000 kloppen je waarden niet.
- Ander subnet of firewall. De gateway zit op een ander subnet dan de omvormer, of poort 502 wordt geblokkeerd. Zet de omvormer op een vast IP of DHCP-reservering zodat het adres niet verandert.
Lokaal uitlezen met een gateway
Voor een enkele omvormer volstaat een Modbus-client op een laptop of een Home Assistant-instantie. In Nederland is dat laatste populair: open-source integraties zoals pysma en de Home Assistant SMA-koppeling worden breed gebruikt door prosumers die hun Sunny Boy lokaal willen uitlezen. Wil je die route zelf lopen, dan helpt Home Assistant Modbus integratie je op weg.
Voor een groeiende fleet met meerdere klanten wordt een vaste gateway per site praktischer. Een ModbusCloud Gateway (zie de Gateway-pagina) hangt aan het lokale netwerk, opent een Modbus TCP sessie naar de omvormer op poort 502, polt via het gekozen profiel de registers uit de tabel hierboven, vangt de NaN-waarden af en stuurt de waardes versleuteld door naar een dashboard. De hardware is niet aan een specifiek model gekoppeld; de Gateway leest elke SunSpec-conforme omvormer op dezelfde manier, dus een gemengde fleet met SMA, SolarEdge en Fronius consolideert in een overzicht.
De zakelijke haak voor Nederlandse installateurs is energiemanagement. Met het einde van de salderingsregeling per 1 januari 2027 en de terugleverkosten die leveranciers sinds 2024 rekenen, wordt eigen verbruik financieel belangrijker dan teruglevering. Lokale, realtime productiedata is de basis voor thuisbatterij-sturing, dynamische tarieven en exportbegrenzing bij netcongestie. Het Sunny Portal blijft bestaan voor cloud- en garantie-monitoring, maar voor eigen alerts en merkneutrale consolidatie is lokale Modbus-uitlezing onmisbaar.
Veelgestelde vragen
Heeft een SMA Sunny Boy standaard Modbus?
Ja, elke SMA omvormer met Speedwire of Webconnect heeft een ingebouwde Modbus TCP server op poort 502, maar die staat standaard uit. Je zet hem aan via de web-UI van de omvormer onder Apparaatparameters, Externe communicatie, Modbus. Er is geen extra hardware nodig zolang de omvormer een netwerkinterface heeft.
Welke poort gebruikt SMA Modbus?
SMA gebruikt de IANA-standaardpoort 502 voor Modbus TCP. Dat is anders dan SolarEdge, dat op 1502 luistert. Een gateway die default op 502 staat, werkt dus direct met SMA. Controleer wel dat de Modbus TCP server in de omvormer op Aan staat en dat je de juiste Unit ID gebruikt.
Wat is het verschil tussen het SMA Modbus profiel en SunSpec?
Het SMA profiel (Unit ID 3) is fabrikant-eigen, met registers in het 30000-blok, FIX-datatypes en eigen NaN-waarden. Het SunSpec profiel (Unit ID 126) volgt de open standaard vanaf register 40001 met scale factors, identiek aan andere merken. Beide zijn tegelijk beschikbaar op poort 502; je kiest via de Unit ID.
Waarom leest mijn SMA 's nachts 2.147.483.648?
Dat is geen meetfout maar de NaN-sentinel. De CPU van de omvormer draait op PV-spanning en staat 's nachts uit, waardoor S32-registers de waarde 0x80000000 (2.147.483.648) teruggeven. Vang die waarde af in je client en interpreteer hem als 0 W. Voor U32 en U64 gelden de sentinels 0xFFFFFFFF en 0xFFFFFFFFFFFFFFFF.
Welke Unit ID heeft een SMA omvormer?
Voor het SMA Modbus profiel is de fabrieksinstelling Unit ID 3. Voor het SunSpec profiel gebruik je dezelfde omvormer op Unit ID 126, dat is de SMA Unit ID plus 123. Poll je op Unit ID 1, dan krijg je meestal niets terug omdat SMA die niet als default gebruikt.
Welke registers moet ik uitlezen bij een SMA Sunny Boy?
Voor bruikbare monitoring volstaan vier registers uit het SMA profiel: 30775 voor het actuele AC-vermogen, 30513 voor de totale opbrengst, 30201 voor de bedrijfstoestand en 30953 voor de interne temperatuur. Let op de FIX-schaling per register en vang de NaN-waarden 's nachts af.
Kan ik een SMA omvormer in Home Assistant uitlezen?
Ja. Zet de Modbus TCP server aan op de omvormer en gebruik de standaard Home Assistant Modbus-integratie of een kant-en-klare SMA-integratie zoals pysma. Richt je op poort 502 en de juiste Unit ID (3 of 126). Vergeet niet de NaN-waarden af te vangen, anders zie je 's nachts pieken in je grafieken.
SMA Modbus uitlezen is voor de installateur van 2026 minder een extraatje en meer een basisvaardigheid. Je zet de Modbus TCP server aan via de web-UI, onthoudt dat de poort 502 is, kiest tussen het SMA profiel (Unit ID 3) en SunSpec (Unit ID 126), en vangt de NaN-waarden 's nachts af. Wie dat combineert, heeft een lokale, cloud-onafhankelijke datalaag die de basis vormt voor eigen alerts, energiemanagement en het opvangen van netcongestie. De ModbusCloud Gateway leest een SMA Sunny Boy uit zonder registerprogrammering en consolideert meerdere sites en merken in een dashboard, naast (niet in plaats van) het Sunny Portal.
Klaar om te beginnen?
Bestel de ModbusCloud Gateway en monitor je installaties binnen 5 minuten.
Bekijk de gateway