Netatmo meets P365d meets openHAB

Nach dem wir bereits schon vor einiger Zeit von Netatmo die beliebte Wetterstation durch ComputerWorks für unsere ICT-WG erhalten haben, möchten wir euch heute zeigen, wie diese ihren Platz bei uns gefunden hat. 

Netatmo in der ICT-WG

Das Starterpaket bestehend aus Aussen- und Innenmodul haben wir auf Balkon / Wohnzimmer installiert. Danach sind wir zusätzlich auf den Regensensor aufmerksam geworden. Da die Installation jedoch unter freiem Himmel erfolgen musste, wurden wir auf unserem Balkon mit den Haltern für die Blumenkästen etwas erfinderisch.

Netatmo_Regen_Aussen_Sensor

Selbstverständlich ist der Regensensor noch mittels einer Schnur befestigt und das Aussenmodul steht weiter innen auf dem Balkon, um bei einem Sturm nicht davon zu fliegen. Das Funksignal zeigt aktuell durch eine Wand zwei von fünf Strichen, was jedoch bis heute keine Probleme bereitet hat. Der Akku ist momentan nach über 2 Monaten erstaunlicherweise immer noch bei 100%. Aber nun möchten wir mehr auf die Anbindung an openHAB eingehen, um euch die “coolen” Möglichkeiten mit diesen Gadgets zu zeigen.

Netatmo – openHAB Verbindung

Wie in den bisherigen Blogbeiträgen beschrieben, haben wir in der Vergangenheit immer versucht, all unsere elektronischen Komponenten mit openHAB zu verbinden, um diese flexibel mit denen von anderen Herstellern interagieren zu lassen. Deshalb sollte dies mit unserer Wetterstation auch nicht anders sein. Das Netatmo-Binding ist wie die meisten anderen Bindings im Addonarchiv enthalten und muss in den Addonordner im openHAB Verzeichnis kopiert werden. Falls ihr noch mal nachsehen wollt wie das genau geht, könnt ihr gerne einen Blick auf dem myStrom Beitrag werfen und nachsehen.

Danach folgt die eigentliche Konfiguration des Bindings. Hierzu geht ihr am besten wie auf der eigentlichen “Netatmo Binding Seite” beschrieben vor. Grundsätzlich müsst ihr die folgenden drei Parameter in eurer “openhab.cfg” hinterlegen:

netatmo:refresh= 300000
netatmo:clientid= 123456789012345678901234
netatmo:clientsecret= ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI
netatmo:refreshtoken= ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDE

Wundert euch bitte nicht, dass neuerdings im Refreshtoken ein Pipe Symbol (“|”) enthalten ist, dies hat seine Richtigkeit. Weitere Probleme hatten wir noch mit dem SSL-Zertifikat, da Netatmo mittlerweile eine verschlüsselte Verbindung verlangt. Dieses muss manuell wie unter “Common problems  – Missing Certificate Authority” beschrieben installiert werden. Da wir in unserer Konfiguration jedoch openHAB auf eine Synology DiskStation betreiben und dort Java über das Paket Zentrum installiert wurde, konnte der Befehl aus der Anleitung mit den relativen Pfaden nichts anfangen. Abhilfe brachte letztendlich nur eine Ausführung mit direktem Pfad zum Java TrustStore:

$JAVA_HOME/bin/keytool -import -keystore /volume1/@appstore/JavaManager/Java/jre/lib/security/cacerts -alias StartCom-Root-CA -file ca.pem

openHAB Konfiguration

Unter folgender Anleitung ist beschrieben, wie ihr die Netatmo Items in openHAB anlegt. Nachfolgend noch eine kurze Erläuterung der einzelnen Bestandteile anhand des ersten Elements:

  • Number – Typ des Elements (Zahl)
  • Netatmo_Outdoor_Temp – Name des Elements auf das später beispielsweise in den Regeln zugegriffen werden kann
  • "Outdoor Temperature [%.2f °C]" – Format in dem der Wert später im Browser / App dargestellt wird
  • {netatmo="70:ee:50:12:75:1e#02:00:00:12:82:7a#Temperature"} – Parameter, der openHAB mitteilt, dass es sich um ein Netatmo Gerät handelt und von welchem Sensor die Daten dargestellt werden sollen

Als Beispiel seht ihr hier unsere Konfiguration, die wir unter “\configurations\items\netatmo.items” angelegt haben. Solltet ihr das ganze bei euch nachbauen wollen, müssen einfach die fett markierten Strings entsprechend der zuvor genannten Anleitung ausgetauscht werden.

Number Netatmo_Outdoor_Temp "Outdoor Temperature [%.2f °C]"  {netatmo="70:ee:50:12:75:1e#02:00:00:12:82:7a#Temperature"}
Number Netatmo_Outdoor_Humidity "Outdoor Humidity [%.2f %%]"  {netatmo="70:ee:50:12:75:1e#02:00:00:12:82:7a#Humidity"}
Number Netatmo_Outdoor_Batt "Outdoor battery [%d %%]" {netatmo="70:ee:50:12:75:1e#02:00:00:12:82:7a#Batteryvp"}
Number Netatmo_Rain_Gauge "Rain [%.02f mm]" {netatmo="70:ee:50:12:75:1e#05:00:00:00:6d:42#Rain"}
Number Netatmo_Rain_Batt "Rain battery [%d %%]" {netatmo="70:ee:50:12:75:1e#05:00:00:00:6d:42#Batteryvp"}

Als Ergebnis solltet ihr nun in eurer App die zuvor konfigurierten “Items” sehen. Bei uns sieht dies für den Balkon aktuell wie folgt aus:

Da all diese Daten nun in openHAB zur Verfügung stehen eröffnen sich natürlich unzählige neue Möglichkeiten, sie können zum einen mit Regeln verknüpft werden und damit Aktionen ausführen oder die Daten selbst wieder weiteren Anwendungen zur Verfügung stellen. Eine kleine Liste möglicher Ideen haben wir bereits vorbereitet:

  • Jalousie steuern, indem die Temperatur erfasst wird
  • CO2 Status messen und über Philips hue anzeigen, wann wir lüften sollen
  • Mittels REST Api Regenstatus auf unserem BuzzBoard darstellen

Für uns wäre es natürlich auch spannend zu erfahren, was euch interessieren würde bzw. was ihr bereits selbst bei euch umgesetzt habt. Hinterlasst uns doch einen Kommentar auf diesen Blogpost – wir würden uns freuen.