Website-Icon Dein Smart Home Blog

Alarm schalten mit Zipato RFID Tagreader im Fibaro HC2 - Version 4.091 Beta

Ja, Ihr habt richtig gelesen. Mit der neuen Firmware 4.091 Beta für das Fibaro HomeCenter 2 wird der Zipato RFID Tagreader offiziell seitens Fibaro unterstützt. Was Ihr dazu genau machen müsst, erfahrt Ihr hier in diesem Artikel.

Es war lange Zeit still, was die offizielle Unterstützung des Tagreaders seitens Fibaro angeht, doch vor einiger Zeit wurde diese Unterstützung für die nächste Beta 4.091 angekündigt. Seit dem 30. August 2016 ist diese Beta nun offiziell verfügbar und wir haben es uns natürlich nicht nehmen lassen, dieses Firmware-Update zu installieren und in Bezug auf den RFID Tagreader zu testen.

Kurz danach machte sich dann auch gleich Ernüchterung breit. Das Modul hatte nach einer "Soft-Reconfiguration" zwar ein Template, unsere bekannte Szene funktionierte allerdings gar nicht mehr und nach ein paar weiteren Tests war dann auch klar, dass Sie in der Form auch nicht mehr funktionieren wird... War aber eigentlich zu erwarten und deshalb keine sonderliche Überraschung, da Fibaro die Integration mit den dokumentierten Klassen des RFID Tagreaders realisiert hat. Unsere Szene basierte lange Zeit auf einem Workaround, da in der API des HC2 die Daten der Tags/PINs gespeichert wurden und so auslesbar waren. Dies war allerdings nicht den eigentlichen Anforderungen des Tagreaders vereinbar. Lange Rede, kurzer Sinn... Schauen wir uns die offizielle Integration doch mal genauer an.

RFID Tagreader im HomeCenter 2

Nach dem Anlernen, bzw. einem Soft-Reconfig des Tagreaders haben wir ab jetzt zwei Module auf dem Webinterface. Dies ist zum einen der eigentliche Tagreader, welcher signalisiert ob es geschlossen (Niemand zu Hause, Away-Taste wurde gedrückt) oder offen (Jemand zu Hause, Home-Taste wurde gedrückt) ist, zum anderen die Ansteuerung der LED, beziehungsweise des kleinen Piepsers im Tagreader.

Wenn Ihr nun die Home- oder Away-Taste betätigt und einen RFID Tag vor den Sensor haltet oder eine PIN eingebt und mit Enter bestätigt, dann erscheint oben in dem Debug-Feld eine Meldung, dass ein unregistrierter Code genutzt wurde. Dies ist kein Fehler, sondern so gewollt.

Neuer RFID-Tag

Code für einen RFID Tag setzen

Denn genau mit dieser Funktion kann der Code für den Tag ermittelt werden, welcher dann über eine LUA-Szene zu dem Tagreader gesendet werden muss. Dieser Code sieht folgendermaßen aus:

Hier müssen natürlich die ID des Moduls (Variable ID), die ID, an welche Stelle in der Tabelle userCodes der Code geschrieben werden soll (die 0 ist vorbelegt und kann nicht verwendet werden), und der Wert aus dem Debug-Fenster von euch eingetragen werden. Was bei opt eingetragen wird, ist nicht relevant, da diese Daten nur intern in der Z-Wave-Datenbank gespeichert werden und (bis jetzt) nirgendwo abrufbar sind. Der Status "Occupied" bedeutet, dass diese ID durch einen anderen Code bereits vergeben ist. Hier muss dann eine andere ID gewählt werden.

Nach dem Ausführen des LUA Codes wird in der HC2-API der Status "PendingUpdate" für die ID 3 gesetzt:

Code für ID 3 gesetzt, PendingUpdate

Diese Anzeige im Debug-Fenster der Szene könnt Ihr mit folgendem LUA Code realisieren:

Wenn der Tagreader jetzt manuell aufgeweckt wird (Oder Ihr wartet bis zum nächsten, automatischen WakeUp), werden die Daten übertragen. Um den Tagreader manuell aufzuwecken, habt Ihr drei unterschiedliche Möglichkeiten:

  1. Home/Away-Taste betätigen, 1 Sekunde warten, RFID vor den Sensor halten
  2. Home/Away-Taste betätigen, PIN-Code eingeben, Enter-Taste drücken
  3. Auf der Rückseite des Gerätes den Sabotage-Kontakt 1 Sekunde drücken

Nach der Übertragung ändert sich dann der Status in der API von "PendingUpdate" zu "Occupied":

Der Status hat sich in "Occupied" geändert.

Alternativ könnt Ihr euch die API in der device-API des HomeCenter 2 anschauen. Dazu müsst Ihr folgende Adresse im Browser aufrufen: http://HC2-IP/api/devices/deviceID  Hier müssen natürlich die IP und die deviceID an eure Geräte angepasst werden.

Tabelle userCodes in der HC2-API

Neben dem Status "Occupied" gibt es noch weitere Status, welche über LUA gesetzt werden können. Diese sind

Code für einen Pin-Code setzen

Es kann natürlich auch ein PIN-Code, welcher dann über die 4 Zahlentasten des Tagreaders eingegeben wird, gesetzt werden. Dies funktioniert mit folgendem LUA-Befehl:

Auch hier werden die Daten nach dem Aufwecken des Tagreaders übertragen. Die Möglichkeiten zum manuellen Aufwecken des Moduls haben wir ja bereits oben beschrieben. Es muss wieder die Device ID, die UserID und der Code (Im Beispiel 1234) angepasst werden. Es wird eine Länge von 4 bis 10 Stellen ünterstützt.

Solltet Ihr mal einen RFID Tag verlieren oder einen PIN-Code deaktivieren wollen, dann kann die ID auch wieder freigegeben werden. Dazu muss in der API die UserID wieder auf den Status "Available" gesetzt werden und das kann mit folgender Codezeile umgesetzt werden:

Dies waren alle benötigten Befehle, um den Tagreader im Fibaro HomeCenter 2 zu integrieren. Wenn Ihr jetzt mit den angelernten RFID Tags die Home/Away-Taste drückt und den Tag vor den Sensor haltet, dann wird das Keypad symbolisch auf-, bzw. zugeschlossen.

Solltet Ihr dazu noch Fragen haben, dann stellt diese gerne in den Kommentaren. :)

Nachteile im Vergleich zum alten, nicht mehr funktionierenden Workaround

Es ergeben sich durch die offizielle Integration leider auch ein paar Nachteile im Vergleich zu dem alten RFID Skript. Diese haben wir für euch mal in einer kleinen Übersicht zusammengefasst.

Dies muss allerdings nicht der letzte Stand der Entwicklung sein. Es könnte sein, dass Fibaro weiterhin Änderungen an der Einbindung des Tagreaders vornimmt und so neue Funktionen noch dazu kommen. Da würden wir dann natürlich in einem Update-Artikel drauf eingehen.

Alles in Allem ist die Umsetzung durch Fibaro trotzdem gut realisiert worden. Anhand des nun funktionierenden Status des Tagreaders kann nun eine Szene getriggert werden, welche beim "Abschließen" dann alle benötigten Aktionen ausführt.

Dies könnte dann ungefähr so aussehen (Die Device ID im header muss angepasst werden):

In einem der nächsten Artikel werden wir euch eine ausführliche Szene, ähnlich wie die alte RFID Szene (Wir versuchen so viele Funktionen wie beim alten Skript umzusetzen; Einschränkungen wird es aber geben, siehe die oben angeführten Punkte), vorstellen. Dies hat leider zeitlich nicht mehr ganz gepasst. Mit diesem Artikel wollten wir euch aber ausführlich das Setzen der Codes im Fibaro HomeCenter 2 vorstellen, da dies die Grundvorraussetzung für die Nutzung des RFID-Tagreaders ist.

Wir haben natürlich wieder an euch gedacht und zwei neue Icons erstellt:

Käuflich erwerben könnt Ihr den Tagreader übrigens über Amazon oder über den Shop von "Control your Home" (Bis Sonntag für 49,00 €). Und nun viel Spaß beim Umsetzen. :)

Die mobile Version verlassen