Alarm schalten mit Zipato RFID Tagreader im Fibaro HC2

Geschrieben von boomx

Mithilfe des Zipato RFID Reader lässt sich Alarmfunktion des Fibaro HC2 scharf schalten aber auch eine Abwenheitsvariable setzen. Dazu braucht es diesen Workaround:

[alert variation="alert-info" dismiss="dismiss"]Wir haben die Anwendung weiterentwickelt und eine Lösung ohne Verwendung eines Virtual Device gefunden. Gelöst wurde es über eine Szene. Den Artikel dazu findest du hier: Alarm schalten mit Zipato RFID Tagreader im Fibaro HC2 – UPDATE [/alert]

Der Zipato RFID Tagreader kann entweder per PIN Eingabe, RFID Tag oder Zutrittskarte benutzt werden. Dabei kann er das Fibaro System scharf schalten und das Alarmsystem auch entschärfen. Out of the Box geht das leider nicht wir brauchen hier einen Workaround in Form eines Virtuellen Devices. Dann kann zum Beispiel der Alarm mit einem eingegebenen Code aktiviert und mit zum Beispiel zwei RFID-Tags entschärft werden. Dieses Beispiel werden wir jetzt hier umsetzten:

Schritt 1 - Anlernen:

Zum Anlernen muss zum einen das HC2 in den Lernmodus gesetzt werden, zum anderen muss hinten auf dem Tagreader der Schalter für 1 Sekunde gedrückt werden.

Nach dem Anlernen findet Ihr folgendes device im Webinterface, welches leider erst mal ohne Funktion zu seien scheint:

rfid1

Nach dem Inkludieren findet Ihr folgendes device in der device-Übersicht

Schritt 2 - Virtuelles Device

Im nächsten Schritt müssen wir ein Virtuelles Device erstellen. Dazu müsst Ihr unter devices auf den Button „Add or remove device“ und dort auf „Add“.

Dort müsst Ihr dann einen neuen Button hinzufügen und dort den folgenden Code einfügen:

Nennt diesen Button am Besten "Refresh" und speichert ab.
In diesem Skript müsst Ihr folgende Angaben im Code ändern:

Zeile Angabe Erklärung
4 YOUR_HC2_IP IP-Adresse des HC2
5 YOUR_ADMIN_PW Passwort des Admin-Users
6 RFID_DEVICE_ID Device-ID des Tagreaders
11 + 15 YOUR_RFID_CODE RFID-Code Tag1
12 + 15 YOUR_RFID_CODE2 RFID-Code Tag2
13 + 18 YOUR_PIN_CODE PIN-Code

Die Codes für die einzelnen RFID-Tages könnt Ihr folgendermaßen rausfinden:

  1. Drückt den Home-Button auf dem Tagreader
  2. Eine Sekunde warten, bis das Gerät piept und die LED leuchtet
  3. RFID-Tag vorhalten (sollte bei erfolgreichen Einlesen kurz piepen)
  4. http://YOUR_HC2_IP/api/devices?id=RFID_DEVICE_ID aufrufen
  5. Folgenden String suchen: properties/userCodes/id:0
  6. Dort findet Ihr eine Angabe, die so ausieht: u00C2A
  7. Dies ist der Code eures RFID-Tags.
rfid_vd

So sollte das Virtuelle Devices nach dem Bearbeiten aussehen.

Nachdem Ihr mit den Angaben im Skript fertig seid, legt Ihr noch eine Variable „rfid_alarm“ an.

Globale Variable rfid_alarm

Globale Variable rfid_alarm

Schritt 3 – Szene zum Aktualisieren

Nun benötigt Ihr noch eine Szene, welche in einem 2-Sekundenabstand die Taste des virtuellen Devices „drückt“. Dazu legt Ihr euch eine neue LUA-Szene an und kopiert dort folgenden Code hinein (Ändert bitte in Zeile 12 die device-ID):

Schritt 4 – Fertig

Ihr könnt nun mit eurem vergebenen Code die Variable „rfid_alarm“ auf 1 setzen und anhand dieser Variablen die nächsten Aktionen durchführen lassen (z.B. die Türkontakte schärfen). Mit dem RFID-Tag hingegen setzt Ihr die Variable wieder auf 0. Dann könnt Ihr zum Beispiel die Türkontakte wieder entschärfen.

Hier findest du ein kurzes Video, wie das ganze dann aussehen kann. RFID-Tagreader mit Fibaro | SmartHome Blog

Diesen Blogpost hat geschrieben ...

boomx

41 Kommentare

    • Danke :)

      Für was würdest du dich denn interessieren? Ein Tutorial über das Alarm-Panel? Oder die Verknüpfung von dem RFID-Tagreader mit dem Alarm-Panel?

      Gruß

  • Sehr gute Beschreibung. Danke! Funktioniert soweit ganz gut bei mir. Ich habe nur zwei kleine Probleme:

    1) RFID sorgt für ein gelbes Ausrufezeichen in meinem HC2
    2) Nach 1-2 Stunden funktioniert das Ganze immer nicht mehr?! Inkludiere ich das RFID neu und passe ich danach die IDs in den Skripten an geht es wieder...solange bis 1-2 Stunden rum sind?????? Sehr komisch :(

    • Mahlzeit :)

      Danke für dein Lob...

      1) Das liegt an dem fehlenden Template im HC2. Da gibt es schon ein offenes Ticket bei Fibaro. Keine Ahnung, wie lang das dauert, bzw. wann das Update dazu ausgeliefert wird.
      2) Hast du möglicherweise ein Skript in den Main-Loop kopiert? Da gibt es einen Bug, der den Main-Loop nach 1-2 Stunden crasht. Deswegen hab ich das in der Beschreibung in ein extra-Button gelegt.

      Gruß

  • Daniel, die Anleitung klingt super! Ich werde es versuchen...Vielen Dank schon mal vorab.
    Eine Frage noch: Bei mir müsste der Zipato RFID Tag Reader innen im Hausflur liegen, da er wohl keine Außentemperaturen verträgt. Dies bedeutet, dass die Ein- und Aus-Funktion zeitverzögert erfolgen sollte, um auch an der Haustür einen Türsensor (Fibaro) scharf- bzw. unscharf zu schalten. Kann man in deine Alarmschaltung eine kurze Zeitverzögerung einbauen? Dann wäre es perfekt.

    Gruß

    Thomas

    • Hi,

      danke für deinen Kommentar :) Muss mir für deinen Fall mal etwas überlegen. Interessant ist es schon und betrifft bestimmt noch mehr User. Danke für die Anregung :)

      Gruß

    • Hallo,

      ich hatte ähnliche Überlegungen. Zudem wollte ich nicht, dass man gleich von außen sieht, welches System hier läuft.

      Ich habe das Problem an Hand der erweiterten Einstellungen des Türsensors gelöst. Bei "Alarmeinstellungen" die Einstellung "Sensor ist mit Verzögerung scharf geschalten oder er wird den Alarm mit einiger Verzögerung erkennen" aktivieren. dadurch werden die Auswahlmöglichkeiten um den Punkt "Verzögerung AN / AUS" erweitert. Hier jetzt einfach die Zeiten in Sekunden für das Schärfen und Entschärfen der Alarmsystems eingeben. Nach dem Schärfen kann man in der Detailansicht des definierten Raumes sehen, wie die Zeit bis zum Schärfen des Sensors herunterläuft.

      Kommt man nach Hause und öffnet die Tür, hat man jetzt Zeit das System zu entschärfen, ohne die bspw. Sirene zu aktivieren. Kommt man über die Zeit, löst die Sirene aus bzw. es wird Alarm ausgelöst. Die anderen Sensoren, die nicht mit einer Verzögerung versehen sind, lösen nach der Schärfung der Alarmanlage übrigens sofort aus.

      Bei meines Tests im Alltag habe ich übrigens festgestellt, dass es sicherer ist, wenn die Hauseingangstür vor dem Schärfen verschlossen ist - anders ausgedrückt, der Sonsor sollte beim Schärfen gesichert sein. Ansonsten kann es manchmal vorkommen, dass der Türsensor nicht geschärft wird und damit bei Einbruch nicht auslöst.

      Ich habe das System jetzt seit ca. zwei Monaten in Betrieb und hat, als ich mal das Entschärfen vergessen habe, zu meinem Schrecken ;) zuverlässig funktioniert. An dieser Stelle noch ein Dank an boomx!

      Gruß Andreas

      • Hi,

        Danke für das Lob. :) es kommt bald noch ein neuer Artikel mit einem verbesserten Skript. Part 2 sozusagen :)

        Und natürlich Danke für deinen Hinweis.

        Gruß

  • Danke für das Skript. Kann mir jemand bei folgender Sache helfen?

    Ich habe das Script eingerichtet und zwei Szenen erstellt um bei rfid_alarm=0 meine drei Türsensoren zu entschärfen und die zweite Szene um bei rfid_alarm=1 die drei Sensoren zu schärfen. Funktioniert auch wunderbar. ABER: solange man nur mit dem Mini-Pad arbeitet (also mit Code scharf stellen und mit Rfid-Chip entschärfen) hat man keine Probleme. Aber wenn man das Fibaro Alarm-Panal z.B. über das iphone aktiviert, dann weiss dies das Mini-Pad nicht dass das Alarm-Panal scharf ist. Die Variable rfid_alarm bleibt bei =0. Nun kommt amn nach Hause, hält den Rfid-Chip zum entschärfen ran aber der Alarm wird nicht entschärft. Man muss zuerst über das Mini-Pad mit Code scharf stellen und dann kann man erst mit dem Rfid-Chip entschärfen. Diese Situation ist sehr umständlich. ??? Gibt es eine Möglichkeit, dass die Variable rfid_alarm auf=1 gestellt wird, wenn man über das Fibaro-Alarm-Panel (iPhone) scharf stellt. Und =0 gestellt wird, wenn man das Alarm-Panel über die iphone App entschärft. Ich habe schon versucht eine Szene einzurichten, welche rfid_alarm auf setzt, wenn die Türsensoren scharf sind und auf =0 setzt wenn die Türsensoren unscharf sind. Es funktioniert nur nicht. Wenn ich das Alarmpanel über das iphone aktiviere geht der zunächst scharfe Alarm sofort wieder auf unscharf. Die Variable wird nicht auf =1 geändert. Anscheinend weil das Mini-Pad die Variable immer noch auf =0 hat. Kann mir jemand helfe? Die Update Version bezüglich Rfid-Pad habe ich ausprobiert. Leider ist hier das Problem, dass nur zwischen den Zuständen (scharf/unscharf) gewechselt wird wenn der Rfid-Chip rangehalten wird. Man muss also zwingend im iphone den Alarmzustand kontrollieren um entschärfen zu können. Man weiss nicht ohne iphone ob die Alarmanlage scharf oder unscharf ist. Vielen Dank schon mal für Euere Hilfe !!!!!!!!!!

      • Hallo boomx. Vielen Dank für deine Antwort. Aber ich bin damit anscheinend überfordert!!!
        Ich habe mir zwei Szenen eingerichtet, die eine sagt: wenn Module (Eingangstür, Terrassentür, Speisetür) scharf sind, dann rfid_alarm =1. Die zweite: wenn Module unscharf sind, dann rfid_alarm =0. Wenn ich nun die Szene aktiv schalte und über das Fibaro-Alarm-Panel scharf die "ALarmanlage" scharf schalte, dann springt der Slider sofort wieder von grün auf grau und ist deaktiviert. Was mache ich falsch. Desweiteren habe ich zwei Szenen laufen um das Fibaro-Alarm-Panel wie folgt zu aktivieren/deaktivieren wenn über das Mini-Pad gesteuert wird: die erste sagt: wenn rfid_alarm ist =0, dann Modulgruppen (3 Türkontakte) deaktivieren. Die zweite sagt: wenn rfid_alarm =1, dann Modulgruppe aktivieren. ***Wo liegt der Fehler? Gibt es einen Lua-Befehl für das Fibaro-Alarm-Panel selbst? Soll heissen: wenn Lue-Befehl "Fibaro-Alarm-Panel) ist aktiviert dann rfid_alarm = 1. Wenn "Fibaro-Alrm-Panel" ist inaktiv, dann rfid_alarm ist =0. Hoffentlich kannst du mir helfen. Vielen Dank !!!!!!!!!!!!!!

          • Hi,

            mit der alten Version wird das so nicht funktionieren, da er die Szene jede Sekunde abprüft. Wenn du dort manuell die Variable änderst, dann springt er automatisch wieder zurück. Dafür müsstest du die neue Version nehmen, da werden nur die Statusänderungen vom device genutzt. Dieses schaltet dann auch gleich alle devices in den Alarmmodus und entschärft diese auch. Da würde dein Szenario funktionieren.

            Das Alarmpanel kannst du nicht direkt prüfen, höchstens die devices.

            Gruß

  • Hallo Daniel. Vielen Dank für deine Antwort.
    Die neue Version habe ich auch schon ausprobiert. Leider ist mir dabei aufgefallen, dass man zwingend das iPhone braucht um zu wissen in welchem Zustand (scharf oder unscharf) sich die Alarmanlage befindet um keinen Fehlalarm auszulösen. Beispiel: ich verlasse das Haus. Danach meine Frau und diese hat vergessen den Alarm zu schärfen. Ich komme Heim und denke die Anlage ist scharf und halte den Chip an das Mini-Pad um es vermeindlich zu entschärfen. Dadurch wird jedoch die Anlage scharf geschalten (weil sie zuvor unscharf war) und ich löse den Alarm aus. Man muss also immer erst zuvor am iPhone den aktuellen Status der Alarmanlage prüfen.

    In der neuen Version gibt es ja nicht die Unterscheidung zwischen: scharf-schalten mit Code-Eingabe und entschärfen mit Chip. Oder mache ich da einen Denkfehler? Die Taste am Mini-Pad "Home" und "Away" haben für Fibaro-HC2 die gleiche Funktion. Es ist egal welche der beiden Tasten verwendet wird. Sinnvoll wäre dass "Home" für Entschärfen ist und "Away" für Schärfen. Dem ist aber leider nicht so.

    Wie ist es möglich folgende Fragestellung (in der neuen Version) zu lösen?
    1. Die Alarmanlage kann per Code oder iPhone-App scharf gestellt werden.
    2. Die Alarmanlage kann per Chip oder iPhone-App entschärft werden.
    A. Beispiel: die Anlage ist mit der App scharf gestellt worden. Ich komme Heim und entschärfe sie mit dem Chip.
    B. Beispiel: die Anlage ist mit Code geschärft worden. Ich komme Heim und entschärfe sie auch mit dem Chip.
    C. Beispiel: die Anlage ist unscharf. Ich komme Heim und entschärfe sie nochmals mit dem Chip und Nichts passiert (in der aktuellen Version würde man die Alarmanlage jedoch dadurch scharf stellen und einen Alarm auslösen).
    Zusammenfassung: Die Anlage soll sich per Code-Eingabe oder iPhone-App scharf stellen lassen und per Chip oder iPhone-App entschärfen lassen. Der Zustand unscharf soll beibehalten werden egal wie oft man hintereinander den Chip an das Mini-Pad hält.

    Ich hoffe du kannst mir helfen. Vielen Dank, Hans.

    • Hi,

      wir testen grad eine neue Version. Dort kannst du per Option die Möglichkeit deaktivieren, mit RFID-Chips zu schärfen. Dann brauchst du nur noch eine Szene, die die Variable auf 1 setzt, wenn du mit der App schärfst. Mit dieser Version sollte es so umsetzbar sein, wie du es beschreibst.

      Wird wohl zum Wochenende fertig.

      Die Tasten Home/Away können nicht unterschieden werden, da dies bisher nicht von dem HC2 unterstützt wird.

      Gruß

  • Hallo Zusammen, ich brauche wieder ein bisschen eure Unterstüzung.
    Müchte den Code der RFID Tags herausfinden aber ich finde Sie nicht, Wann ich unter api7devices und ID der reader kommt nur folgendes

    {"id...

    Danke im voraus-
    Gruss Luis

  • Hey Leute!

    Ich bin echt zu blöd! Ich versuche gerade, einen RFID Tag anzulernen. WIE mache ich das? Das es nicht nur über die Tasten gehen kann, ist für mein dafürhalten klar. Sonst könnte ja jeder seinen eigenen Tag anlernen. Bei mir piept das Ding immer acht mal und das wars......

  • Hallo Daniel!

    Das habe ich gemacht und auch gelesen. Das Modul ist hinzugefügt und von der HC2 konfiguriert (habe es jetzt nochmals gelöscht und hinzugefügt). Trotzdem piept und blinkt es sechs mal.

    Wenn ich jetzt die Device ID abprüfe, bekomme ich folgende Meldung:

    {"id":797,"name":"RFID","roomID":508,"type":"com.fibaro.doorLock","baseType":"com.fibaro.securityMonitoring","enabled":true,"visible":true,"isPlugin":false,"parentId":796,"remoteGatewayId":0,"interfaces":["battery","pinCode","zwave","zwaveAlarm","zwaveWakeup"],"properties":{"parameters":[],"zwaveCompany":"Wintop","zwaveInfo":"3,3,67","zwaveVersion":"0.28","wakeUpTime":7200,"pollingTimeSec":0,"alarmLevel":"0","alarmType":"0","batteryLevel":"0","batteryLowNotification":"true","configured":"true","dead":"false","defInterval":"0","deviceControlType":"0","deviceIcon":"79","emailNotificationID":"0","emailNotificationType":"0","endPointId":"0","liliOffCommand":"","liliOnCommand":"","log":"","logTemp":"","manufacturer":"","markAsDead":"true","maxInterval":"0","minInterval":"0","model":"","nodeId":"176","parametersTemplate":"0","productInfo":"0,151,97,49,69,1,0,28","pushNotificationID":"0","pushNotificationType":"0","remoteGatewayId":"0","saveLogs":"true","secured":"0","smsNotificationID":"0","smsNotificationType":"0","stepInterval":"0","useTemplate":"true","userCodes":"[{\"code\":\"\",\"id\":1,\"status\":\"available\"},{\"code\":\"\",\"id\":2,\"status\":\"available\"},{\"code\":\"\",\"id\":3,\"status\":\"available\"},{\"code\":\"\",\"id\":4,\"status\":\"available\"},{\"code\":\"\",\"id\":5,\"status\":\"available\"},.....
    ........{\"code\":\"\",\"id\":255,\"status\":\"available\"}]","userDescription":"","value":"false"},"actions":{"getUserCode":1,"reconfigure":0,"secure":0,"setInterval":1,"setUserCode":4,"unsecure":0},"created":1453917253,"modified":1453917253,"sortOrder":346}

    Die dreißig Zeilen dazwischen lasse ich jetzt mal weg.
    Die Szene ist soweit konfiguriert. Wenn ich sie manuell starte bekomme ich folgenden DEBUG:

    [DEBUG] 19:13:27: RFID-Scene Version 1.1.3 gestartet
    [DEBUG] 19:13:27: Szene manuell gestartet. Auslesen der RFID-Infos
    [DEBUG] 19:13:27: Diese Info in die lokalen Arrays rfid1,rfid2,code eintragen
    [DEBUG] 19:13:27: Kein Arm-Delay erkannt.

    Somit scheint was mit dem RFID-Panel noch nicht zu stimmen richtig?

    Denn das hier, habe ich bereits gemacht:

    Drückt den Home-Button auf dem Tagreader
    Eine Sekunde warten, bis das Gerät piept und die LED leuchtet
    RFID-Tag vorhalten (sollte bei erfolgreichen Einlesen kurz piepen)
    http://YOUR_HC2_IP/api/devices?id=RFID_DEVICE_ID aufrufen
    Folgenden String suchen: properties/userCodes/id:0
    Dort findet Ihr eine Angabe, die so ausieht: u00C2A
    Dies ist der Code eures RFID-Tags.

    Viele Grüße

    Christian

      • Guten Morgen liebes Forum!

        Habe meinen Fehler gefunden. Beim Hinzufügen des Moduls, müßen alle drei Haken gesetzt werden. das war mir nicht klar. :-) *andiestirnklatscht*

        - Anhaken, wenn das Gerät weiter von der Zentrale entfernt ist
        - NWI - Netzwerkweite Inklusive
        - Füge Sicherheitsmodus hinzu, wenn es das Gerät unterstützt

        Viele Grüße

        Christian

        • Hi,

          brauchst du eigentlich nicht. Habe es letztens selbst neu eingebunden ohne die Haken zu setzen ;) Vor allem da der Tagreader kein Z-Wave Plus Gerät ist, bringt dir der Secure-Mode eher wenig.

          Gruß

  • Hallo, ich finde
    "nachchdem Ihr mit den Angaben im Skript fertig seid, legt Ihr noch eine Variable „rfid_alarm“ an." nicht.
    Wo genau mach ich das?

    Vielen Dank

    • Hi,

      klar, das geht auch. :) Dafür könntest du das neuste Update nehmen und dann dort die Widget-Funktion nutzen, indem du mit einer anderen Szene die Szene startest.

      Gruß

      • Danke für die schnelle Antwort....

        könntest du das kurz erläutern wie du das meinst ? :D

        Also HC2 is up to date...
        Wie starte ich denn das "Scharfschalten" über ne andere Scene?

        • Du kannst andere Szenen mit fibaro:startScene ausführen. Dies würde in dem Fall gehen, du könntest das RFID-Skript nutzen und die Szene über vorgestellte Funktion starten.

          Gruß

          • Hallo Boomx

            danke erstmal für die Antwort...und sorry für meine späte Antwort.

            Ich möchte gern über den Schalter den Alarm anschalten wie wenn ich der Handyapp über das Alarmsymbol streiche mit den Einstellungen die ich im Alarmpanel eingestellt habe.
            Wenn ich das über SceneActivation mache dann gibt es auch keine zeitverzögerung z.b. von 10 sek. bzw. würde auch die "Emergency Lights" würde auch nicht starten oder?

          • Hi,

            die Zeitverzögerung läuft über die einzelnen Module, nicht über die Szene. Du kannst das scharfschalten auch mit einer Blockszene umsetzen. Die Aktivitäten, also auch die Emergency Lights laufen erst, wenn das Alarmpanel ausgelöst wurde.

            Gruß

Gib deinen Senf dazu!

Cookie Consent mit Real Cookie Banner