148

So aktivierst du deinen Alarm mit dem RFID Tagreader

by boomx8. September 2016

In einem der letzten Artikel haben wir euch gezeigt, wie Ihr den RFID Tagreader mit der Firmware-Version 4.091 Beta ans Laufen bekommt und die einzelnen Tags richtig einrichtet. Nun präsentieren wir euch eine fertige Szene mit der Ihr den Alarm steuern könnt.

Wie bereits in dem anderen Artikel, welchen Ihr hier finden könnt, erwähnt wurde, können nicht alle Funktionen 1:1 aus dem alten RFID-Skript übernommen werden.

Folgende Funktionen sind (bisher) in dem neuen Skript schon vorhanden:

  • Schärfen/Entschärfen des Alarm und Benachrichtung per Push
  • Prüfung offener/ausgelöster Sensoren und Benachrichtung per Push
  • Öffnen eines vorhandenen Doorlocks (z.B. danalock)
  • Funktion zum Setzen eigener Befehl nach Statusänderung
  • Variable „PresentState“ wird unterstützt
  • Arm-Delay wird unterstützt (wird automatisch ermittelt, alle Sensoren müssen gleich eingestellt sein)
  • Firmware-Bug (fibaro:call(sensorID[j], ’setArmed‘, ‚0‘) funktioniert nicht) wird umgangen

Die notwendigen IDs

In diesem Teil des Codes werden die notwendigen IDs der Module festgelegt. Die Angaben zu den IDs der Sensoren sind zwingend einzutragen, die Erklärungen zu den einzelnen Punkten findet Ihr in den Kommentaren zu den jeweiligen Punkten und sind eigentlich selbsterklärend. Die Variable countID, welche häufig bei for-Schleifen genutzt wurde, wird nicht mehr benötigt.

Weitere Angaben werden an dieser Stelle nicht benötigt. Das Skript prüft den Inhalt des Arrays und entscheidet dann, ob Ihr diese Funktion nutzen wollt. Solltet Ihr keine doorlock-Integration wünschen, dann müsst Ihr einfach das Array leeren. Dies würde dann so aussehen:

Die weiteren Optionen

Diese sind im Vergleich zum etwas älteren Skript ein wenig kürzer gefasst. Eigentlich gibt es nur zwei zusätzliche Optionen. Dies ist zum einen die Aktivierung von eigenen Aktionen, welche nach dem Aktivieren/Deaktivieren des Alarm ausgeführt werden. Hierfür muss die lokale Variable „own_action“ auf true (Aktionen werden ausgeführt) oder auf false (Aktionen werden nicht ausgeführt) gesetzt werden.

Sofern die Variable auf true gesetzt ist, werden die folgenden Funktionen ausgeführt:

Hier können jetzt beliebige Aktionen (Auschalten von Wallplugs, usw.) eingesetzt werden. Die Funktion actionsafterArmed() wird nach der Aktivierung des Alarm ausgeführt und die Funktion actionsafterDisarmed() nach der Deaktivierung.

Zum anderen gibt es In der aktuellen Beta 4.091 einen Bug, welcher verhindert, dass der Alarm mit der normalen LUA-Funktion fibaro:call(sensorID[j], ’setArmed‘, ‚0‘) deaktiviert werden kann. Mit diesem Skript haben wir dieses Problem umgangen und Ihr könnt dies mit der lokalen Variablen „disarmed_bug“ umgehen. Diese muss dann im Skript auf true gesetzt werden. Sollte Fibaro das Problem in einer der nächsten Firmwares (hoffentlich der nächsten) fixen, kann der Wert dann einfach auf false gesetzt werden.

Alarm-Schaltung mit dem neuen Skript

Positiv an der offiziellen Integration des RFID Tagreades seitens Fibaro: Es ist im Vergleich zum alten Skript schnell. Das Auslesen der API wird hier mit Sicherheit viel Zeit gekostet haben. Allerdings gibt es auch ein paar negative Aspekte zu beklagen. Viele Funktionen des alten Skriptes lassen sich so nicht mehr umsetzen. Vielleicht wird Fibaro aber auch noch weitere Updates nachschieben, so dass das Skript an der Stelle wieder erweitert werden könnte.

Das neue RFID-Skript könnt Ihr euch HIER downloaden.

Am Ende liegt die Entscheidung bei euch, ob wir weiterhin auf der Firmware-Version 4.070 bleibt und alle Funktionen des alten Skriptes nutzt, oder ob Ihr die neue, schnellere Version einsetzen wollt und dafür auf die alten Funktionen verzichtet. Überlegt es euch gut, da ein Recovery auf eine ältere Version nicht möglich ist.

Es wird natürlich auch hier wieder stetige Updates des Skriptes geben und es stehen bereits auch schon zukünftige Funktionen auf der To-Do-Liste:

  • Unterstützung mehrerer RFID Tagreader
  • E-Mail-Support (anstatt Push)
  • Widget-Support

Solltet Ihr euch noch weitere Funktionen wünschen, dann würden wir uns freuen, wenn Ihr uns einen Kommentar hinterlasst :)

Alarm Icon

RFID-Sync

About The Author
boomx
boomx
Moin, ich bin Daniel, Anwendungsentwickler von Beruf. Hier auf siio unterstütze ich die Kollegen bei der Programmierung mit LUA, bzw. bei der Integration von neuen Netzwerkgeräten und schreibe Tutorials rund um das HomeCenter 2 von Fibaro, welches ich auch privat im Einsatz habe.
148 Comments
  • Valle
    9. September 2016 at 7:24

    Hallo boomx,

    zuest einmal danke für die tollen HowTos die Du immer erstellst. Ich habe bereits mein RFID Leser in meine Fibaro integriert mit dem Script, welches ich auch im Forum gepostet hatte. Leider habe ich das Problem, wenn z.B. meine Familie den RFID per Transponder aktiviert haben, kann ich diese nicht mehr mit der Fibaro APP deaktivieren. Gibt es hierfür eine Möglichkeit/Trick? Der RFID Keypad lässt sich ja auch nicht über die Fibaro APP „unlocken“.

    Gruß, Valle

    • boomx
      9. September 2016 at 9:02

      Hi,

      eigentlich sollte das funktionieren. Wenn über die App entschärft wird, dann wird natürlich das Skript nicht ausgeführt. Aber es sollte möglich sein, den Status von dem RFID Reader zu ändern. Muss ich nachher mal testen.

      Gruß

    • Léonardin
      23. Oktober 2016 at 19:17

      Salut Boomx

      Sorry ich bin kein profi und ich stelle hier kurz meine Frage. Ich möchte mein ZIPATO KEYPAD zum Schärfen und Entschärfen des Alarmpanels nutzen. Ich muss zugeben, dass ich mit all den Artikels etwa überfordert bin. Kannsz du mir vielleicht dabei helfen?

      Als ich den RFID-Code der Tag suchen möchte, bekomme ich beispielsweise diese Meldung:
      {„type“:“ERROR“,“reason“:“WRONG_TYPE“,“message“:“id: expected unsigned int“}

      Vielen Dank und Gruss, Daniel (Léonardin)

  • campos
    9. September 2016 at 8:47

    Hallo. Danke erstmal für dein Script und deine Bemühungen.
    Leider habe ich zwei Probleme : 1. Ich kann – wenn ich den Alarm mit dem RFID gesetzt habe (mit 30 Sek. delay ) ihn nicht innerhalb dieser 30 Sek. wieder übers RFID deaktivieren. Geht dann nur übers IPad/App…
    Und 2. Ich bekomme im Debug von dem Script : line 47 attempt to index global `danalockid(a nil value´)
    Zeile 11 fürs Danalock habe ich so ausgefüllt : local doorlockID = {} — IDs der doorlocks…
    Hab ich was falsch gemacht ? Gruß

    • boomx
      9. September 2016 at 8:58

      Hi,

      habe das Skript nochmal aktualisiert, da tritt der Fehler mit danalookID nicht mehr auf :) Zu dem anderen Problem habe ich spontan keine Lösung. Das Skript geht für die Zeit in den Wartemodus und nimmt keine Befehle mehr an. Muss ich mir etwas überlegen.

      Gruß

  • 9. September 2016 at 9:05

    Danke für deine Arbeit boomx! *thumbsup*

  • campos
    9. September 2016 at 9:24

    Ok. Vielen Dank. Also lade ich es oben nochmal ?

  • campos
    9. September 2016 at 10:10

    Läuft. Top. Danke fürs Script und den Support.

  • Valle
    9. September 2016 at 16:00

    Hi,

    ich habe ein Problem, ggfs. kann mir einer Helfen. Das Aktivieren und Deaktivieren geht wie gewünscht ohne Probleme. Die Haustüre habe ich so eingestellt, dass sie mit einer Verzögerung von 60 Sekunden auslöst. Öffne ich jetzt bei aktivierter Alarmanlage die Haustüre, so zählt der Countdown von 60 runter. Ich deaktiviere jetzt die Alarmanlage und die Haustüre sowie der vollständige Alarmstatus wechselt vom Status „armed“ in „unarmed“ jedoch zählt der Countdown weiter bis der Alarm ausgelöst wird. Hat jemand dazu eine Erklärung und einen Tipp wie ich das Problem lösen kann?

    Gruß, Valle

    • boomx
      9. September 2016 at 16:03

      Hi,

      das ist noch ein Bug der Firmware. Wird hoffentlich mit der nächsten Firmware behoben.

      Gruß

      • huebi
        9. September 2016 at 16:40

        Hi Boomx,

        habe das Problem mit dem Delay auch. Ist etwas lästig, da man aus der Sache nicht mehr zeitnah raus kommt. Die Variable steht ja dann auf Home und ein neues drücken auf Away bringt auf die schnelle auch nichts, da dann bei mir wieder die 300 Sekunden runter gezählt werden.

        Wenn ich das oben richtig gelesen habe, dann ist der RFID Reader im Moment nicht zu gebrauchen, wenn er im Haus untergebracht ist?

        Ansonsten wie immer eine tolle Arbeit. Ich wäre ohne deine Hilfe schon am übertragen der Codes gescheitert. :)

        Gruß
        huebi

      • Valle
        9. September 2016 at 16:53

        Danke, die Bugs bei Fibero sind echt lästig. Aber so ist das mit Betas ;-)

  • columbo1979
    11. September 2016 at 7:58

    Hi,

    durch dieses Delayproblem ist es vorerst ja leider nicht zum aktivieren/deaktivieren einer alarmanlage umsetzbar, richtig? das die alarmanalage auch nach erfolgereichem deaktivieren trotzdem angehen würde durch das herunterzählen des delays… oder irre ich? gibt es dafür eine lösung?

    danke

    • boomx
      11. September 2016 at 18:21

      Hi,

      wenn der RFID innen angebracht ist, ja. Ansonsten macht der Alarm-Delay ja keinen Sinn und der Arm-Delay funktioniert ja ohne Probleme.

      Eine Lösung gibt es bisher noch nicht.

      Gruß

  • Markus
    Markus
    12. September 2016 at 13:30

    Hallo ,
    ich habe ebenfalls Probleme mit dem Alarm Delay. Denn mein Tag Reader hängt auch innen. ;-(
    Falls jemand ne Lösung hat …. Die Bugs nerven langsam …..

    DANKE

    Gruß
    Markus

    • 13. September 2016 at 16:57

      Nur insofern, die eingestellte Verzögerung abzuwarten und den dann aktivierten Alarmmodus mittels App, bei mir iPhone/iPad, zu deaktivieren. Bis auf diesen Bug scheint die grundlegende Alarmanlagenfunktionalität nicht weiter eingeschränkt zu sein.

      Gruß Andreas

  • Chris
    14. September 2016 at 12:44

    ich hätte mal ne frage.
    bin noch ein kompletter Neuling im Bereich Lua
    würde gerne als own Action bei dem Alarmscript etwas hinzufügen krieg es nur noch nicht in meinen kopf rein
    Ich wollte wenn der Alarm scharf ist das mein LED Panel rot eingeschaltet wird. Und wenn Alarm entschärft wird 3 mal grün aufleuchtet.
    Ich habe auch noch 2 led Panels eins und möchte bei mit einer unterschiedlichen Helligkeit leuchten lassen.
    Hab im Forum mal gesucht was zu finden bin jedoch noch nicht fündig geworden.

    Gruß
    Chris

    • boomx
      14. September 2016 at 14:13

      Hi,

      in der LUA-Szene hast du links eine Liste mit all deinen Räumen. Wenn du dort mit der Maus drüber gehst, werden die alle Module des jeweiligen Raumes angezeigt. In der nächsten Ebene findest du dann alle möglichen Actions zu deinen Modulen. Diese kannst du dann einfach in die beiden Funktionen einfügen.

      Schau dir am Besten mal folgende Seite an, da erfährst du mehr über die möglichen LUA-Befehle:

      http://developer.fibaro.com/

      Gruß

  • Jojo
    17. September 2016 at 20:27

    hey,

    irgendwie kann ich nach einem alarm per zipato diesen nicht mehr deaktivieren. Nur per Handy oder Browser… sollte das nicht mit dem zipato möglich sein?

    • Jojo
      17. September 2016 at 20:44

      … und wenn ich nach Hause komme und innerhalbt der 15 Sekunden Home bei Zipato aktiviere, wird der Alarm dennoch ausgelöst…

      • boomx
        17. September 2016 at 20:56

        Bekannter Bug, wird mit der nächsten Version vom HC2 behoben sein.

        Gruß

        • Jojo
          18. September 2016 at 12:20

          Hallo Boomx,

          also kann es aktuell nur mit der App / Browser deaktiviert werden?

          Gruß

          • Jojo
            18. September 2016 at 12:34

            Es ist doch richtig, wenn folgendes eingestellt ist:

            Szene:

            –[[
            %% properties
            131 value
            %% events
            %% globals
            –]]

            — notwendige IDs
            local sensorID = {48} — IDs der Sensoren
            local phoneID = {6} — IDs der Handys
            local doorlockID = {} — IDs der doorlocks

            — zusätzliche Optionen
            local own_action = false — eigene Aktionen ausführen; Funktionen müssen befüllt werden
            local disarmed_bug = true — Firmware Bug umgehen

            — eigene Funktionen
            function actionsafterArmed()
            fibaro:debug(‚Führe eigene Funktionen nach dem Schärfen aus‘)
            end

            function actionsafterDisarmed()
            fibaro:debug(‚Führe eigene Funktionen nach dem Entschärfen aus‘)
            end

            — AB HIER NICHTS MEHR ÄNDERN
            local trigger = fibaro:getSourceTrigger()
            local rfid_value_status = “

            Debug = function ( color, message )
            fibaro:debug(string.format(‚%s‘, „span“, color, message, „span“))
            end

            function armedcheckSensorID(array)
            for j=1, #sensorID do
            if sensorID[j] ~= nil then
            if (tonumber(fibaro:getValue(sensorID[j], ‚armed‘)) ~= 0) then
            return false
            end
            end
            end
            return true
            end

            — Funktion für die Öffnung der Tür
            function openDoor()
            if (doorlockID[0] ~= nil) then
            fibaro:debug(‚Türschlösser werden geöffnet.‘)
            for j=0, #doorlockID do
            if doorlockID[j] ~= nil then
            fibaro:call(doorlockID[j],’unsecure‘)
            end
            end
            end
            end

            — Funktion zum Versenden der Push
            function sendPush(text)
            if (phoneID[1] ~= nil) then
            for i=1, #phoneID do
            if phoneID[i] ~= nil then
            fibaro:debug(‚Versende Push an ID ‚ ..phoneID[i])
            fibaro:call(phoneID[i],’sendPush‘, text, ‚alarm‘)
            end
            end
            end
            end

            function setArmedStatus(set_status)
            if set_status then
            fibaro:debug(‚Sensoren werden scharf geschaltet.‘)
            for k=1, #sensorID do
            if sensorID[k] ~= nil then
            if (tonumber(fibaro:getValue(sensorID[k], ‚value‘)) == 0) then
            fibaro:call(sensorID[k], ’setArmed‘, ‚1‘)
            else
            local sensorname = fibaro:getName(sensorID[k])
            local sensorroom = fibaro:getRoomNameByDeviceID(sensorID[k])
            fibaro:debug(‚ACHTUNG: ‚ .. sensorname .. ‚ im Raum: ‚ .. sensorroom .. ‚ nicht sicher. Sende Push.‘)
            sendPush(‚ACHTUNG: ‚ .. sensorname .. ‚ im Raum: ‚ .. sensorroom .. ‚ nicht sicher.‘)
            end
            end
            end
            else
            fibaro:debug(‚Sensoren werden entschärft.‘)
            for j=1, #sensorID do
            if sensorID[j] ~= nil then
            if (disarmed_bug) then
            setArmed(sensorID[j])
            else
            fibaro:call(sensorID[j], ’setArmed‘, ‚0‘)
            end
            end
            end
            end
            end

            function setArmed(deviceId)
            local dev = api.get(‚/devices/‘ .. deviceId)
            dev.properties.armed = false
            api.put(‚/devices/‘ .. deviceId, dev)
            end

            — Funktion zum Anlegen einer Globalen Variablen
            function globalVar(var,val)
            local http = net.HTTPClient()
            http:request(„http://127.0.0.1:11111/api/globalVariables“, {
            options = {
            method = ‚POST‘,
            headers = {},
            data = ‚{„name“:“‚..var..'“,“value“:“‚..val..'“}‘,
            timeout = 10000
            },
            success = function(response)
            local result = response.data;
            if response.status == 200 or response.status == 201 then
            fibaro:debug(‚Status: ‚ ..response.status.. ‚ – Variable wurde angelegt‘)
            else
            fibaro:debug(‚Error: ‚ ..response.status.. ‚ – Zugriff verweigert‘)
            end
            end,
            error = function(err)
            fibaro:debug(‚[ERROR] ‚ .. err)
            end
            })
            end

            if (trigger[‚type‘] == ‚property‘) then
            fibaro:debug(‚RFID-Szene 3.1 (Official) gestartet.‘)
            local rfid_ID = tonumber(trigger[‚deviceID‘])
            local rfid_value = tonumber(fibaro:getValue(rfid_ID, ‚value‘))
            if (rfid_value == 1) then
            rfid_value_status = ‚Away‘
            Debug(‚red‘, ‚Status ‚ ..rfid_value_status.. ‚ gesetzt.‘)
            setArmedStatus(true)
            if (fibaro:getGlobal(‚PresentState‘) ~= nil) then
            fibaro:debug(‚Benötigte Variable PresentState erkannt.‘)
            fibaro:setGlobal(‚PresentState‘, ‚Away‘)
            else
            fibaro:debug(‚Benötigte Variable PresentState NICHT erkannt. Wird erstellt.‘)
            globalVar(‚PresentState‘, ‚Away‘)
            end
            local delay = tonumber(fibaro:getValue(sensorID[1], „armDelay“))
            if (delay ~= 0) then
            fibaro:debug(‚Arm-Delay erkannt. Arm-Delay: ‚ ..delay)
            delay = delay + 1
            fibaro:sleep(delay*1000)
            end
            if (not armedcheckSensorID(sensorID)) then
            if (own_action) then
            actionsafterArmed()
            end
            sendPush(‚ALARMANLAGE aktiv!‘)
            end
            elseif (rfid_value == 0) then
            rfid_value_status = ‚Home‘
            Debug(‚green‘, ‚Status ‚ ..rfid_value_status.. ‚ gesetzt.‘)
            setArmedStatus(false)
            if (fibaro:getGlobal(‚PresentState‘) ~= nil) then
            fibaro:debug(‚Benötigte Variable PresentState erkannt.‘)
            fibaro:setGlobal(‚PresentState‘, ‚Home‘)
            else
            fibaro:debug(‚Benötigte Variable PresentState NICHT erkannt. Wird erstellt.‘)
            globalVar(‚PresentState‘, ‚Home‘)
            end
            if (armedcheckSensorID(sensorID)) then
            if (own_action) then
            actionsafterDisarmed()
            end
            sendPush(‚ALARMANLAGE inaktiv!‘)
            openDoor()
            end
            end
            else
            fibaro:debug(‚Szene manuell gestartet. Widget-Support deaktiviert.‘)
            fibaro:debug(‚Hier werden noch weitere Funktionen folgen.‘)
            end

            Dann eine Szene für die Sirene:

            –[[
            %% properties

            %% globals
            –]]

            fibaro:call(1, „turnOn“);
            fibaro:call(6, „sendPush“, „Status: Alarmanlage ausgelöst“, „breached“);

            while tonumber(fibaro:getValue(16, „armed“)) > 0 do
            fibaro:debug(‚Alarm is breached…‘);
            fibaro:sleep(1*1000);
            end

            fibaro:call(129, „turnOff“);

            in Fibaro Anlarm:

            Die Szene Sirene eingebunden nach 15 sek.

            Dann sollte es doch eigentlich mit zipato soweit klappen (wenn dann das deaktivieren mit der nächsten Version kommt). Oder habe ich da ein Fehldenker?

          • boomx
            18. September 2016 at 17:34

            Ja, so ist es :(

            Gruß

  • fs1997
    fs1997
    21. September 2016 at 18:57

    Hallo Boomx,

    Ich habe jetzt die 4.092 installiert und folgendes festgestellt. Wenn ich den local disarmed bug auf false Stelle, werden die Funktionen nach dem entschärfen nicht mehr ausgeführt.
    Ist das ein generelles Problem oder ein Fehler bei mir?

    Gruss

    • boomx
      21. September 2016 at 19:31

      Hi,

      das sollte funktionieren. Hab es gestern nach dem Update getestet und es hat ohne Probleme funktioniert.

      Gruß

      • fs1997
        fs1997
        22. September 2016 at 21:24

        Also, irgendwie will das bei mir nicht mehr. Komischerweise wird die Variable Home noch gesetzt aber der Rest der Funktionen nicht mehr
        Im Debug steht folgendes:
        [DEBUG] 19:10:37: RFID-Szene 3.1 (Official) gestartet.
        [DEBUG] 19:10:37: Status Away gesetzt.
        [DEBUG] 19:10:37: Sensoren werden scharf geschaltet.
        [DEBUG] 19:10:37: Benötigte Variable PresentState erkannt.
        [DEBUG] 19:10:37: Arm-Delay erkannt. Arm-Delay: 60
        [DEBUG] 19:11:38: Führe eigene Funktionen nach dem Schärfen aus
        [DEBUG] 19:11:39: Versende Push an ID 177
        [DEBUG] 19:11:39: Versende Push an ID 170
        [DEBUG] 21:15:41: RFID-Szene 3.1 (Official) gestartet.
        [DEBUG] 21:15:41: Status Home gesetzt.
        [DEBUG] 21:15:41: Sensoren werden entschärft.
        [DEBUG] 21:15:41: Benötigte Variable PresentState erkannt.

        –[[
        %% properties
        393 value
        %% events
        %% globals
        –]]

        — notwendige IDs
        local sensorID = {488, 41, 37, 312, 320} — IDs der Sensoren
        local phoneID = {177, 170} — IDs der Handys
        local doorlockID = {} — IDs der doorlocks

        — zusätzliche Optionen
        local own_action = true — eigene Aktionen ausführen; Funktionen müssen befüllt werden
        local disarmed_bug = false — Firmware Bug umgehen

        — eigene Funktionen
        function actionsafterArmed()
        fibaro:debug(‚Führe eigene Funktionen nach dem Schärfen aus‘)
        fibaro:call(501, „turnOn“);
        fibaro:call(503, „turnOn“);
        fibaro:call(505, „turnOn“);
        fibaro:call(507, „turnOn“);
        fibaro:call(380, „turnOn“);
        fibaro:setGlobal(„Alarm“, „Ja“);
        fibaro:setGlobal(„PresentState“, „Away“);
        fibaro:startScene(395);
        end

        function actionsafterDisarmed()
        fibaro:debug(‚Führe eigene Funktionen nach dem Entschärfen aus‘)
        fibaro:call(501, „turnOff“);
        fibaro:call(503, „turnOff“);
        fibaro:call(505, „turnOff“);
        fibaro:call(507, „turnOff“);
        fibaro:call(380, „turnOff“);
        fibaro:setGlobal(„Alarm“, „Nein“);
        fibaro:setGlobal(„PresentState“, „Home“);
        end

        • boomx
          22. September 2016 at 23:00

          Hi,

          die Variable PresentState wird automatisch durch das Skript gesetzt. Die brauchst du nicht extra aufführen. Die Funktionen werden natürlich erst nach den 60 Sekunden ausgeführt. Das ist dir bewusst?

          Gruß

          • fs1997
            fs1997
            23. September 2016 at 7:27

            Das ist mir klar, aber sollte sich ja nur auf die Funktionen vor entschärfen beziehen die ja laufen. Die nicht funktionierenden Funktionen nach entschärfen sollten ja sofort ausgeführt werden. War jedenfalls früher immer so.
            Mit PresentState war mir nicht bewusst.
            Ich lösche einfach alles und fang nochmal von vorne an. Mal sehen ob das klappt. Danke

          • fs1997
            fs1997
            23. September 2016 at 23:33

            Nein, auch komplett die Szene neu aufzubauen klappt nicht. Der Alarm wird nicht deaktiviert, Push erfolgt nicht und die Funktionen nach disarm werden auch nicht ausgeführt. Noch eine Idee?

  • columbo1979
    22. September 2016 at 17:21

    Habe mal die 4.092 Firmware installiert und den RFID Reader neu hinzugefügt. Da konnte ich nun beim anlernen sagen, was der schalten soll (war bei der .91 nicht). Da habe ich „ALARM AN/AUS“ aktiviert. Allerdings kommt immer beim Chip nutzen: “
    [17:20:42] ID 365: Unregistered code“ –

  • Jojo
    23. September 2016 at 13:20

    So das klappt mit der 92er Version. Wie columbol1979 geschrieben hat, muss „disarmed_bug auf false“ gestellt sein. zumindest hat es dann erst bei mir geklappt.

  • Valle
    23. September 2016 at 23:34

    Nach dem Update auf 4.092 und setzen des Parameters disarmed_bug auf false funktioniert die Funktion „actionsafterDisarmed “ nicht mehr, sobald z.B. vorher eine Türe geöffnet wurde und der Alarm Counter zählt runter. Es wird zwar disarmed aber wie gesagt die Funktion actionsafterDisarmed wird nicht mehr ausgeführt.

  • Valle
    23. September 2016 at 23:36

    achja, Parameter own_action ist auf true gesetzt

  • boomx
    24. September 2016 at 0:50

    Ja, es scheint ein Problem mit den eigenen Aktionen nach dem Entschärfen zu geben. Mir ist das nicht aufgefallen, weil ich noch eine andere Szene im Einsatz hatte, welche die Aktoren schaltet.

    Hier scheint es aber auch noch ein Problem mit der Firmware zu geben. Mit 4.091 hat das Skript ja funktioniert. Muss ich mal testen.

    Gruß

  • Valle
    24. September 2016 at 9:07

    @boomx: danke. Gibt es keine Möglichkeit mehr, die Sensoren zu prüfen? Falls dien nicht ent- oder geschärft werden können das es einen Hinweis gibt?

    • boomx
      24. September 2016 at 14:14

      Beim Schärfen wird geprüft. ^^ Anscheinend ist die API zu langsam, im Moment der Prüfung sind die Sensoren noch geschärft und das Skript führt dann die eigenen Aktionen nicht aus. Sieht mir nach einem Problem mit der Firmware aus.

      Werd nächste Woche mir das Problem mal genau anschauen.

      Gruß

  • columbo1979
    24. September 2016 at 12:27

    Ich suche die ganze Zeit nach einer Lösung (welche im Forum auch schon geschrieben wurde aber ich es einfach nicht wieder finde), dass nach dem „scharf schalten“ und der Prüfung eine Meldung kommen soll „Alarmanlage aktiv“. Es wird immer nur gezeigt, wenn etwas offen ist oder „Alarm inaktiv“. Ich möchte aber auch eine Meldung haben „Alarm aktiv!“ – da gab es vor kurzem eine Lösung im Forum zu. Aber wo ist die hin?

    • boomx
      24. September 2016 at 14:16

      Es wird doch eine Push verschickt, wenn die Alarmanlage aktiviert wurde… Sollte das bei dir nicht der Fall sein, dann sind die Settings nicht richtig. Siehe:

      sendPush('ALARMANLAGE aktiv!')

      Gruß

  • columbo1979
    24. September 2016 at 15:02

    steht bei mir auch in der line 153… und es kommt auch alles an meldungen…aber nicht, ALARMANLAGE aktiv (wobei laut Fibaro die Alarmanlage aktiv ist…

    • Valle
      24. September 2016 at 15:13

      @columbo1979: bei mir kommt „Alarm aktiv“ und aber selten „Alarm inaktiv“ ;-)

      • boomx
        24. September 2016 at 21:42

        Für mich bestätigt sich dadurch, dass die Push für „Alarm aktiv“ funktioniert. Die „Alarm inaktiv“-Push sollte eigentlich mit dem Bugfix funktionieren. Konnte es bisher noch nicht testen ^^

  • 24. September 2016 at 20:57

    Könnte mir bitte jemand sagen, wo ich den arm-delay einstelle bzw. hinterlege? Ist das im aktuellen Script überhaupt möglich? Danke und Gruß.

  • 25. September 2016 at 9:34

    Super Howto’s, ich habe nun dennoch eine Frage:

    Ich habe im Eingangbereich 2 Door-Sensoren und in diesem Bereich ist auch der RFID Zipato Reader. WIe kann ich dies steuern dass die beiden Door-Sensoren erst einen Alarm nach etwa 10 Sek. auslösen oder der erste Falsche Code erfasst wurde.
    Wie kann ich die beiden Door-Sensoren scharf schalten sobald beide Türen geschlossen sind nach dem Verlassen des Hauses?

    Danke für Eure Hilfe.

    Gruss

  • 2. Oktober 2016 at 14:30

    Bei mir funktioniert das RFID-Pad leider sehr unzuverlässig (HC2 4.100)

    Es kommt jetzt in der Testphase schon häufig vor, dass ich Away oder Home setze und das Pad danach minutenlang nicht reagiert. Die Tasten nehmen keine Kommandos mehr an…

    Außerdem verschickt das o.g. Skript bei mir keine Push-Meldung, wenn die Alarm-Anlage scharf geschaltet wird. Nur „ALARMANLAGE inaktiv!“ wird verschickt. Und beim Scharfschalten, wenn noch Fenster offen sind. Aber das „ALARMANLAGE aktiv!“ kommt bei mir nicht. Irgendwann kams einmal im Tests, aber seitdem nicht mehr…

    • boomx
      2. Oktober 2016 at 18:31

      Hi,

      hast du die gefixte Version genommen?

      http://pastebin.com/qQWYBvgc

      Da ist das Problem mit den Push gefixt, hatte es hier bereits in den Kommentaren veröffentlicht.

      Das RFID Keypad funktioniert mit der Version 4.100 ohne Probleme. Bei dir könnten es Reichweitenprobleme, falsche Inklusion oder der nicht richtig gedrückte Sabotage-Kontakt sein. Lern es am Besten mal neu an.

      Gruß

      • 3. Oktober 2016 at 10:46

        Danke für die Antwort boomx!

        Ich habe das Keypad gelöscht und neu integriert.
        Die Probleme haben sich dadurch nicht gelöst. Ich hab jetzt 2-3 mal hintereinander home und away mit dem Tag gesetzt, alles ging. Jetzt ist es wieder so, dass der Tagreader nicht auf die Kommandos reagiert. Mir ist aufgefallen, dass das jetzt gerade passiert ist, nachdem ich ein Fenster geschlossen habe.
        Kann es möglich sein, dass er – nachdem irgendein Auftrag durchs Netzwerk ging – erstmal ein paar Sekunden braucht um wieder zu funktionieren?

        auch die pushmeldung hat sich nicht verbessert.
        Ich setze auf Away und er pusht mir die Nachricht, dass im Gäste-WC noch ein Fenster auf ist. Es kommt kein „ALARMANLAGE aktiv“.
        Setze ich wieder auf Home, kommt „ALARMANLAGE inaktiv!“. Das kann ich beliebig oft wiederholen.
        wenn alle Fenster geschlossen sind, kommt beim Away setzen gar keine Meldung.

        PS: ich hab nochmal komplett neu das Skript aufgesetzt mit dem Code aus deinem Link.

        PPS: Mit 4.100 muss ich den Workaround für das entschärfen ja eigentlich nicht setzen, oder? Macht so oder so aber kenien Unterschied. Das ist nicht die Lösung.

        • boomx
          3. Oktober 2016 at 12:03

          Hi,

          hättest du dir den Code ein wenig angeschaut, dann hättest du gesehen, dass keine Push kommt, sofern nicht alle Sensoren geschärft werden können. ;). Das hatten wir hier in den Kommentaren auch schon mal. Der Disarm-Bug muss zwingend auf false gesetzt sein, sonst funktioniert es nicht richtig.

          Die Push, dass der Alarm inaktiv ist, kommt immer, da die Sensoren so schnell nicht mehr mit der API abgeglichen werden können… Da hat Fibaro noch einen Fehler drin. Das sollte also alles so funktionieren wie es soll :)

          Ich würde mal dein Z-Wavenetzwerk checken, klingt so als wäre das zu bestimmten Zeitpunkten überlastet.

          Habe das Skript so seit ein paar Tagen im Einsatz und konnte keine Probleme feststellen.

          Gruß

          • 3. Oktober 2016 at 12:18

            Hi boomx,

            danke für die erneute Nachricht. Ich versuche mich ja so wenig doof wie möglich anzustellen ;)

            Du schreibst: „dass keine Push kommt, sofern nicht alle Sensoren geschärft werden können. ;)“

            Okay, also hier in den Kommentaren kann ich keinen Austausch darüber finden.
            Ich habe das Problem ja leider auch, wenn alle Sensoren scharf geschaltet werden können.
            Alle IDs die ich im Skript angebe, werden scharf geschaltet. Trotzdem kommt keine Aktiv-Push.
            Natürlich habe ich noch Sensoren im Netzwerk, die ich nicht scharf schalten lasse (zwei Türen und 4 Bewegungsmelder). Die habe ich aber sowohl in den eigenen Einstellungen vom Alarmsystem ausgenommen, als auch nicht im Skript mit der ID erwähnt.

            Also das kanns irgendwie auch nicht sein….

        • 3. Oktober 2016 at 12:09

          Ergänzung:

          Und wenn ich eine eigene Aktion ausführen lasse beim Scharfschalten mit:

          function actionsafterArmed()
          fibaro:debug(‚Führe eigene Funktionen nach dem Schärfen aus‘)
          fibaro:call(25, ’sendPush‘, „ALARMANLAGE aktiv!“)
          end

          Dann pusht er die Nachricht trotzdem nicht. (local own_action = true ist gesetzt)…

          • boomx
            3. Oktober 2016 at 19:37

            Hi,

            bei dir scheint eine Config nicht zu passen oder du nutzt das falsche Skript. Poste doch mal dein Skript bei pastebin (Der Übersicht halber).

            Gruß

  • 3. Oktober 2016 at 20:23

    Hallo boomx,

    danke für deine Bereitschaft da mal drüber zu schauen. Jetzt bin ich gespannt:

    http://pastebin.com/NvGGEWVf

    Beste Grüße,
    Daniel

    • boomx
      3. Oktober 2016 at 20:44

      Was wird nach dem Setzen des Status debuggt?

      • 3. Oktober 2016 at 21:00

        [DEBUG] 20:58:48: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 20:58:48: Status Away gesetzt.
        [DEBUG] 20:58:48: Sensoren werden scharf geschaltet.
        [DEBUG] 20:58:48: Benötigte Variable PresentState erkannt.
        [DEBUG] 20:58:59: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 20:58:59: Status Home gesetzt.
        [DEBUG] 20:58:59: Sensoren werden entschärft.
        [DEBUG] 20:58:59: Benötigte Variable PresentState erkannt.
        [DEBUG] 20:58:59: Führe eigene Funktionen nach dem Entschärfen aus
        [DEBUG] 20:59:00: Versende Push an ID 25

        Und als einzige Push in dem gesamten Prozess wird verschickt:

        HC2: ALARMANLAGE inaktiv!

        • boomx
          3. Oktober 2016 at 21:04

          Cool :)

          Das Skript ist schneller als das Setzen des Arm-Status in der API, weshalb er die Prüfung überspringt und nichts ausführt. Wird an der Anzahl der Module liegen. Bleibt eigentlich nichts anderes als i.wo ein sleep-Befehl einzubauen oder die Prüfung der Sensoren zu entfernen. Beim Entschärfen hab ich es ja schon rausgenommen… Doof.

          Gruß

          • 3. Oktober 2016 at 21:22

            Respekt! Wie hast du das denn jetzt daran erkannt? O_o

            Kann das auch der Grund sein warum das Pad manchmal nicht reagiert?
            Es passiert immer noch. Und ich kann kein Muster erkennen wann das auftritt.

  • 3. Oktober 2016 at 21:43

    Ich hab jetzt mal den Teil aus dem Skript rausgenommen:

    if (not armedcheckSensorID(sensorID)) then

    end

    Welche Funktion nehme ich mir damit genau?
    Es funktioniert jetzt. Beim Schärfen und Entschärfen schickt er mir die Push.
    Aber er sagt mir per Push jetzt nicht mehr, dass in der Küche noch ein Fenster auf ist.
    Im Debug zeigt er mir das aber noch an…

    Wozu ist die Funktion, die ich entfernt habe? Ich verstehe die irgendwie nicht…
    Ich hab gedacht ich hätte es verstanden, nämlich, dass jedes Fenster durchgeprüft wird.
    Wenn dem so wäre, dürfte er mir das aber im Debug (siehe unten) nicht anzeigen, dass das Fenster in der Küche noch offen ist, oder?

    [DEBUG] 21:36:53: RFID-Szene 3.2 (Official) gestartet.
    [DEBUG] 21:36:53: Status Away gesetzt.
    [DEBUG] 21:36:53: Sensoren werden scharf geschaltet.
    [DEBUG] 21:36:53: ACHTUNG: Fenster Küche 2 im Raum: Küche nicht sicher. Sende Push.
    [DEBUG] 21:36:53: Versende Push an ID 25
    [DEBUG] 21:36:53: Benötigte Variable PresentState erkannt.
    [DEBUG] 21:36:53: Führe eigene Funktionen nach dem Schärfen aus
    [DEBUG] 21:36:53: Versende Push an ID 25
    [DEBUG] 21:37:20: RFID-Szene 3.2 (Official) gestartet.
    [DEBUG] 21:37:20: Status Home gesetzt.
    [DEBUG] 21:37:20: Sensoren werden entschärft.
    [DEBUG] 21:37:20: Benötigte Variable PresentState erkannt.
    [DEBUG] 21:37:20: Führe eigene Funktionen nach dem Entschärfen aus
    [DEBUG] 21:37:20: Versende Push an ID 25

    • boomx
      3. Oktober 2016 at 22:26

      Hab jetzt das RFID-Skript schon ein wenig länger im Einsatz, daran hab ich das erkannt. ;) Dass das Problem auch mit dem Entschärfen auftrat, hat die Fehlerfindung eingeschränkt.

      Die einzige Funktion, welche du damit entfernt hast, ist die Prüfung ob alle Sensoren erfolgreich geschärft wurden. Es kommt jetzt also auch bei offenen Fenster/Türen die Push, dass die Alarmanlage aktiv ist. Die Push für deren Erkennung wird in einer anderen Funktion genutzt, hier tippe ich eher auf ein temporäres Problem mit dem Push-Dienst, dies ist kein Fehler vom Skript.

      Die Problematik mit deinem RFID-Reader liegt eher am Gerät selbst und nicht am HC2. Wie gesagt, da würde ich mal das Modul checken, bzw. deinen Netzwerktraffic (Polling, WakeUp-Times)

  • Jojo
    6. Oktober 2016 at 21:19

    kann man eigentlich bei alarm mehrere push nacheinander schicken lassen? so erkennt man auch wenn das handy in der hosentasche ist, dass es keine „whatsapp“ nachricht ist…

  • thebrain
    7. Oktober 2016 at 21:37

    Hallo Boomx,

    ich habe nun nach längerem Warten meine HC2 von der 4.07 auf die 4.1 geupdatet. Dieses funktionierte ohne Probleme. Auch die Einbindung des RFID und das „anlernen“ der RFID Chips funktionierten ohne Probleme.
    Nach einigen Test mit der Alarmfunktion bin ich echt begeistert gewesen über die Geschwindigkeit. Die Ernüchterung kam aber als ich bei meiner Haustür die Verzögerung bei scharf schalten und entschärfen nutzen wollte.

    1. Test Verzögerung der Haustür beim scharf schalten z.b. 60s: bei Aktivierung der Alarmanlage wird die Verzögerung erkannt und im HC2 angezeigt. Sobald man nun aber binnen der 60 sec. die Anlage deaktiviert hört der Countdown nicht auf zu zählen. Folge ist, trotz Entschärfung der Anlage wird nach Ablauf der 60s auf armed gestellt 

    2. Test nur Verzögerung beim Entschärfen z.b. 30s: Diese Funktion ist bei mir erforderlich, da das Pad im Haus installiert ist, von außen gibt es keinen Zugang. Sobald die Haustür geöffnet wird, beginnt der Countdown für die Verzögerung und die Anlage kann entschärft werden. Laut push und auch im HC2 werden die Sensoren auf disarmed gestellt. Der Countdown hört auch hier nicht auf und zählt weiter runter. Nach Ablauf des timer, löst die Alarmanlage aus. Somit werden bei mir die Nachbarn geweckt, die Rollläden gehen runter und ich habe aufgrund des Lichts Disco bei mir zu Hause 

    Kannst Du mir bitte behilflich sein und mir mitteilen, wie ich dem Skript die Verzögerung ersichtlich machen kann. Mit 1 kann ich ggf. noch leben, da ich hier nur darauf achten muss, dass ich innerhalb der Verzögerung den Status der Anlage nicht Wechsel. 2 ist leider nicht zu umgehen, somit wir immer ausgelöst.

    Vielen Dank
    LG Daniel

  • thebrain
    7. Oktober 2016 at 22:15

    Hallo,

    habe noch ein Bug festgestellt: Wenn der Alarm ausgelöst wird, kann ich diesen nicht über das RFID Pad entschärfen. der ausgelöste Sensor wirdn nicht wie alle anderen auf disarm gestellt. es scheint so, dass der Sensor für weitere Befehle gesperrt worden ist. Die Anlage kann somit nur über die App oder die oberfläche im HC2 entschärft werden.

    • boomx
      7. Oktober 2016 at 22:21

      Hi,

      hierbei handelt es sich dann um einen Bug in der Firmware des HC2. Ein Fehler des Skriptes ist es in diesem Fall natürlich nicht ;)

      Gruß

      • boomx
        7. Oktober 2016 at 22:32

        Hab es grad mal getestet… Wenn der Status zurück auf Home gestellt wird, dann geht auch der Alarm aus und alle Sensoren werden entschärft. Also weder ein Bug der Firmware, noch des Skriptes. Du wirst wahrscheinlich vergessen haben, die Option für die Ausführung der Szene bei Alarm zu Aktivieren.

        Gruß

        • thebrain
          9. Oktober 2016 at 19:16

          Hi,

          das funktioniert jetzt auch, schein ggf. an der Funktion disarmed_bug = true gelegen zu haben.

          Danke und schönen Sonntag noch

  • thebrain
    13. Oktober 2016 at 16:40

    Hallo Boomx,

    ich habe seit einigen Tagen das oben genannte Skript sehr erfolgreich am Laufen, vielen Dank für die tolle Arbeit.
    Jetzt frage ich mich, ob ich in dem Script den „RFID Reader piep“ so verwenden kann, dass sobald die Alarmanlage aktiv ist der piep ausgelöst wird, dieses soll als akustischer Hinweis verwendet werden. Weiterhin wünsche ich mir, dass der piep nicht die ganze Zeit an ist sondern nur wenn über z.b. ein Motion Sensor Bewegung erkannt wird und dann für x sec.? Gleiches habe ich als optisches Signal bereits mit einem Wall Plug realisiert. Mit dem piep bekomme ich dieses aber nicht zum laufen.
    Vielen Dank für die Hilfe

  • Peter Pan
    13. Oktober 2016 at 22:19

    Ich komme mit meinem Problem einfach nicht weiter. Lock / Unlock – alles funktioniert wenn ich nur über RFID arbeite. Nur wenn ich das Danalock entweder manuell oder durch automatischen Lock bediene geht nichts mehr, da der Status vom RFID nicht mehr stimmt. Ich finde keine Möglichkeiten des Status des RFID Leser zu verändern.

    • boomx
      13. Oktober 2016 at 22:24

      Hi,

      das kann man per PUT in die API packen. Dazu wird es nächste Woche wahrscheinlich einen Artikel geben :)

      Gruß

      • Peter Pan
        14. Oktober 2016 at 9:06

        Hallo boomx
        Danke für die superschnelle Antwort. Ich weiss zwar nicht was Du damit meinst :-) aber dann warte ich mal auf nächste Woche und hoffe dass ich danach die Sache in Griff bekomme

        Gruss

    • Andreas100
      14. Oktober 2016 at 21:37

      Hallo Peter
      Ja, das selbe Problem habe ich auch schon länger und bis jetzt noch keine Lösung gefunden.
      Sobald ich z,b, per Handy scharf oder unscharf stelle ändert sich der aktuelle Zustand des RFID nicht.
      Also in er Praxis: Wenn die Alarmanlage per Handy Scharf gestellt wurde ändert das RFID seinen Status nicht und bleibt auf unscharf.
      Wenn ich dann z.b. nach Hause komme und das RFID auf Home ( unscharf stelle ) reagiert es nicht, außer ich ändere den Zustand mit RFID vorher wieder auf scharf und anschließend auf unscharf dann klappt es. Was natürlich etwas suboptimal ist.
      Gibt es da eine Lösung ?

      • boomx
        14. Oktober 2016 at 21:43

        Der Status des RFID muss über die API geändert werden. Wie gesagt, dazu gibt es nächste Woche wahrscheinlich einen Artikel.

        Gruß

        • Andreas100
          15. Oktober 2016 at 6:54

          Hallo boomx
          Prima. Danke für Deine Bemühung. Bin schon gespannt.
          Schönes WE wünsche ich.

  • Peter Pan
    17. Oktober 2016 at 22:25

    Hallo boomix
    Ich habe noch in weiteres Problem. Wenn ich das Danalock Schloss über den RFID oder über den Fibarotaster bediene, funktioniert zwar alles, aber das Schloss ändert in der Anzeige nicht seinen Status. Das heisst ich kann an der Anzeige nicht erkennen ob das Schloss offen oder geschlossen ist. Kann man das auch mit einem Put Befehl selber ändern?
    Gruss Peter

    • boomx
      17. Oktober 2016 at 22:35

      Dazu kommt im Laufe der Woche ein kleines Skript :)

      Gruß

      • Peter Pan
        24. Oktober 2016 at 23:40

        Hallo boomx
        Hast Du schon irgendwelche News??

        Gruss Peter

        • boomx
          24. Oktober 2016 at 23:46

          Das Skript ist fertig. Es funktioniert leider nicht so, wie es geplant war. Problem ist, dass das RFID-Pad erst nach dem Aufwecken den neuen Wert aus der API mitgeteilt bekommt. Teste morgen nochmal und dann würd ich trotz der Einschränkung den Artikel veröffentlichen.

          Gruß

          • Peter Pan
            25. Oktober 2016 at 0:29

            Hallo boomx
            Danke für die schnelle Antwort so spät in der Nacht. Ich warte mit Ungeduld auf irgend eine Lösung, weil meine Frau die ganze Installation am liebsten rausschmeissen würde :-)

            Gruss Peter

          • Peter Pan
            29. Oktober 2016 at 22:43

            Hallo boomx
            Hast Du schon irgendwelche News zu dem Problem? Kann ja das Aufwecken niedriger setzen. Braucht halt ein bisschen mehr Batterie.
            Gruss Peter

          • boomx
            30. Oktober 2016 at 1:06

            Der Artikel ist doch schon seit Donnerstag veröffentlicht ;)

            https://www.siio.de/sicherheitalarm/rfid-pad_sync_api/

          • Peter Pan
            5. November 2016 at 2:07

            Hallo boomx
            Kenne mich in der Navigation hier noch nicht so gut aus und hatte deshalb den Artikel nicht gefunden.
            Dein Script läuft wie immer super. Vielen Dank für Deine Unterstützung.

            Gruss

  • 25. Oktober 2016 at 20:50

    N`Abend boomx & Co!

    Und erstmal riesen Lob und Anerkennung für die viele Arbeit hier! Unglaublich, wie ihr und der Blog mir die ersten Wochen mit Fibaro geholfen habt!
    Aber ich habe ein Problem, das mich bald in den Wahnsinn treibt, und zu dem ich hier nichts passendes gefunden habe (glaube ich zumindest…).
    Und zwar habe ich für den Alarm eine Verzögerung von 45sek eingerichtet, damit ich noch das Haus verlassen kann.

    ABER: egal ob ich den Alarm per App oder RFID aktiviere, sobald ich mich innerhalb dieser 45 sek im Raum bewege, bekomme ich die Push-Meldung „Achtung, Bewegund im Raum Flur…“.
    Nach Ablauf der 45 sek werden ALLE ANDEREN Sensoren scharf geschaltet, NUR DER IM FLUR NICHT. Auch nicht, wenn ich sofort nach Aktivieren des Alarms raus gehe. Die „Achtung-Push“ kommt sofort, auch wenn noch gute 30sek delay abzulaufen haben.

    Weiß da ein Profi Rat?

    Gruß, Ruben

    • boomx
      25. Oktober 2016 at 21:42

      Hi,

      wird in der Szene debuggt, dass ein Arm-Delay erkannt wurde? Steht dieser Sensor an der ersten Stelle in Sensor-Id-Array?

      Gruß

      • 25. Oktober 2016 at 22:00

        Hi!

        Ja, Delay wird debuggt, Sensor Flur steht an erster Stelle. Aber ich teste auch im Wohnzimmer, da passiert es ebenso und der steht an zweiter Stelle.

        Debug ohne, dass sich jemand bewegt:

        [DEBUG] 21:57:23: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 21:57:23: Status Away gesetzt.
        [DEBUG] 21:57:23: Sensoren werden scharf geschaltet.
        [DEBUG] 21:57:23: Benötigte Variable PresentState erkannt.
        [DEBUG] 21:57:23: Arm-Delay erkannt. Arm-Delay: 45
        [DEBUG] 21:57:33: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 21:57:33: Status Home gesetzt.
        [DEBUG] 21:57:33: Sensoren werden entschärft.
        [DEBUG] 21:57:33: Benötigte Variable PresentState erkannt.
        [DEBUG] 21:57:33: Führe eigene Funktionen nach dem Entschärfen aus
        [DEBUG] 21:57:33: Versende Push an ID 4
        [DEBUG] 21:57:33: Versende Push an ID 16
        [DEBUG] 21:57:33: line 47: attempt to index global ‚doorlockID‘ (a nil value)

        Debug mit Bewegung in der Delay-Time (Verlassen des Raums):

        [DEBUG] 22:00:01: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 22:00:01: Status Away gesetzt.
        [DEBUG] 22:00:01: Sensoren werden scharf geschaltet.
        [DEBUG] 22:00:01: ACHTUNG: 34_Bewegung WZ im Raum: Wohnzimmer nicht sicher. Sende Push.
        [DEBUG] 22:00:02: Versende Push an ID 4
        [DEBUG] 22:00:02: Versende Push an ID 16
        [DEBUG] 22:00:02: Benötigte Variable PresentState erkannt.
        [DEBUG] 22:00:02: Arm-Delay erkannt. Arm-Delay: 45
        [DEBUG] 22:00:10: RFID-Szene 3.2 (Official) gestartet.
        [DEBUG] 22:00:10: Status Home gesetzt.
        [DEBUG] 22:00:10: Sensoren werden entschärft.
        [DEBUG] 22:00:10: Benötigte Variable PresentState erkannt.
        [DEBUG] 22:00:11: Führe eigene Funktionen nach dem Entschärfen aus
        [DEBUG] 22:00:11: Versende Push an ID 4
        [DEBUG] 22:00:11: Versende Push an ID 16
        [DEBUG] 22:00:11: line 47: attempt to index global ‚doorlockID‘ (a nil value)

        Danke für jeden Tipp!

        • 25. Oktober 2016 at 22:40

          Ähm… es geht….
          Hab alles in einer neuen Szene eingetragen und alles raus genommen, was auf Doorlocks hinweist, weil ich keine habe. Und plötzlich gehts. Kann das sein, dass es mit den Doorlocks zu tun hatte?
          Oder war da ein anderer Fehler?

          Egal, es scheint zu laufen! Besten Dank trotzdem!

          Go on! Tolle Arbeit!

        • 25. Oktober 2016 at 22:49

          Ne… ging 5 Mal und nun nicht mehr…. ohne änderung…. beim vorführen gehts plötzlich nicht… drehe bald durch…

          • boomx
            25. Oktober 2016 at 23:10

            Hi,

            wenn es 5x geht und dann nicht mehr, dann lässt das auf eine falsche Konfiguration der Sensoren schließen.

            Wichtig zu beachten ist, dass in der Szene der disarm_bug auf false gesetzt ist und dass die Sensoren mit Arm-Delay im Array an erster Stelle stehen. Ansonsten funktioniert die Szene ohne Probleme. Habe es auch ausführlich mit einem Arm-Delay getestet.

            Gruß

          • 4. November 2016 at 1:19

            Hi!

            Danke nochmal für all die Tipps!
            Aktuell läuft es fehlerfrei. Ich habe etwas entdeckt. Wenn ich den Chip davor halte, muss ich 2-3 Sekunden einfach still stehen bleiben, dann raus und abschließen. Dann klappt es ohne Probleme. Bewege ich mich, kommt die Push „Bewegung im Raum…“ und der Sensor wird nicht scharf geschaltet. Halte ich still und gehe dann: kein Problem.

            Hängt bestimmt mit der Übertragungsgeschwindigkeit zusammen, oder?

  • 31. Oktober 2016 at 10:49

    Hi boomx,

    erstmal Danke für den tollen Support hier. Vielleicht kannst Du auch mir weiterhelfen:
    Habe ein HCL mit der 4.100 laufen und das zipato keypad eingebunden. Funktioniert ja jetzt auf der 4.100. Aber da das HCL ja kein LUA unterstützt, habe ich es noch nicht geschafft, einen Tag anzulernen oder einen Code zu speichern. Dafür fehlt ein Anwendungsfeld in den Parametern des Device. Im Netz gibt es nirgendwo einen Hinweis, wie man das Keypad mit einem HCL verwendet. Hast Du ne Idee?

    Vielen Dank vorab!!

  • Basti
    Basti
    12. November 2016 at 10:58

    Wie bekomme ich denn die Tags angelernt, bzw. registriert?
    Ich erhalte immer:
    [10:44:00] ID 246: Unregistered code
    [xxx,xx,xxx,xxx,xxx,xx,1,4,0,0]

  • 23. November 2016 at 17:37

    Hallo Leute,

    Ich habe noch 2 Probleme beim Einrichten,

    gibt es schon eine Lösung zur Unterstützung mehrerer RFID Tagreader? ich habe 2 Tagreader eingebunden, beide können den Alarm scharf und unscharf stellen, aber kennen den gegenseitigen Status nicht. Somit habe ich ohne Optische einzeige und oder Handy keine möglich um zu wissen ob scharf geschalten ist oder nicht. hat das schon jemand realisiert und kann das einem Anfänger erklären?

    Das Andere Problem ist, das die Tagreader in dem Gebäude sind, sowie auch die Bewegungsmelder. Wenn ich jetzt den Alarm mit Verzögerung einschalten und auf dem Bewegungsmelder ist Bewegung schaltet er diesen nicht scharf. Ich habe das so gelöst:
    local own_action = true — eigene Aktionen ausführen; Funktionen müssen befüllt werden
    local disarmed_bug = false — Firmware Bug umgehen

    — eigene Funktionen
    function actionsafterArmed()
    fibaro:call(13, „setArmed“, „1“);
    fibaro:call(32, „setArmed“, „1“);

    so startet er nach den 30 Sekunden wieder den modus zum scharf stellen, ich bekomme dann nochmal die Nachricht das der Alarm aktiviert wurde. diesmal aber ohne Warnung das etwas “ offen“ ist, da ich ja das Gebäude dann schon verlassen habe.

    aber die Ideal Lösung kann das nicht sein…..hat jemand eine Idee, dass das Skript den zustand nochmal nach 30 Sekunden Prüft?

    Gruß
    Sascha

    • 23. November 2016 at 17:39

      Bin schon so durcheinander das ich die Rechtschreibung vergessen habe;-(

      • boomx
        23. November 2016 at 18:13

        Hi,

        wir haben dazu bereits einen Artikel veröffentlicht. Diesen findest du hier:

        https://www.siio.de/?s=11

        Irgendwann werden wir die Szene sicherlich auch nochmal updaten, so dass diese dann mit mehreren Tagreadern funktioniert. Ist bisher aber noch nicht terminiert.

        Gruß

  • heikoh
    28. November 2016 at 8:08

    Hallo,

    ersteinmal DANKE Daniel für Deine Mühe.
    Ich erwäge ebenfalls den Einsatz eines Tagreaders, allerdings hätte ich da noch 2 Fragen.
    Zum einen, ist der Firmwarebug in der 4.100 behoben UND ist denn bei den Tagreader eine verschlüsselte Übertragung des Funksignals möglich? Leider schweigt sich zipato zu diesem Thema aus (eine direkte Anfrage an zipato habe ich allerdings disher noch nicht gestellt).

    Grüße HH…

  • maccwinn
    27. Dezember 2016 at 10:16

    Hallo,

    habe bei mir auch folgendes festgestellt:

    Wenn ich den Alarm scharf stelle, und der Türsensor ist offen, bekomme ich einen Push „Raum nicht sicher….“ (Bei diesem Sensor ist auch ein Delay eingestellt und steht an erster stelle im Array) und es wird dieser Sensor nach Ablauf des Delay nicht scharf geschalten. Wenn ich aber die Türe zu habe und dann den Alarm scharf stelle, anschießend das Haus verlasse, dann wird der Alarm scharf geschalten.

    Ist irgendwie nicht so praktisch. (sagt meine Frau) wenn Sie das Haus verlassen möchte muss Sie erst mal alles ins Auto packen unsere Tochter aus dem Haus jagen und dann wieder die Türe schließen um den Alarm richtig scharf zu schalten und dann wieder Türe auf und raus.

    Gibts da ne Lösung?

    • boomx
      27. Dezember 2016 at 12:06

      Hallo,

      das funktioniert mit dieser Version des Skriptes nicht. Wenn der Status des RFID Pads geändert wird, erfolgt die Prüfung (Offene, ausgelöste Sensoren) und stellt diese dann auf „Armed“. Sollte ein Sensor nicht den benötigten Status besitzen, dann wird dieser ausgelassen. (Wie bei dir in der Konstellation)

      Um deinen Wunsch umzusetzen, müsste das Skript angepasst werden.

      Gruß

  • Peter Pan
    5. Januar 2017 at 10:31

    Hallo boomx
    Seit dem Update auf 4.110 läuft Dein Script zur Änderung des Status des RFID über die API nicht mehr. Hast Du eine Ahnung woran das liegt?
    Gruss Peter

    • boomx
      5. Januar 2017 at 13:24

      Hi,

      ich denke mal, dass Fibaro diese Funktion, welche ich in dem Fall nutze, entfernt hat. Muss ich mal testen, wenn ich mal wieder ein paar Minuten Zeit habe. Meld mich dann.

      Gruß

      • Peter Pan
        14. Januar 2017 at 21:42

        Hallo boomx
        Konntest Du in diesem Fall schon etwas in Erfahrung bringen? Ich benutze diese Funktion von Dir in mehreren Szenen für mehrere Module, welche alle nicht mehr funktionieren.
        Danke Peter

        • boomx
          14. Januar 2017 at 23:52

          Hi,

          wie im Artikel bereits geantwortet, funktioniert die Funktion nicht mehr. Hab mich bisher nicht weiter damit beschäftigt, da ich andere Projekte auf dem Plan hab. Sobald ich wieder Zeit habe, kümmere ich mich drum :)

          Gruß

  • BlueAngel
    6. Januar 2017 at 20:33

    Guten Abend,

    erstmal Danke für die tollen und hilfreichen Skripte, sowie die Anregungen für mögliche Szenarien.

    Inzwischen konnte ich das RFID Keypad einbinden und die Tags erfolgreich mit einer Szene registrieren.
    Aktuell nutze ich die HC2 Version 4.100. Mit dem Skript aus diesem Beitrag kann ich eingetragene Sensoren erfolgreich schärfen, wenn diese geschlossen sind und entschärfen auch wenn Alarm ausgelöst wurde (bei mir fehlte auch der Haken fürs Ausführen wenn Alarm besteht).

    Aktuell wird der armed Status gesetzt wenn einer der beiden RFID Tags mit Away das Haus verlässt, jedoch möchte ich diesen erst setzten, wenn beide weg sind. Desweiteren sollen aber beim Verlassen des Hauses, eines bestimmten RFID Tags, gewisse Aktionen ausgeführte werden, bsp. WallPlug off.

    Kann ich das mit diesem Skript realisieren? Wenn ja, was muss ich dafür anpassen?

    Grüße und vielen Dank.

    • boomx
      6. Januar 2017 at 21:59

      Hi,

      nein, das geht technisch nicht. Es kann weder ausgelesen, welcher Tag genutzt wurde (bzw. nur über Umwege), noch kann die Away-Taste die Szenen öfter triggern. Es werden nur die Statusänderungen an das HC2 übertragen, alles andere interpretiert das HC2 nicht.

      Gruß

      • BlueAngel
        6. Januar 2017 at 23:50

        Hi,

        schade, gut also umdenken. Somit kann / muss der letzte der geht den Alarm schärfen.

        Besteht die Möglichkeit, eine eigenständige Szene für einen bestimmten Tag zu schreiben welcher bestimmte Module deaktiviert beim gehen und beim zurückkehren aktiviert.

        Hab eigentlich nicht vor ein weiteres Gerät als „Auslöser“ dafür zu nutzen, bzw. wie habt ihr das so gelöst?

        Schönen Abend noch

        • boomx
          7. Januar 2017 at 0:13

          Hi,

          ja, das kannst du über die own_actions durchführen. Entweder fragst du dort den Tag ab, oder du erstellst eine neue Szene, welche du über diese Funktion startest und prüfst dort den Tag. Geht beides ohne Probleme.

          Gruß & Danke dir auch

  • Dream
    8. Januar 2017 at 23:10

    Hi,

    danke für deine Anleitungen.
    Also Teil 1 hat gut geklappt, wenn ich home oder away aktiviere bekomme ich entsprechende debug Meldungen.
    Nun aber ne blöde frage. In deinem Skript aus teil 2 muss ich da irgendwo die rifd ID eintragen?
    weil bei mir klappt nix ;-)

  • Razfaz
    14. Januar 2017 at 13:08

    Hi,
    ich habs noch nicht ganz verstanden.
    Alles funktioniert soweit.
    Wenn jetzt das Fenster geöffnet wird, geht der Alarm los.
    Wenn ich diesen nun aber mit dem Tagreader deaktivieren will, klappt das nicht, die Sirene läuft weiter.
    Auch die Szene läuft weiter, so dass ich, wenn ich bei aktivem Alarm, den Reader auf „Home“ setze, alle anderen Sensoren auf scharf bleiben, nur das Fenster nicht, welches geöffnet wurde,.

    • boomx
      14. Januar 2017 at 23:57

      Hi,

      hab das Skript mit der neusten Firmware nicht mehr getestet. Muss ich die nächsten Tage mal nachholen.

      Gruß
      boomx

  • Peter van der Pol
    11. März 2017 at 16:47

    Dear Boomx,

    I have read all your scripts and I think you are doing an amazing job, well done.

    Is there any news regarding this script/hardware?

    If yes, where can I find this?

  • elralfo
    9. April 2017 at 16:37

    Hi boomx,

    erst einmal vielen herzlichen Dank für deine tolle Arbeit hier!
    Als absoluter LUA-Noob hab ich dank der Artikel zumindest schonmal 4 RFID-Trigger angelernt bekommen.

    Für die aktuelle Szene bin ich aber scheinbar trotz lesen aller Artikel und Kommentare zu doof…

    Im Header habe ich folgendes stehen:
    –[[
    %% properties
    183 value
    %% events
    %% globals
    –]]

    dabei ist 183 die ID meines RFID-Pads.

    Der Rest sieht folgendermaßen aus:

    — notwendige IDs
    local sensorID = {63, 135, 140, 145, 81, 125, 130, 58, 19, 33, 43, 118, 48, 53, 76} — IDs der Sensoren
    local phoneID = {25, 86, 90} — IDs der Handys
    local doorlockID = {} — IDs der doorlocks

    — zusätzliche Optionen
    local own_action = false — eigene Aktionen ausführen; Funktionen müssen befüllt werden
    local disarmed_bug = false — Firmware Bug umgehen

    — eigene Funktionen
    function actionsafterArmed()
    fibaro:debug(‚Führe eigene Funktionen nach dem Schärfen aus‘)
    end

    function actionsafterDisarmed()
    fibaro:debug(‚Führe eigene Funktionen nach dem Entschärfen aus‘)
    end

    — AB HIER NICHTS MEHR ÄNDERN
    local trigger = fibaro:getSourceTrigger()
    local rfid_value_status = “

    Debug = function ( color, message )
    fibaro:debug(string.format(‚%s‘, „span“, color, message, „span“))
    end

    function armedcheckSensorID(array)
    for j=1, #sensorID do
    if sensorID[j] ~= nil then
    if (tonumber(fibaro:getValue(sensorID[j], ‚armed‘)) ~= 0) then
    return false
    end
    end
    end
    return true
    end

    — Funktion für die Öffnung der Tür
    function openDoor()
    if (doorlockID[0] ~= nil) then
    fibaro:debug(‚Türschlösser werden geöffnet.‘)
    for j=0, #doorlockID do
    if doorlockID[j] ~= nil then
    fibaro:call(doorlockID[j],’unsecure‘)
    end
    end
    end
    end

    — Funktion zum Versenden der Push
    function sendPush(text)
    if (phoneID[1] ~= nil) then
    for i=1, #phoneID do
    if phoneID[i] ~= nil then
    fibaro:debug(‚Versende Push an ID ‚ ..phoneID[i])
    fibaro:call(phoneID[i],’sendPush‘, text, ‚alarm‘)
    end
    end
    end
    end

    function setArmedStatus(set_status)
    if set_status then
    fibaro:debug(‚Sensoren werden scharf geschaltet.‘)
    for k=1, #sensorID do
    if sensorID[k] ~= nil then
    if (tonumber(fibaro:getValue(sensorID[k], ‚value‘)) == 0) then
    fibaro:call(sensorID[k], ’setArmed‘, ‚1‘)
    else
    local sensorname = fibaro:getName(sensorID[k])
    local sensorroom = fibaro:getRoomNameByDeviceID(sensorID[k])
    fibaro:debug(‚ACHTUNG: ‚ .. sensorname .. ‚ im Raum: ‚ .. sensorroom .. ‚ nicht sicher. Sende Push.‘)
    sendPush(‚ACHTUNG: ‚ .. sensorname .. ‚ im Raum: ‚ .. sensorroom .. ‚ nicht sicher.‘)
    end
    end
    end
    else
    fibaro:debug(‚Sensoren werden entschärft.‘)
    for j=1, #sensorID do
    if sensorID[j] ~= nil then
    if (disarmed_bug) then
    setArmed(sensorID[j])
    else
    fibaro:call(sensorID[j], ’setArmed‘, ‚0‘)
    end
    end
    end
    end
    end

    function setArmed(deviceId)
    local dev = api.get(‚/devices/‘ .. deviceId)
    dev.properties.armed = false
    api.put(‚/devices/‘ .. deviceId, dev)
    end

    — Funktion zum Anlegen einer Globalen Variablen
    function globalVar(var,val)
    local http = net.HTTPClient()
    http:request(„http://127.0.0.1:11111/api/globalVariables“, {
    options = {
    method = ‚POST‘,
    headers = {},
    data = ‚{„name“:“‚..var..'“,“value“:“‚..val..'“}‘,
    timeout = 10000
    },
    success = function(response)
    local result = response.data;
    if response.status == 200 or response.status == 201 then
    fibaro:debug(‚Status: ‚ ..response.status.. ‚ – Variable wurde angelegt‘)
    else
    fibaro:debug(‚Error: ‚ ..response.status.. ‚ – Zugriff verweigert‘)
    end
    end,
    error = function(err)
    fibaro:debug(‚[ERROR] ‚ .. err)
    end
    })
    end

    if (trigger[‚type‘] == ‚property‘) then
    fibaro:debug(‚RFID-Szene 3.1 (Official) gestartet.‘)
    local rfid_ID = tonumber(trigger[‚deviceID‘])
    local rfid_value = tonumber(fibaro:getValue(rfid_ID, ‚value‘))
    if (rfid_value == 1) then
    rfid_value_status = ‚Away‘
    Debug(‚red‘, ‚Status ‚ ..rfid_value_status.. ‚ gesetzt.‘)
    setArmedStatus(true)
    if (fibaro:getGlobal(‚PresentState‘) ~= nil) then
    fibaro:debug(‚Benötigte Variable PresentState erkannt.‘)
    fibaro:setGlobal(‚PresentState‘, ‚Away‘)
    else
    fibaro:debug(‚Benötigte Variable PresentState NICHT erkannt. Wird erstellt.‘)
    globalVar(‚PresentState‘, ‚Away‘)
    end
    local delay = tonumber(fibaro:getValue(sensorID[1], „armDelay“))
    if (delay ~= 0) then
    fibaro:debug(‚Arm-Delay erkannt. Arm-Delay: ‚ ..delay)
    delay = delay + 1
    fibaro:sleep(delay*1000)
    end
    if (not armedcheckSensorID(sensorID)) then
    if (own_action) then
    actionsafterArmed()
    end
    sendPush(‚ALARMANLAGE aktiv!‘)
    end
    elseif (rfid_value == 0) then
    rfid_value_status = ‚Home‘
    Debug(‚green‘, ‚Status ‚ ..rfid_value_status.. ‚ gesetzt.‘)
    setArmedStatus(false)
    if (fibaro:getGlobal(‚PresentState‘) ~= nil) then
    fibaro:debug(‚Benötigte Variable PresentState erkannt.‘)
    fibaro:setGlobal(‚PresentState‘, ‚Home‘)
    else
    fibaro:debug(‚Benötigte Variable PresentState NICHT erkannt. Wird erstellt.‘)
    globalVar(‚PresentState‘, ‚Home‘)
    end
    if (armedcheckSensorID(sensorID)) then
    if (own_action) then
    actionsafterDisarmed()
    end
    sendPush(‚ALARMANLAGE inaktiv!‘)
    openDoor()
    end
    end
    else
    fibaro:debug(‚Szene manuell gestartet. Widget-Support deaktiviert.‘)
    fibaro:debug(‚Hier werden noch weitere Funktionen folgen.‘)
    end

    Im Debug erhalte ich allerdings nur folgende Info:
    [DEBUG] 16:36:40: Szene manuell gestartet. Widget-Support deaktiviert.
    [DEBUG] 16:36:40: Hier werden noch weitere Funktionen folgen.

    und es passiert nichts weiter…

    Meine aktuelle Version auf dem HC2 ist 4.120.

    Hast Du vielleicht auf die schnelle eine Idee, was ich falsch mache?

    Besten Dank vorweg!

    elralfo

    • boomx
      9. April 2017 at 20:48

      Hi,

      du startest die Szene manuell, da funktioniert das Skript nicht. Das Skript funktioniert nur, wenn du es über das RFID-Pad triggern lässt.

      Gruß

  • elralfo
    9. April 2017 at 21:05

    Das war es tatsächlich, oh mann, ich Danke Dir 1000x!!! :)

  • maccwinn
    5. August 2017 at 9:36

    Hallo Boomx,

    ich habe seit neuestem folgendes Problem:

    Wenn ich den Alarm deaktiviere am RFID wird der Hauptsensor zwar entschärft, der Delay zählt allerdings weiter runter und der Alarm geht dann los!?

    Hast Du evtl. eine Ahnung?

    Vielen Dank im Voraus!

  • maccwinn
    5. August 2017 at 15:48

    Hi.

    ich habe jetzt den diaarm bug auf false gesetzt und nun geht es wieder!

    Gruß.

  • Newbee
    30. September 2017 at 16:33

    Hallo Boomx,
    ich bin begeistert, wie viele Skripte hier von Dir veröffentlicht werden und wie schnell hier auf Probleme reagiert und bei der Lösung geholfen wird. Ich bin gerade dabei, eine Alarmanlage zu realisieren und möchte diese mit dem Zipato RFID Tag aktivieren und deaktivieren. Leider gibt es mitlerweile sehr viele Beiträge, welche meist auch HC2 Firmware abhängig sind.
    Gibt es eine Übersicht, welches Skript mit welcher Firmware funktioniert oder ähnliches?

    Viele Grüße
    Thomas

  • Marcus
    2. Oktober 2017 at 9:34

    Hallo,

    vielen Dank für das Script…ich habe aber noch ein paar Verständnisfragen zu dem Delay.

    Ziel ist es, wie es schon einige User hier am laufen haben, dass ein 30Sek delay beim Verlassen&Betreten des Hauses existiert.
    Dieses Delay sollte eigentlich nur für die Eingangstür und nicht für die 4 anderen Sensoren gelten.

    Soweit ich es Verstehe definiere ich an den Modulen selber das Auslösedely (30Sek). Das gilt aber dann für alle Module.

    Wie realisiere ich es denn nun genau, dass ich das Delay nur am Türsensor habe? Verlassen des Hauses bekomme ich ja noch hin, aber das Betreten löst mir jedes mal die Anlage aus.:S

    Ich bin leider nicht so sehr in LUA Scripting bewandert..

    FW HC2 4.140

    Danke schon einmal im Voraus.

    BR

    • boomx
      2. Oktober 2017 at 15:18

      Hi,

      grundsätzlich sollten alle Module den gleichen Delay haben. Das wäre der optimalste Fall und sollte eigentlich auch kein Problem sein. Theoretisch reicht es aber, wenn der Delay bei dem ersten Sensor im Array gesetzt ist.

      Gruß

  • Newbee
    5. Oktober 2017 at 19:31

    Hi,
    gibt es inzwischen ein Update bzw. für wann ist es geplant, um zwei RFID Reader in das Script einzubinden zu können?

    Gruß
    Thomas

  • Rolf
    9. Oktober 2017 at 13:01

    Hallo Daniel,

    auch von mir herzlichen Dank für das tolle Script. Es passt zwar nicht 100% bei mir aber es ist sehr gut durchdacht. Tolle Arbeit!!

    Ich benutze zwar kein RFID Tagreader um das Alarm auszulösen sondern möchte eigentlich den neuen Keyfob von Fibaro nutzen.

    Ich plane 3 bis 5 verschiedene Alarm Status in meiner Umgebung:

    PresentState=Home/Away/Nightmode/Holiday/Outside

    Ich habe mir gedacht, dass ich mit meinem KeyFob die Variable setzte und dadurch eine Scene gestartet wird.

    Ich würde gerne dein Script als Vorlage nutzen weil dort schon alles vorbereitet ist.

    Könntest Du mir sagen, wie ich es am geschicktesten machen soll. Ein Script welche die 5 verschiedenen Werte der Variable überwacht oder doch eher 5 Scripts welche jeweils beim ändern der entsprechenden Variable gestartet wird.

    Wäre es möglich, dass Du für mich den RFID Bereich aus deinem Script entfernst? So dass ich das obige Vorhaben auch mit deinem Script umsetzten könnte.

    Vielleicht hast du aber auch noch ein Verbesserungsvorschlag, wie sowas am besten umgesetzt werden kann.

    Vielen Dank & beste Grüße
    Rolf

    • boomx
      10. Oktober 2017 at 12:13

      Hi,

      deine Ideen passen gar nicht zu dem vorliegenden Skript. Du könntest dir höchstens die einzelnen Funktionenn rausziehen. Ein Ändern würde länger dauern als ein Neuschreiben.

      Gruß

  • Stefan
    11. Oktober 2017 at 17:58

    Moin,

    ich habe das o.g. Script so übernommen und es läuft auch super, nun habe ich heute mein neues DANALOCK V3 bekommen, die ID oben eingetragen leider passiert da nichts, d.h. die Tür öffnet sich nicht. Hat jemand einen Rat?

    Lg

    Stefan

    • Stefan
      11. Oktober 2017 at 18:23

      Ich ziehe meine Frage zurück, bzw stell sie neu:

      Wie würde der Code aussehen um die Tür bei Scharfschaltung gleich abzuschließen und wo müsste man das hinschreiben?

      • boomx
        11. Oktober 2017 at 18:35

        Hi,

        du müsstest es in die Funktion actionsAfterArmed schreiben. Den Code dazu erhältst du aus der Modul-Übersicht links. Der ist aber genauso wie beim V2.

        Gruß

Leave a Response