>>> Für das HUE-Binding gibts einen anderen Beitrag <<<

Die Lampen und Steckdosen lassen sich ja schon mal ganz gut schalten mit dem deConz Hue Emulator und dem Hue Binding von Openhab. Nun hab ich mir ein paar Tür- und Fenstersensoren von Xiaomi besorgt. Die Aqara Linie sieht nicht nur schön aus, sie sind auch recht klein und recht günstig. Im Angebot bekommt man die Zigbee-Sensoren schon für 7 Euro.

Also auf gehts… Zigbee-Sensoren ausgepackt, Phoscon Oberfläche aufrufen unter:

http://ip-raspberry/pwa/login.html

Unter Geräte / Sensoren auf „Neuen Sensor verbinden“ klicken, am Türsensor den Koppeln-Knopf 3 Sekunden drücken und schon ist der Sensor eingebunden.

Wer sich übrigens über die Temperaturanzeige wundert… anscheinend haben die Xiaomi Aqara integriert im Chip einen Temperatursensor. Ganz witzig, leider lässt die Toleranz zu wünschen übrig, daher eher nicht zu gebrauchen, aber dafür ist es ja nicht gedacht.

Natürlich dacht ich mir, den kann ich jetzt einfach als Item in mein Openhab einbinden, aber Pustekuchen. Wo die Lampen und Steckdosen wunderbar automatisch erkannt werden, fehlen leider die Türkontakte… und nun?

Na gut, verwenden wir halt neben den Hue Binding auch noch das deConz Binding. ABER ACHTUNG…. über die PaperUI lässt ich aktuell die Bindingversion 2.4 installieren. Damit hat das bei mir leider überhaupt nicht geklappt, das heißt ihr müsst die Snapshot-Version 2.5 installieren (wie gesagt, zum aktuellen Zeitpunkt… das kann sich schon geändert haben, wenn ihr den Artikel hier lest). Man könnte das jetzt selber Compilieren, ich lade mir gleich die fertige Jar herunter, dass man dann einfach in den Addons-Order legt.

Wichtig ist, dass ihr das Binding noch nicht über die PaperUI installiert habt, ansonsten dort wieder deinstallieren. Dann am einfachsten über die Console auf euren Raspberry zugreifen (SSH und Putty!!!), in den Addons-Ordner wechseln –> /usr/share/openhab2/addons

Als nächstes mit wget das jar runterladen:

wget https://openhab.jfrog.io/openhab/libs-pullrequest-local/org/openhab/binding/org.openhab.binding.deconz/2.5.0-SNAPSHOT/org.openhab.binding.deconz-2.5.0-SNAPSHOT.jar

Es bietet sich natürlich an zu prüfen, ob es eine neuere Version gibt. Google hilft da gerne weiter 🙂

Wenn das Binding im addons-Ordner liegt, wird es automatisch aktiviert, das heißt, das deconz-Binding ist jetzt in Openhab verfügbar.

Weiter gehts… wir legen uns ein Thing-File an. In den Ordner /etc/openhab2/things wechseln und ein Things-File mit irgend einem Namen anlegen… meins heißt deconz.things. Das unten genannte Eintragen. Da bei mir deconz auf dem selben System läuft, wie mein Openhab ist bei mir IP_Deconz 127.0.0.1

Bridge deconz:deconz:homeserver [ host="IP_Deconz" ]

Nun benötigen wir noch den API-Key. Den bekommen wir in der Openhab Console. Heißt: Wir sind auf dem Raspberry mit zum Beispiel Putty eingeloggt und nun müssen wir die Openhab Console aus der Raspberry Console heraus starten… klingt kompliziert, ist aber ganz einfach. Einfach das eingeben:

ssh -p 8101 openhab@localhost

Das Standardpasswort ist: habopen

In der Console geben wir nun das ein:

things show deconz:deconz:homeserver

Danach sollten wir den API-Key sehen. Den müssen wir uns merken und im Things-File eintragen. Man kommt aus der Console wieder raus in dem man „logout“ eingibt.

Things-File öffnen und den Bridge-String ändern:

Bridge deconz:deconz:homeserver [ host="IP", apikey="ABCDEFGHIJ" ]

Schaut man jetzt in die PaperUI unter Configuration / Things und sieht Deconz Online, dann war das bis hier richtig. Weiter gehts… nun wollen wir den Sensor einbinden, dazu müssen wir seine Zigbee-ID herausfinden und das gestaltet sich ein wenig schwierig, da ich die ID nirgens auf einer GUI finde (vielleicht hat jemand einen Tipp wie das einfacher funktioniert). Jetzt wirds leider kompliziert. 

Solltet ihr zufällig Google Chrome verwenden, brauchen wir jetzt ein REST-Addon. Den Link (https://chrome.google.com/webstore/category/extensions?hl=de) öffnen, dort kommt man auf die Chrome-Addons. Dort suchen wir nach „Yet another REST client“ und installieren ihn. Wenn er installiert ist, taucht das Icon Rechts oben in Chome auf. Dort klicken wir drauf und sind auf der Oberfläche vom REST-Client. Damit können wir nun unsere Sensoren abfragen.

Bei URL tragen wir das hier ein:

http://IP-DECONZ-RASPBERRY/api/API-KEY/sensors

Ich schreib das gerade ein wenig aus dem Kopf heraus. Ich bin mir nicht mehr ganz sicher, ob die REST-API von Deconz auf Port 8080 lief und ich das geändert habe, das Problem ist, dass die REST-API von Openhab auch auf Port 8080 läuft, das heißt hier könnte es jetzt Probleme geben. Sorry, aber ich weiß es nicht mehr genau, möglich dass der Port geändert werden muss.

Zurück zum Rest-Client. Rechts lasst ihr auf GET stehen und dann nur noch auf „Send request“. 

Hat das geklappt, bekommt ihr einen HTTP Code 200 zurück und einen (glaub) JSON-String. In dem könnt ihr die ID auslesen, die wir jetzt wieder brauchen. In meinem Fall ID 2.

Ja, anstengend…. ich weiß. Zurück in unser Things-File. In meinem Fall /etc/openhab2/things/deconz.things…. in der wir die Bridge eingetragen haben. Dort ergänzen wir den Eintrag. In meinem Fall ist es ein Tür- und Fensterkontakt.

Deconz.things:

Bridge deconz:deconz:homeserver [ host="IP_DECONZ", apikey="API-KEY" ] {
        openclosesensor     WZ_Door_Right       "WZ_Door_Right"         [ id="2" ]
}

Jetzt brauchen wir noch ein Item… also /etc/openhab2/items…. bei mir zigbee.items:

Contact Livingroom_Door_Right       "Window Livingroom [%s]"            <door>          { channel="deconz:openclosesensor:homeserver:WZ_Door_Right:open" }

Habt ihr andere Sensoren zum Beispiel Temperatur, dann einfach mal auf die Seite vom Deconz-Binding bei Openhab schauen. Link (https://www.openhab.org/addons/bindings/deconz/).

ENDE 🙂

Ihr seht schon, ich schreib hier ein wenig frei Schnauze und les mir das auch nicht mehr durch, da die Anleitungen eigentlich für mich selber sind, aber ich dem ein oder anderen sicherlich auch damit helfen kann. Drum nehmt es mir nicht übel, wenn das Ganze hier nicht wirklich einen roten Faden hat.