Du nutzt eine Netatmo Wetterstation (*) und willst Temperatur, CO₂, Regen oder Wind endlich sauber in deiner Homematic CCU3 (*) bzw. RaspberryMatic sehen? Seit Ende 2022 akzeptiert Netatmo für Drittanbieter-Zugriffe nur noch OAuth2. Die alte CUxD-Variante mit Client Credentials aus dem Homematic-Forum ist damit Geschichte.
Bei mir läuft die Brücke seit Jahren stabil über ioBroker: Netatmo liefert die Messwerte, ein Blockly-Skript schreibt sie in Homematic-Variablen. Stand August 2026 ist das nach wie vor der pragmatische Weg, wenn du Netatmo-Daten in Programmen, Heizlogik oder Visualisierungen der CCU brauchst.
Was alles erfährst du in diesem Beitrag:
- Welche Homematic-Variablen sinnvoll sind
- Wie du Homematic- und Netatmo-Adapter in ioBroker einrichtest (inkl. OAuth2)
- Wie das Blockly-Skript die Werte überträgt
- Wie du alte CUxD-/TCL-Reste aufräumst
Voraussetzungen und sinnvolle Hardware
Du brauchst einen laufenden ioBroker (z. B. auf NAS, Mini-PC oder Raspberry Pi) sowie eine Homematic-Zentrale mit Variablen – typisch CCU3 oder RaspberryMatic. Reiner Homematic-IP-Access-Point ohne CCU-Logik reicht für diesen Weg nicht.
- Netatmo Wetterstation ORIGINAL (2. Generation) (*) – Basis mit Innen- und Außensensor
- Optional: zusätzliches Netatmo Innenmodul (*) für weitere Räume
- Optional: Netatmo Regenmesser (*)
- Optional: Netatmo Windmesser (*)
- Homematic IP Smart Home Zentrale CCU3 (*) oder kompatible RaspberryMatic
Netatmo Wetterstation (2. Generation)
Bei Amazon ansehenHomematic IP Zentrale CCU3
Bei Amazon ansehenWer eher Reichweite und Funkstabilität der CCU im Blick hat: dazu habe ich einen eigenen Beitrag zur Homematic IP CCU3 Reichweite erhöhen.
Schritt 1: Variablen für Netatmo in Homematic anlegen
Falls noch nicht geschehen, legst du dir zuerst die Netatmo-Variablen im Homematic-Admin an. Bei mir haben sich diese Namen bewährt:
- Für die Netatmo Wetterstation (*) / Indoor-Modul:
- Netatmo_Wohnen_Temperatur als „Zahl“ von 0 bis 100 in °C
- Netatmo_Wohnen_Sonometer als „Zahl“ von 0 bis 200 in dB
- Netatmo_Wohnen_Luftdruck als „Zahl“ von 0 bis 2000 in mb
- Netatmo_Wohnen_CO2 als „Zahl“ von 0 bis 10000 in ppm
- Für den Netatmo Windmesser (*):
- Netatmo_Wind_Staerke als „Zahl“ von 0 bis 1000 in km/h
- Netatmo_Wind_Richtung als „Zahl“ von 0 bis 1000 in °
- Netatmo_Wind_Boehen_Staerke als „Zahl“ von 0 bis 1000 in km/h
- Netatmo_Wind_Boehen_Richtung als „Zahl“ von 0 bis 1000 in °
- Für den Netatmo Regenmesser (*):
- Netatmo_Regenmenge_30min als „Zahl“ von 0 bis 1000 in mm
- Netatmo_Regenmenge_1d als „Zahl“ von 0 bis 1000 in mm
- Netatmo_Regen_aktuell als „Zahl“ von 0 bis 1000 in mm
- Für eine Netatmo-Außenstation:
- Netatmo_Outdoor_Temperatur als „Zahl“ von -100 bis 100 in °C
- Für ein weiteres Netatmo Innenmodul (*):
- Netatmo_Schlafzimmer_Temperatur als „Zahl“ von 0 bis 100 in °C
- Netatmo_Schlafzimmer_CO2 als „Zahl“ von 0 bis 10000 in ppm
Am Ende kann das bei dir so aussehen:

Schritt 2: Homematic-Adapter in ioBroker installieren und konfigurieren
Nach dem Login in die ioBroker-Admin-Oberfläche installierst du die beiden Homematic-Adapter hm-rega (ReGaHSS) und hm-rpc. Im Repository findest du sie unter IoT-Systeme:

Die Konfiguration meiner hm-rega-Instanz sieht so aus:

Die hm-rpc.0-Instanz holt bei mir die Homematic-IP-Werte:

hm-rpc.1 ist bei mir für CUxD zuständig:

hm-rpc.2 für Virtual Devices:

und hm-rpc.3 für rfd:

Mein zyklisches Abfragen liegt auf 30 Sekunden. Du brauchst nicht zwingend alle RPC-Instanzen – wichtig ist vor allem, dass hm-rega deine Systemvariablen kennt und schreiben darf.
Schritt 3: Netatmo-Adapter installieren und per OAuth2 verbinden
Wenn bei dir noch eine sehr alte Netatmo-Instanz (1.x) hängt, lösche vorher den kompletten Objektbaum dieser Instanz. Ab Adapter 2.x wird die Struktur neu aufgebaut und die Authentifizierung läuft über OAuth2.
Den Netatmo-Adapter findest du im normalen ioBroker-Repository in der Kategorie Wetter:

Installieren, Instanz anlegen und in der Konfiguration auf Authenticate with Netatmo klicken:

Danach loggst du dich mit deinem Netatmo-Konto ein und gibst der Anwendung „Netatmo Adapter for ioBroker“ Zugriff auf deine Wetterstation („Ja, ich akzeptiere“):

Anschließend landest du auf einer etwas nüchtern wirkenden Bestätigungsseite – die ist trotzdem korrekt:

Zurück in der ioBroker-Admin-Oberfläche sollten die Netatmo-Instanzeinstellungen noch geöffnet sein.
Als Nächstes erstellst du im DEV-Account bei Netatmo Connect eine App. Damit bekommst du Client ID und Client Secret:

Beide Werte trägst du in den Netatmo-Instanzeinstellungen unter Netatmo-App ein. Mein Aktualisierungsintervall liegt bei 5 Minuten – das reicht für Wetter und Raumklima völlig und schont die API.
Schritt 4: Blockly-Skript – Werte von Netatmo nach Homematic schreiben
Voraussetzung: Adapter javascript (Scriptausführung) ist installiert und eine Instanz läuft. Darüber baust du Blockly oder JavaScript, das die Werte überträgt:

Im Menü „Skripte“ legst du mit „+“ ein neues Blockly-Skript an:

Als Trigger nutze ich den Datenpunkt LastUpdate meiner Netatmo-Basisstation. Die hängt am Netz und im WLAN – wenn bei einem Batteriemodul die Batterie leer ist, würde z. B. CO₂ sonst gar nicht mehr aktualisiert und dein Skript würde „einschlafen“.


Danach schreibst du über das System die passenden Homematic-Variablen. Quelle ist jeweils der Netatmo-Datenpunkt, Ziel die CCU-Variable:


Das fertige Blockly-Skript zur Übertragung sieht bei mir so aus:

Pass die Objekt-IDs und Variablennamen unbedingt an deine Installation an. Wenn du ohnehin tiefer in ioBroker steckst: ähnlich baue ich auch andere Brücken, z. B. den Ultrahuman Ring im ioBroker oder den DoorBird RFID-Status nach ioBroker.
Schritt 5: Prüfung ob die Werte übertragen werden
Skript aus dem Pause-Modus holen und starten. Sobald Netatmo den Zeitstempel aktualisiert, sollte der Trigger feuern und die Homematic-Variablen frische Werte plus aktuelle Zeitstempel zeigen:

Schritt 6: Alte CUxD-/TCL-Netatmo-Verbindung entfernen
Wenn du früher per CUxD und Script auf der CCU abgeholt hast, räumst du das jetzt auf – sonst hast du tote Programme und unnötige Fehler im Log.
Zuerst lösche ich das alte Homematic-Programm, das für die Datenabholung zuständig war:

Außerdem das damals per FTP/SSH hochgeladene Script löschen, typisch hier:
/usr/local/addons/netatmo/netatmo.tcl
Danach ist die Kette sauber: Netatmo → ioBroker → Homematic-Variablen.
FAQ – häufige Fragen zu Netatmo, Homematic und ioBroker
Funktioniert die Anleitung 2026 noch?
Ja. OAuth2 ist bei Netatmo Pflicht, und der ioBroker-Netatmo-Adapter arbeitet genau damit. Screenshots können sich in Details unterscheiden (Adapter-Version, Admin-UI), der Ablauf Authentifizieren → Client ID/Secret → Blockly bleibt gleich.
Brauche ich wirklich eine CCU3 oder reicht der Homematic IP Access Point?
Für diesen Weg brauchst du eine Zentrale mit Systemvariablen und Programmlogik (CCU3/RaspberryMatic). Der reine Access Point steuert Homematic IP über die Cloud/App, bietet aber nicht dieselbe Variablen-Brücke wie die CCU.
Wie oft sollte ioBroker Netatmo abfragen?
Bei mir 5 Minuten. Wetter und Raumklima ändern sich nicht sekundengenau – kürzere Intervalle bringen kaum Nutzen und belasten die API unnötig.
Warum als Trigger LastUpdate der Basisstation?
Weil die Basisstation dauerhaft mit Strom und WLAN läuft. Batteriemodule können ausfallen; dann würde ein Trigger auf z. B. CO₂ nie wieder feuern, obwohl andere Sensoren noch Daten liefern.
Kann ich statt Blockly auch JavaScript nutzen?
Ja. Derselbe javascript-Adapter kann reine JS-Skripte. Blockly ist nur der Einstieg, den ich hier zeige – logisch machst du dasselbe: bei Änderung lesen und per setState in die hm-rega-Variablen schreiben.
Geht die alte CUxD Client-Credentials-Methode noch?
Nein. Netatmo hat das 2022 abgeschaltet. Wer das noch im System hat, sollte Programm und netatmo.tcl entfernen und auf ioBroker umstellen.
Fazit
Netatmo und Homematic sprechen nicht von Haus aus dieselbe Sprache – mit ioBroker als Brücke schon. Einmal sauber authentifiziert und per Blockly verdrahtet, laufen die Werte bei mir seit Jahren ohne Drama in die CCU. Wenn du ohnehin ioBroker im Netz hast, ist das der klarste Weg; ohne ioBroker bleibt dir eher die reine Netatmo-App bzw. andere Cloud-Automationen.
Die mit Sternchen (*) gekennzeichneten Links sind sogenannte Affiliate-Links. Wenn du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekomme ich von dem betreffenden Online-Shop oder Anbieter eine Provision. Für dich verändert sich der Preis nicht.
Hat dich diese Anleitung inspiriert oder dir bei deinem Projekt geholfen? Falls ja, freue ich mich über deine Spende unkompliziert bei KoFi.
Das motiviert mich, weiterhin mein Wissen zu teilen und die Community damit zu unterstützen. Vielen Dank!


Hallo, hab deine Anleitung getestet und hänge an “State value to set for “hm-rpc.0.002E9F299931B0.0.CODE_ID” has value “32” greater than max “8”
Bei Falls Objekt. Objekt ID gebe ich das Netatmo Modul an und speichere das ganze. Da bekomme ich oben die Meldung. Ich sehe auch in der Liste unter “hm-rega” keine Netatmo Nr. zum auswählen. Firewall ist bei der CCU3 offen.
Eine Idee?
Gruß Peter
Hallo Peter,
ich nehme an, sowohl die Instanz für Netatmo als auch für HM-REGA sind im ioBroker “grün” und du siehst im Objektbaum bei Netatmo die ganzen Werte der Komponenten und unter HM-REGA deine erstellten Variablen.
Dann deutet die Fehlermeldung darauf hin, dass er den Status aufgrund einer Einschränkung nicht in die Variable von Homematic schreiben kann.
Bitte logge dich in deine Administrator Oberfläche der Homematic ein und prüfe bei den Einstellungen -> Systemvariablen, ob diese als “Variablentyp: Zahl” klassifiziert sind und der “Wertebereich von 0 bis 100” liegt.
Viele Grüße,
Tobias
Hallo Tobias, es läuft jetzt alles. Ich hatte vergessen in Einstellungen die Systemvariablen zu setzen. Ich hatte gedacht, die werden mit dem Falls Objekt (ObjektID Update) Automatisch gesetzt.
Für einen Anfänger wie mich, wäre ein Hinweis an dieser stelle noch super, dass man die Variablen noch setzen muss. Jetzt weiß ich es, vielen dank für deine tolle Anleitung!
Gruß Peter
Hallo Peter,
prima, das freut mich!
Danke auch für deinen Hinweis – ich werd’s im Beitrag ergänzen.
Viele Grüße,
Tobias