Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Nuki Smart Lock 3.0 pro in ioBroker einbinden

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.9k

Nuki Smart Lock 3.0 pro in ioBroker einbinden

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
237 Beiträge 57 Kommentatoren 61.4k Aufrufe 49 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • kipferlK kipferl

    @newbie2007

    zusätzlich dieses simple blockly, das 3 sek nach jeder Änderung der "lockAction" diese wieder auf "null" setzt, sichert das auch nochmal ab.

    24276dda-e24d-4e45-8b04-caa9b1dce371-image.png

    N Offline
    N Offline
    newbie2007
    schrieb am zuletzt editiert von
    #200

    @kipferl meinst du den DP „lockAction“?
    Oder nicht etwa die Datenpunkte „lock“ bzw. „unlock“?
    Gruß
    Uwe

    1 Antwort Letzte Antwort
    0
    • MartinPM MartinP

      @rk62 said in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

      @newbie2007 Hast du in der MQTT-Instanz alle Häkchen entfernt? Im Standard ist "Eigene States beim Verbinden publizieren" eingeschaltet. Wenn das letzte Signal "Tür öffnen" war, dann gibt der Adapter genau dieses Kommando bei jeder Neuverbindung nochmal an das Schloss.

      be82f645-592f-44d0-b24c-1b26518b1cac-image.png

      Gruß, Ralf

      EIGENTLICH muss man bei diesen Settings eine eigene MQTT-Instanz für die Nuki-Schlösser aufsetzen. Wenn ich das im Kopf so durchgehe wäre das Löschen einiger der Haken für viele meiner MQTT Geräte nicht vorteilhaft. Habt Ihr eigene Instanzen für die Schlösser?

      Wie schaut das eigentlich mit der rechtlichen Seite solcher Integrierungen von Schließtechnik ins Smart Home aus? Wenn sich jemand Zugang ohne Einbruchsspuren zu hinterlassen verschaffen konnte, und man stellt hinterher fest, dass das Nuki-Schloss in das Smart Home integriert wurde, könnte das schon zu Problemen mit der Hausratversicherung führen ...

      S Offline
      S Offline
      smarthomeNew
      schrieb am zuletzt editiert von
      #201

      @martinp Würde es auch gerne mit eigener Instanz laufen lassen. Allerdings warte ich dafür noch auf die Möglichkeit, im Nuki einen eigenen Port mitgeben zu können. Hoffe das kommt bald.

      1 Antwort Letzte Antwort
      0
      • kipferlK kipferl

        @newbie2007

        zusätzlich dieses simple blockly, das 3 sek nach jeder Änderung der "lockAction" diese wieder auf "null" setzt, sichert das auch nochmal ab.

        24276dda-e24d-4e45-8b04-caa9b1dce371-image.png

        N Offline
        N Offline
        newbie2007
        schrieb am zuletzt editiert von
        #202

        @kipferl wie steuert man eigentlich das Türschloss?
        Ich dachte durch Setzen der DP „lock“ und „unlock“ auf true.
        Ist das nicht so?

        kipferlK 1 Antwort Letzte Antwort
        0
        • N newbie2007

          @kipferl wie steuert man eigentlich das Türschloss?
          Ich dachte durch Setzen der DP „lock“ und „unlock“ auf true.
          Ist das nicht so?

          kipferlK Offline
          kipferlK Offline
          kipferl
          schrieb am zuletzt editiert von
          #203

          @newbie2007

          ich mach es über die LockAction wie in der Nuki MQTT API beschrieben, weil man hier mehr optionen hat als "nur" lock und unlock wie zB "full lock" welches ich gerne Nachts verwende.

          da7eba71-f8d2-4712-a5ee-9e140854084f-image.png

          S 1 Antwort Letzte Antwort
          0
          • Sascha RothS Sascha Roth

            @rk62
            Das mit dem .lockActionEvent stimmt nicht, was du schreibst, wenn ich das Schloss per Mosquito MQTT Server verbinde, auf meinem Proxmox per LXC, und dann mit dem MQTT Explorer das ganze auslese, zeigt er mir Werte wie in der Nuki MQTT Api beschrieben an.
            Nutze ich dann den MQTT ioBroker MQTT Client Adapter kommen genauso wie wenn ich den MQTT Broker Adapter nutze nur diese komischen zeichen an, somit gehe ich davon aus, das es am ioBroker Mqtt Adapter liegt!

            Das mit Nur bei Änderungen publizieren kann ich ebenfalls bestätigen, bzw. auch wenn alle Haken raus sind, hat das Schloss kein eigenleben mehr, bzw. Schließt nicht aufeinmal Automatisch auf! Problem wird sein, das im Lock Action State die Zahl stehen bleibt, die als letztes gewält wurde, selbst wenn es die 2 ist, was abschließen ist, ist die türe bereits abgeschlossen, und bekommt dann nach Trennung oder neu Verbindung wieder den State 2 mach das Schloß Lock & Go und Tür öffnen, dies konnte ich mehrfach reproduzieren! Dadurch, steht dann die Türe aufeinmal komplett offen!

            3.4 Lock Actions

            1 > unlock = aufschließen
            2 > lock = abschließen
            3 > unlatch = Türe öffnen
            4 > lock ‘n’ go = Lock ‘n’ Go
            5 > lock ‘n’ go with unlatch = Lock ‘n’ Go & Türe öffnen
            6 > full lock = abschließen
            80 > fob (without action) =
            90 > button (without action) =

            3.3 Lock States

            0 > uncalibrated = Türe unkalibriert
            1 > locked = Türe abgeschlossen
            2 > unlocking = Türe aufschließen
            3 > unlocked = Türe aufgeschlossen
            4 > locking = Türe abschließen
            5 > unlatched = Tür öffnen
            6 > unlocked (lock ‘n’ go) = Lock ‘n’ Go
            7 > unlatching = Lock ‘n’ Go & Türe öffnen
            253 > -
            254 > motor blocked = Motor Blockiert
            255 > undefined = nicht definiert
            3fd69d79-9ac8-4f25-8056-9a0ca236dda5-grafik.png

            942b0f9e-1ac5-424d-81c1-6e9336a982a3-grafik.png

            N Offline
            N Offline
            newbie2007
            schrieb am zuletzt editiert von
            #204

            @sascha-roth Hi Sascha,
            wie machst du das mit der VIS?
            Welches Widget hast du für die Zustandsanzeige des Schlosses genommen?
            Gruß
            Uwe

            1 Antwort Letzte Antwort
            0
            • N newbie2007

              @smarthomenew
              Hallo,
              ich habe seit 3 Tagen auch das Nuki 3.0 und den MQTT-Adapter installiert.
              Funktioniert auch alles, aber bei mir geht nachts auch plötzlich die Haustür auf.
              Gibt es denn schon nähere Erkenntnisse, wie das problem seseitigt werden kann?
              Ansonsten geht ja alles.

              Aber das plötzlich die Haustür aufsteht.......

              Gruß
              Uwe

              D Offline
              D Offline
              dwm
              schrieb am zuletzt editiert von
              #205

              So, ich hab jetzt auch mal mit Nuki und MQTT angefangen ...
              Ich finde es schon störend, dass das LockActionEvent nicht richtig funktioniert - schon weil man immer die logs von der API abrufen muss, es evt. doch Probleme mit Synchronisation und Latenzzeiten gibt.

              Deswegen hab ich mal den MQTT Adapter auf Debug gestellt, ob man da was sieht ... sehr interessant.
              Beispiel: Die MQTT API sagt dem Nuki, es soll aufschließen ...

              mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":true,"qos":0,"dup":false,"length":22,"topic":"nuki/123456XX/state","payload":{"type":"Buffer","data":[50]}}
              mqtt.0 (14027) Server received "nuki/123456XX/state" (number): 2
              

              Hier kommt also nach "state" der ... Status halt, also die Nummer zwei. In der ersten Zeile steht auch im data array die "50".
              50 Dezimal, Hex 32, ASCII "2". Soweit alles klar.
              Es folgt:

              mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":false,"qos":2,"dup":false,"length":44,"topic":"nuki/123456XX/lockActionEvent","payload":{"type":"Buffer","data":[49,44,49,55,50,44,48,44,48,44,48]},"messageId":4}
              Server received "nuki/123456XX/lockActionEvent" (string): "\u0001¬\u0000\u0000\u0000"
              

              Erst mal also der publish, mit unserem bekannten data buffer. Wenn man jetzt mal das array händisch in ASCII Werte übersetzt, steht da:
              "1,172,0,0,0"
              also genau der erwartete String für das LockActionEvent, ausgelöst von MQTT - Trigger ist 172.
              Das Problem liegt in der folgenden Zeile, der Server empfängt irgend was wild binäres und interpretiert das als String.

              So, hier verlässt mich jetzt mein Wissen: Liegt das am Nuki oder am MQTT Broker? Wär schön, wenn die MQTT Profis das mal ankucken könnten.

              CU
              Werner

              Dr. BakteriusD kipferlK 2 Antworten Letzte Antwort
              0
              • D dwm

                So, ich hab jetzt auch mal mit Nuki und MQTT angefangen ...
                Ich finde es schon störend, dass das LockActionEvent nicht richtig funktioniert - schon weil man immer die logs von der API abrufen muss, es evt. doch Probleme mit Synchronisation und Latenzzeiten gibt.

                Deswegen hab ich mal den MQTT Adapter auf Debug gestellt, ob man da was sieht ... sehr interessant.
                Beispiel: Die MQTT API sagt dem Nuki, es soll aufschließen ...

                mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":true,"qos":0,"dup":false,"length":22,"topic":"nuki/123456XX/state","payload":{"type":"Buffer","data":[50]}}
                mqtt.0 (14027) Server received "nuki/123456XX/state" (number): 2
                

                Hier kommt also nach "state" der ... Status halt, also die Nummer zwei. In der ersten Zeile steht auch im data array die "50".
                50 Dezimal, Hex 32, ASCII "2". Soweit alles klar.
                Es folgt:

                mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":false,"qos":2,"dup":false,"length":44,"topic":"nuki/123456XX/lockActionEvent","payload":{"type":"Buffer","data":[49,44,49,55,50,44,48,44,48,44,48]},"messageId":4}
                Server received "nuki/123456XX/lockActionEvent" (string): "\u0001¬\u0000\u0000\u0000"
                

                Erst mal also der publish, mit unserem bekannten data buffer. Wenn man jetzt mal das array händisch in ASCII Werte übersetzt, steht da:
                "1,172,0,0,0"
                also genau der erwartete String für das LockActionEvent, ausgelöst von MQTT - Trigger ist 172.
                Das Problem liegt in der folgenden Zeile, der Server empfängt irgend was wild binäres und interpretiert das als String.

                So, hier verlässt mich jetzt mein Wissen: Liegt das am Nuki oder am MQTT Broker? Wär schön, wenn die MQTT Profis das mal ankucken könnten.

                CU
                Werner

                Dr. BakteriusD Online
                Dr. BakteriusD Online
                Dr. Bakterius
                Most Active
                schrieb am zuletzt editiert von
                #206

                @dwm Ich habe es mit MQTT mittlerweile aufgegeben. Erstens funktioniert WLAN und damit MQTT nur, wenn die Nuki-Server erreichbar sind - es funktioniert also keine rein lokale Lösung. Zweitens ist der MQTT-Betrieb unzuverlässig. Mehrfach wurde aufgesperrt obwohl kein Befehl dazu gesendet wurde.

                Da ich mit keinem anderen MQTT-Gerät auch nur ansatzweise solche Probleme habe, liegt die Schuld wohl eindeutig bei Nuki. Und ich befürchte, da wird sich auch nichts ändern. Der Fokus liegt jetzt auf dem Nuki 4.0 und Matter. Da wird sich beim "alten" Nuki 3.0 nicht mehr viel tun...

                A 1 Antwort Letzte Antwort
                0
                • Dr. BakteriusD Dr. Bakterius

                  @dwm Ich habe es mit MQTT mittlerweile aufgegeben. Erstens funktioniert WLAN und damit MQTT nur, wenn die Nuki-Server erreichbar sind - es funktioniert also keine rein lokale Lösung. Zweitens ist der MQTT-Betrieb unzuverlässig. Mehrfach wurde aufgesperrt obwohl kein Befehl dazu gesendet wurde.

                  Da ich mit keinem anderen MQTT-Gerät auch nur ansatzweise solche Probleme habe, liegt die Schuld wohl eindeutig bei Nuki. Und ich befürchte, da wird sich auch nichts ändern. Der Fokus liegt jetzt auf dem Nuki 4.0 und Matter. Da wird sich beim "alten" Nuki 3.0 nicht mehr viel tun...

                  A Offline
                  A Offline
                  andibr
                  schrieb am zuletzt editiert von
                  #207

                  @dr-bakterius
                  Leider habe ich genau die gleichen Erfahrungen mit dem Nuki 3.0 gemacht. Plötzlich sind die auch via die Nuki App nicht mehr erreichbar, obwohl mein Accesspoint direkt neben der Türe hängt, oder er verliert einfach die MQTT Einstellungen. Die Original Akku meiner 3stk halten im Schnitt ca 3-4 Wochen, bei teilweise sehr seltenen drehvorgängen.

                  Einer meiner 3stk macht beim Verlust des Wlan immer eine Türschliessung, was eigentlich ja eine gute Sache wäre, wenn er nur den Zylinder wieder in die Ruheposition zurück drehen würde. Ich habe den schon mehrfach abgenommen und neu positioniert, aber scheinbar werden da nicht alle Winkelschritte korrekt gezählt.

                  Grundsätzlich bin ich etwas frustriert, das man für soviel Geld es nicht besser hinkriegt.

                  Andi

                  Dr. BakteriusD 1 Antwort Letzte Antwort
                  0
                  • A andibr

                    @dr-bakterius
                    Leider habe ich genau die gleichen Erfahrungen mit dem Nuki 3.0 gemacht. Plötzlich sind die auch via die Nuki App nicht mehr erreichbar, obwohl mein Accesspoint direkt neben der Türe hängt, oder er verliert einfach die MQTT Einstellungen. Die Original Akku meiner 3stk halten im Schnitt ca 3-4 Wochen, bei teilweise sehr seltenen drehvorgängen.

                    Einer meiner 3stk macht beim Verlust des Wlan immer eine Türschliessung, was eigentlich ja eine gute Sache wäre, wenn er nur den Zylinder wieder in die Ruheposition zurück drehen würde. Ich habe den schon mehrfach abgenommen und neu positioniert, aber scheinbar werden da nicht alle Winkelschritte korrekt gezählt.

                    Grundsätzlich bin ich etwas frustriert, das man für soviel Geld es nicht besser hinkriegt.

                    Andi

                    Dr. BakteriusD Online
                    Dr. BakteriusD Online
                    Dr. Bakterius
                    Most Active
                    schrieb am zuletzt editiert von
                    #208

                    @andibr Bei mir halten meine Eneloop-Akkus doch ein paar Monate durch, bei einigen Sperrvorgängen am Tag. Lässt sich dein Zylinder schwer drehen? Das benötigt dann natürlich mehr Strom.

                    Ich habe wegen der Sache einige Male mit Nuki hin und her geschrieben. Anfangs stellte man sich unwissend, dann die lapidare Antwort, dass WLAN deaktiviert wird wenn die Server nicht erreichbar sind und als ich einen Grund dafür verlangte und anmerkte, dass das eine Fehlkonstruktion ist und die Sicherheit einschränkt, kam nur zurück, dass sie mein Anliegen an die Zuständigen weiterleiten und die meinen "Vorschlag" evaluieren. (Sorry wegen dem Megasatz.)

                    Ja, es ist ein Trauerspiel... :confused:

                    A 1 Antwort Letzte Antwort
                    0
                    • Dr. BakteriusD Dr. Bakterius

                      @andibr Bei mir halten meine Eneloop-Akkus doch ein paar Monate durch, bei einigen Sperrvorgängen am Tag. Lässt sich dein Zylinder schwer drehen? Das benötigt dann natürlich mehr Strom.

                      Ich habe wegen der Sache einige Male mit Nuki hin und her geschrieben. Anfangs stellte man sich unwissend, dann die lapidare Antwort, dass WLAN deaktiviert wird wenn die Server nicht erreichbar sind und als ich einen Grund dafür verlangte und anmerkte, dass das eine Fehlkonstruktion ist und die Sicherheit einschränkt, kam nur zurück, dass sie mein Anliegen an die Zuständigen weiterleiten und die meinen "Vorschlag" evaluieren. (Sorry wegen dem Megasatz.)

                      Ja, es ist ein Trauerspiel... :confused:

                      A Offline
                      A Offline
                      andibr
                      schrieb am zuletzt editiert von
                      #209

                      @dr-bakterius
                      Leider wird so aus einer guten Idee, eben ein unbrauchbares Produkt. Es ist mit schon klar, dass ein kraftaufändigeres drehen, mehr Energie aus dem Speicher zieht. Auch ist WLAN und Bluetooth ja nich gerade als "stromsparend" bekannt. Damit könnte ich ja noch leben, denn mit einer PV-Anlage auf dem Dach ist Strom ein anderes Thema, aber einfach auf "taub" schalten wenn die Verbindung nicht aufgebaut werden kann ist schon eher kritisch.

                      Ich stelle mir einfach die Frage: haben nur die Nuki 3.0 dieses Problem oder sind die älteren mit der Bridge auch betroffen?

                      Es ist sicher auch eine Firmenstrategie wenn Probleme auftauchen einfach ein neues Produkt zu realisieren und das alte einfach zu ignorieren. Denn wer braucht schon Matter, das noch viel mehr auf eine zentrale Überwachungsdatenbank hinarbeitet. Es wird der Zeitpunkt kommen, wo uns die Politiker sagen wann wir in unsere Haus dürfen und wir ermöglichen ihnen das mit allen diesen Clouds sogar freiwillig noch.

                      Sorry, für mein etwas heftiges Statement (bin etwas desillusioniert)
                      Andi

                      Dr. BakteriusD 1 Antwort Letzte Antwort
                      0
                      • A andibr

                        @dr-bakterius
                        Leider wird so aus einer guten Idee, eben ein unbrauchbares Produkt. Es ist mit schon klar, dass ein kraftaufändigeres drehen, mehr Energie aus dem Speicher zieht. Auch ist WLAN und Bluetooth ja nich gerade als "stromsparend" bekannt. Damit könnte ich ja noch leben, denn mit einer PV-Anlage auf dem Dach ist Strom ein anderes Thema, aber einfach auf "taub" schalten wenn die Verbindung nicht aufgebaut werden kann ist schon eher kritisch.

                        Ich stelle mir einfach die Frage: haben nur die Nuki 3.0 dieses Problem oder sind die älteren mit der Bridge auch betroffen?

                        Es ist sicher auch eine Firmenstrategie wenn Probleme auftauchen einfach ein neues Produkt zu realisieren und das alte einfach zu ignorieren. Denn wer braucht schon Matter, das noch viel mehr auf eine zentrale Überwachungsdatenbank hinarbeitet. Es wird der Zeitpunkt kommen, wo uns die Politiker sagen wann wir in unsere Haus dürfen und wir ermöglichen ihnen das mit allen diesen Clouds sogar freiwillig noch.

                        Sorry, für mein etwas heftiges Statement (bin etwas desillusioniert)
                        Andi

                        Dr. BakteriusD Online
                        Dr. BakteriusD Online
                        Dr. Bakterius
                        Most Active
                        schrieb am zuletzt editiert von
                        #210

                        @andibr sagte in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

                        haben nur die Nuki 3.0 dieses Problem oder sind die älteren mit der Bridge auch betroffen?

                        Bei den älteren SmartLocks gibt es kein MQTT. Also kann da das Problem nicht auftreten. Denn die Bridge braucht man da nur für den Fernzugriff. Wenn mir einmal langweilig ist, kann ich das 3.0 pro mit einer alten Bridge verbinden und schauen ob mit dieser Konstellation WLAN und damit MQTT ohne Internetzugriff der Bridge gegeben bleibt. Aber ich traue MQTT hier nicht über den Weg wenn ohne Befehl aufgesperrt wird.

                        A 1 Antwort Letzte Antwort
                        0
                        • Dr. BakteriusD Dr. Bakterius

                          @andibr sagte in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

                          haben nur die Nuki 3.0 dieses Problem oder sind die älteren mit der Bridge auch betroffen?

                          Bei den älteren SmartLocks gibt es kein MQTT. Also kann da das Problem nicht auftreten. Denn die Bridge braucht man da nur für den Fernzugriff. Wenn mir einmal langweilig ist, kann ich das 3.0 pro mit einer alten Bridge verbinden und schauen ob mit dieser Konstellation WLAN und damit MQTT ohne Internetzugriff der Bridge gegeben bleibt. Aber ich traue MQTT hier nicht über den Weg wenn ohne Befehl aufgesperrt wird.

                          A Offline
                          A Offline
                          andibr
                          schrieb am zuletzt editiert von
                          #211

                          @dr-bakterius
                          Schon klar das mit dem MQTT, ich habe aber eigentlich die normale WLAN Funktion gemeint. Ich denke es liegt auch nicht explizit an der implentation von MQTT sondern viel tiefer bei der WLAN Schnittstelle.

                          Rein theoretisch könnte ich meine 3 Stk eben auch mit Bluetooth direkt betreiben, sofern das stabiler wäre. Denn bei mir ist die Haustüre und Wohnung EG und Wohnung 1.OG alles im Sichtbereich von der EG Wohnugstüre. Darum die Idee das ganze mit einer Bridge zu erweitern und stabilisieren. Nur leider habe ich absolut keine Idee wie ich dann denn Iob einbinden kann.

                          Oder eben alles wegwerfen und was besseres kaufen, nur was ist "besser".
                          Andi

                          1 Antwort Letzte Antwort
                          0
                          • D dwm

                            So, ich hab jetzt auch mal mit Nuki und MQTT angefangen ...
                            Ich finde es schon störend, dass das LockActionEvent nicht richtig funktioniert - schon weil man immer die logs von der API abrufen muss, es evt. doch Probleme mit Synchronisation und Latenzzeiten gibt.

                            Deswegen hab ich mal den MQTT Adapter auf Debug gestellt, ob man da was sieht ... sehr interessant.
                            Beispiel: Die MQTT API sagt dem Nuki, es soll aufschließen ...

                            mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":true,"qos":0,"dup":false,"length":22,"topic":"nuki/123456XX/state","payload":{"type":"Buffer","data":[50]}}
                            mqtt.0 (14027) Server received "nuki/123456XX/state" (number): 2
                            

                            Hier kommt also nach "state" der ... Status halt, also die Nummer zwei. In der ersten Zeile steht auch im data array die "50".
                            50 Dezimal, Hex 32, ASCII "2". Soweit alles klar.
                            Es folgt:

                            mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":false,"qos":2,"dup":false,"length":44,"topic":"nuki/123456XX/lockActionEvent","payload":{"type":"Buffer","data":[49,44,49,55,50,44,48,44,48,44,48]},"messageId":4}
                            Server received "nuki/123456XX/lockActionEvent" (string): "\u0001¬\u0000\u0000\u0000"
                            

                            Erst mal also der publish, mit unserem bekannten data buffer. Wenn man jetzt mal das array händisch in ASCII Werte übersetzt, steht da:
                            "1,172,0,0,0"
                            also genau der erwartete String für das LockActionEvent, ausgelöst von MQTT - Trigger ist 172.
                            Das Problem liegt in der folgenden Zeile, der Server empfängt irgend was wild binäres und interpretiert das als String.

                            So, hier verlässt mich jetzt mein Wissen: Liegt das am Nuki oder am MQTT Broker? Wär schön, wenn die MQTT Profis das mal ankucken könnten.

                            CU
                            Werner

                            kipferlK Offline
                            kipferlK Offline
                            kipferl
                            schrieb am zuletzt editiert von
                            #212

                            @dwm said in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

                            So, ich hab jetzt auch mal mit Nuki und MQTT angefangen ...
                            Ich finde es schon störend, dass das LockActionEvent nicht richtig funktioniert - schon weil man immer die logs von der API abrufen muss, es evt. doch Probleme mit Synchronisation und Latenzzeiten gibt.

                            Deswegen hab ich mal den MQTT Adapter auf Debug gestellt, ob man da was sieht ... sehr interessant.
                            Beispiel: Die MQTT API sagt dem Nuki, es soll aufschließen ...

                            mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":true,"qos":0,"dup":false,"length":22,"topic":"nuki/123456XX/state","payload":{"type":"Buffer","data":[50]}}
                            mqtt.0 (14027) Server received "nuki/123456XX/state" (number): 2
                            

                            Hier kommt also nach "state" der ... Status halt, also die Nummer zwei. In der ersten Zeile steht auch im data array die "50".
                            50 Dezimal, Hex 32, ASCII "2". Soweit alles klar.
                            Es folgt:

                            mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":false,"qos":2,"dup":false,"length":44,"topic":"nuki/123456XX/lockActionEvent","payload":{"type":"Buffer","data":[49,44,49,55,50,44,48,44,48,44,48]},"messageId":4}
                            Server received "nuki/123456XX/lockActionEvent" (string): "\u0001¬\u0000\u0000\u0000"
                            

                            Erst mal also der publish, mit unserem bekannten data buffer. Wenn man jetzt mal das array händisch in ASCII Werte übersetzt, steht da:
                            "1,172,0,0,0"
                            also genau der erwartete String für das LockActionEvent, ausgelöst von MQTT - Trigger ist 172.
                            Das Problem liegt in der folgenden Zeile, der Server empfängt irgend was wild binäres und interpretiert das als String.

                            So, hier verlässt mich jetzt mein Wissen: Liegt das am Nuki oder am MQTT Broker? Wär schön, wenn die MQTT Profis das mal ankucken könnten.

                            CU
                            Werner

                            Ich finde die analyse interessant, und würde mich auch freuen wenn sich das jemand mit mehr Kenntnis anschauen könnte.

                            Übrigens mein Nuki 3.0 Pro funktioniert einwandfrei über MQTT, ohne ungewollte Öffnen- oder Schließ-Durchführungen.

                            D 1 Antwort Letzte Antwort
                            0
                            • kipferlK kipferl

                              @dwm said in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

                              So, ich hab jetzt auch mal mit Nuki und MQTT angefangen ...
                              Ich finde es schon störend, dass das LockActionEvent nicht richtig funktioniert - schon weil man immer die logs von der API abrufen muss, es evt. doch Probleme mit Synchronisation und Latenzzeiten gibt.

                              Deswegen hab ich mal den MQTT Adapter auf Debug gestellt, ob man da was sieht ... sehr interessant.
                              Beispiel: Die MQTT API sagt dem Nuki, es soll aufschließen ...

                              mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":true,"qos":0,"dup":false,"length":22,"topic":"nuki/123456XX/state","payload":{"type":"Buffer","data":[50]}}
                              mqtt.0 (14027) Server received "nuki/123456XX/state" (number): 2
                              

                              Hier kommt also nach "state" der ... Status halt, also die Nummer zwei. In der ersten Zeile steht auch im data array die "50".
                              50 Dezimal, Hex 32, ASCII "2". Soweit alles klar.
                              Es folgt:

                              mqtt.0 (14027) Client [SL3P_123456XX] received publish package {"cmd":"publish","retain":false,"qos":2,"dup":false,"length":44,"topic":"nuki/123456XX/lockActionEvent","payload":{"type":"Buffer","data":[49,44,49,55,50,44,48,44,48,44,48]},"messageId":4}
                              Server received "nuki/123456XX/lockActionEvent" (string): "\u0001¬\u0000\u0000\u0000"
                              

                              Erst mal also der publish, mit unserem bekannten data buffer. Wenn man jetzt mal das array händisch in ASCII Werte übersetzt, steht da:
                              "1,172,0,0,0"
                              also genau der erwartete String für das LockActionEvent, ausgelöst von MQTT - Trigger ist 172.
                              Das Problem liegt in der folgenden Zeile, der Server empfängt irgend was wild binäres und interpretiert das als String.

                              So, hier verlässt mich jetzt mein Wissen: Liegt das am Nuki oder am MQTT Broker? Wär schön, wenn die MQTT Profis das mal ankucken könnten.

                              CU
                              Werner

                              Ich finde die analyse interessant, und würde mich auch freuen wenn sich das jemand mit mehr Kenntnis anschauen könnte.

                              Übrigens mein Nuki 3.0 Pro funktioniert einwandfrei über MQTT, ohne ungewollte Öffnen- oder Schließ-Durchführungen.

                              D Offline
                              D Offline
                              dwm
                              schrieb am zuletzt editiert von
                              #213

                              Die ungewollten Öffnungsversuche hab ich ganz am Anfang gesehen - das ist genau das hier beschriebene Problem mit "Publish after Subscribe" - das ist unter Kontrolle.
                              Was ich halt gern machen würde wär speziell bei "Unlatch" rauszufinden wer's war.
                              Der Adapter ist von @Bluefox, wenn ich mich nicht irre ... ich mach da mal ein issue rein.

                              M S 2 Antworten Letzte Antwort
                              0
                              • D dwm

                                Die ungewollten Öffnungsversuche hab ich ganz am Anfang gesehen - das ist genau das hier beschriebene Problem mit "Publish after Subscribe" - das ist unter Kontrolle.
                                Was ich halt gern machen würde wär speziell bei "Unlatch" rauszufinden wer's war.
                                Der Adapter ist von @Bluefox, wenn ich mich nicht irre ... ich mach da mal ein issue rein.

                                M Offline
                                M Offline
                                martin
                                schrieb am zuletzt editiert von
                                #214

                                Ich habe mein Nuki jetzt auch mit einer eigenen MQTT-Instanz im IOB.
                                Frage jetzt wie kann ich in einem Blockly-Skript einstellen, dass er das Nuki z. B. in der Nacht wenn die Haustüre abgesperrt ist öffnet etc.?

                                D 1 Antwort Letzte Antwort
                                0
                                • M martin

                                  Ich habe mein Nuki jetzt auch mit einer eigenen MQTT-Instanz im IOB.
                                  Frage jetzt wie kann ich in einem Blockly-Skript einstellen, dass er das Nuki z. B. in der Nacht wenn die Haustüre abgesperrt ist öffnet etc.?

                                  D Offline
                                  D Offline
                                  dwm
                                  schrieb am zuletzt editiert von
                                  #215

                                  @martin
                                  ... müsst jetzt bei Blockly schauen, ich verwende da direkt Javascript ...

                                  Grundsätzlich repräsentieren die MQTT Datenpunkte ja die Nuki MQTT API wie hier im PDF beschrieben: https://developer.nuki.io/t/mqtt-api-specification-v1-4/19223

                                  D.h. Du schreibst nach "LockAction" eben die zum Beispiel die 1 für "unlock", dann sperrt das Ding auf.

                                  Folgende Lock Actions sind möglich:
                                  1 unlock activate rto
                                  2 lock deactivate rto
                                  3 unlatch electric strike actuation
                                  4 lock ‘n’ go activate continuous mode
                                  5 lock ‘n’ go with unlatch deactivate continuous mode
                                  6 full lock

                                  Fallen in die man tappen kann:

                                  • die MQTT API muss für "sperren" freigeschaltet sein, sonst macht es halt nix.
                                  • Wie in diesem Thread beschrieben, sollte eine LockAction nach ein paar Sekunden mit "null" und dem Ack Flag überschrieben werden, das Nuki macht alle paar Stunden einen reconnect, und wenn in der LockAction dann ein gültiges Kommando steht, wird das - je nach Einstellung des Adapters - halt NOCHMAL geschickt. Das Ergebnis ist dann, dass um halb vier Uhr morgens die Tür aufgeht.
                                    Bei richtiger Einstellung des MQTT Adapters sollte es das nicht brauchen, aber sicher ist sicher :)
                                    Kleines Code-Snippet zur Illustration:
                                  var MqttAdapterId ='mqtt.0';
                                  var NukiId = '1234565x';
                                  
                                  // reset MQTT lockAction data point to null after 5 sec. for security reasons
                                  on ({id: [
                                              MqttAdapterId+'.nuki.'+NukiId+'.lockAction',
                                              MqttAdapterId+'.nuki.'+NukiId+'.lock',
                                              MqttAdapterId+'.nuki.'+NukiId+'.unlock'
                                           ], valNe: null, change: 'any'},
                                      function(dp) {
                                          setStateDelayed ( dp.id, null, 5000, true );
                                  });
                                  
                                  M 1 Antwort Letzte Antwort
                                  1
                                  • D Offline
                                    D Offline
                                    dwm
                                    schrieb am zuletzt editiert von
                                    #216

                                    Vielleich noch ein paar Worte zum "LockActionState" ...
                                    Hab da mal auf github beim MQTT Adapter ein issue eingetragen, und ich glaub die bei Nuki haben das auch schon gehört ;) ... braucht halt alles Zeit.
                                    Es gibt bei den Nukis übrigens grade anscheinend ne Beta-Firmware, die angeblich die angesprochenen Problemchen mit WLAN und MQTT lokal etc. adressiert. Mal schaun.

                                    Ich hab jetzt mal einen extrem üblen und grauslichen Workaround gebaut ...
                                    Grundidee: Nachdem die richtigen Daten ja im debug log stehen, muss man die ja eigentlich nur da rausholen ...

                                    Also:

                                    • mqtt Adapter auf debug stellen, so dass alles getraced wird. Im log müssen die Meldungen auftauchen, wie paar Beiträge weiter oben beschrieben.
                                    • Eigene logparser Instanz, mit den Einstellungen für den Parser:
                                      Name: NukiLockActionEvent
                                      Whitelist UND: /mqtt.[0-9].*lockActionEvent.*payload/
                                      Häkchen bei "Debug" gesetzt
                                      Max 1024
                                      Bereinigen: /mqtt.[0-9].*publish\spackage\s/
                                      Leeren nach 2 Tagen

                                    Ich hab die Liste auf 20 Einträge beschränkt. Damit hab ich eine Liste mit den 20 letzten MQTT LockEvent data payloads :)

                                    Wenn jetzt auf mqtt.0 ein LockActionEvent kommt (das Event ist ja da, auch wenn mehr oder weniger Unsinn drinsteht), mache ich beim Logparser ein "ForceUpdate", und lese bisschen später das payload aus dem log aus. Voila.

                                    Grobes Code Snippet zur Illustration:

                                    function bin2String(arr) {
                                      let result = '';
                                      for (let i = 0; i < arr.length; i++) {
                                        result += String.fromCharCode(arr[i]);
                                      }
                                      return result;
                                    }
                                    
                                    function getLastestLockActionEvent(){
                                        let result = {
                                            lockActionEventStr : null,
                                            ts              : null,
                                        };
                                    
                                        let logEntry = getState('logparser.1.filters.NukiLockActionEvent.json'/*Json*/).val;
                                    
                                        try {
                                            let logObj = JSON.parse(logEntry);
                                            if (logObj.length == 0) return null;
                                            
                                            let logMessage = JSON.parse(logObj[0].message);
                                            result.lockActionEventStr = bin2String(logMessage.payload.data);
                                            result.ts = logObj[0].ts;
                                            let dt = new Date(result.ts);
                                            result.timeStamp = dt.toISOString();
                                        } catch (e) {
                                            return null;
                                        }
                                        return result;
                                    }
                                    
                                    function NukiLockActionEventVerification(){
                                        let lockActionEvt = getLatestLockActionEvent();
                                        // debug output
                                        console.log(JSON.stringify(lockActionEvt));
                                    
                                        if (lockActionEvt !== null){
                                            let tokenized = lockActionEvt.lockActionEventStr.split(',');
                                                  
                                            // act accordingly ... 
                                        } else {
                                            // error handling
                                       }
                                    }
                                    
                                    function NukiLockActionEventChange(dp){              
                                        setStateDelayed('logparser.1.forceUpdate'/*Force updating all states immediately*/, true,50);
                                        setTimeout( NukiLockActionEventVerification , 250, dp.ts );
                                    }
                                    
                                    on ({id: MqttAdapterId+'.nuki.'+NukiId+'.lockActionEvent', change: 'any' }, NukiLockActionEventChange );
                                    
                                    

                                    Ich hoffe mal, das ist einigermassen verständlich.
                                    Das Ganze klappt grundsätzlich ganz nett, aber ist aber halt schon recht komplex dafür, dass der String ja einfach so dastehen sollt ... :face_with_rolling_eyes: .

                                    1 Antwort Letzte Antwort
                                    0
                                    • D dwm

                                      @martin
                                      ... müsst jetzt bei Blockly schauen, ich verwende da direkt Javascript ...

                                      Grundsätzlich repräsentieren die MQTT Datenpunkte ja die Nuki MQTT API wie hier im PDF beschrieben: https://developer.nuki.io/t/mqtt-api-specification-v1-4/19223

                                      D.h. Du schreibst nach "LockAction" eben die zum Beispiel die 1 für "unlock", dann sperrt das Ding auf.

                                      Folgende Lock Actions sind möglich:
                                      1 unlock activate rto
                                      2 lock deactivate rto
                                      3 unlatch electric strike actuation
                                      4 lock ‘n’ go activate continuous mode
                                      5 lock ‘n’ go with unlatch deactivate continuous mode
                                      6 full lock

                                      Fallen in die man tappen kann:

                                      • die MQTT API muss für "sperren" freigeschaltet sein, sonst macht es halt nix.
                                      • Wie in diesem Thread beschrieben, sollte eine LockAction nach ein paar Sekunden mit "null" und dem Ack Flag überschrieben werden, das Nuki macht alle paar Stunden einen reconnect, und wenn in der LockAction dann ein gültiges Kommando steht, wird das - je nach Einstellung des Adapters - halt NOCHMAL geschickt. Das Ergebnis ist dann, dass um halb vier Uhr morgens die Tür aufgeht.
                                        Bei richtiger Einstellung des MQTT Adapters sollte es das nicht brauchen, aber sicher ist sicher :)
                                        Kleines Code-Snippet zur Illustration:
                                      var MqttAdapterId ='mqtt.0';
                                      var NukiId = '1234565x';
                                      
                                      // reset MQTT lockAction data point to null after 5 sec. for security reasons
                                      on ({id: [
                                                  MqttAdapterId+'.nuki.'+NukiId+'.lockAction',
                                                  MqttAdapterId+'.nuki.'+NukiId+'.lock',
                                                  MqttAdapterId+'.nuki.'+NukiId+'.unlock'
                                               ], valNe: null, change: 'any'},
                                          function(dp) {
                                              setStateDelayed ( dp.id, null, 5000, true );
                                      });
                                      
                                      M Offline
                                      M Offline
                                      martin
                                      schrieb am zuletzt editiert von
                                      #217

                                      @dwm Danke. Das hilft mir schon mal weiter.
                                      Was ich nicht verstehe ist "Ack Flag". Dass da nach ein paar Sekunden wieder "null" rein soll habe ich verstanden. Aber wer, wie, was ist Ack Flag?

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        mooly
                                        schrieb am zuletzt editiert von
                                        #218

                                        Hallo!

                                        Kann mir bitte jemand einen Tipp geben:

                                        Wie kann ich die States des Door-Sensors und der Schließzustandes ausgeben lassen in meiner VIS? Ich verstehe das Prinzip, aber wie setze ich das um?

                                        Also ich will im ersten Schritt einfach nur sehen ist die Tür offen oder geschlossen und ist die Tür verriegelt oder entriegelt?

                                        Ich würde mich freuen wenn mir jemand helfen könnte. MQTT läuft ohne Probleme, aber ich bekomme es nicht hin mir die States ausgeben zu lassen.

                                        1 Antwort Letzte Antwort
                                        0
                                        • Sascha RothS Sascha Roth

                                          @rk62
                                          Das mit dem .lockActionEvent stimmt nicht, was du schreibst, wenn ich das Schloss per Mosquito MQTT Server verbinde, auf meinem Proxmox per LXC, und dann mit dem MQTT Explorer das ganze auslese, zeigt er mir Werte wie in der Nuki MQTT Api beschrieben an.
                                          Nutze ich dann den MQTT ioBroker MQTT Client Adapter kommen genauso wie wenn ich den MQTT Broker Adapter nutze nur diese komischen zeichen an, somit gehe ich davon aus, das es am ioBroker Mqtt Adapter liegt!

                                          Das mit Nur bei Änderungen publizieren kann ich ebenfalls bestätigen, bzw. auch wenn alle Haken raus sind, hat das Schloss kein eigenleben mehr, bzw. Schließt nicht aufeinmal Automatisch auf! Problem wird sein, das im Lock Action State die Zahl stehen bleibt, die als letztes gewält wurde, selbst wenn es die 2 ist, was abschließen ist, ist die türe bereits abgeschlossen, und bekommt dann nach Trennung oder neu Verbindung wieder den State 2 mach das Schloß Lock & Go und Tür öffnen, dies konnte ich mehrfach reproduzieren! Dadurch, steht dann die Türe aufeinmal komplett offen!

                                          3.4 Lock Actions

                                          1 > unlock = aufschließen
                                          2 > lock = abschließen
                                          3 > unlatch = Türe öffnen
                                          4 > lock ‘n’ go = Lock ‘n’ Go
                                          5 > lock ‘n’ go with unlatch = Lock ‘n’ Go & Türe öffnen
                                          6 > full lock = abschließen
                                          80 > fob (without action) =
                                          90 > button (without action) =

                                          3.3 Lock States

                                          0 > uncalibrated = Türe unkalibriert
                                          1 > locked = Türe abgeschlossen
                                          2 > unlocking = Türe aufschließen
                                          3 > unlocked = Türe aufgeschlossen
                                          4 > locking = Türe abschließen
                                          5 > unlatched = Tür öffnen
                                          6 > unlocked (lock ‘n’ go) = Lock ‘n’ Go
                                          7 > unlatching = Lock ‘n’ Go & Türe öffnen
                                          253 > -
                                          254 > motor blocked = Motor Blockiert
                                          255 > undefined = nicht definiert
                                          3fd69d79-9ac8-4f25-8056-9a0ca236dda5-grafik.png

                                          942b0f9e-1ac5-424d-81c1-6e9336a982a3-grafik.png

                                          M Offline
                                          M Offline
                                          mooly
                                          schrieb am zuletzt editiert von
                                          #219

                                          @sascha-roth said in Nuki Smart Lock 3.0 pro in ioBroker einbinden:

                                          @rk62
                                          Das mit dem .lockActionEvent stimmt nicht, was du schreibst, wenn ich das Schloss per Mosquito MQTT Server verbinde, auf meinem Proxmox per LXC, und dann mit dem MQTT Explorer das ganze auslese, zeigt er mir Werte wie in der Nuki MQTT Api beschrieben an.
                                          Nutze ich dann den MQTT ioBroker MQTT Client Adapter kommen genauso wie wenn ich den MQTT Broker Adapter nutze nur diese komischen zeichen an, somit gehe ich davon aus, das es am ioBroker Mqtt Adapter liegt!

                                          Das mit Nur bei Änderungen publizieren kann ich ebenfalls bestätigen, bzw. auch wenn alle Haken raus sind, hat das Schloss kein eigenleben mehr, bzw. Schließt nicht aufeinmal Automatisch auf! Problem wird sein, das im Lock Action State die Zahl stehen bleibt, die als letztes gewält wurde, selbst wenn es die 2 ist, was abschließen ist, ist die türe bereits abgeschlossen, und bekommt dann nach Trennung oder neu Verbindung wieder den State 2 mach das Schloß Lock & Go und Tür öffnen, dies konnte ich mehrfach reproduzieren! Dadurch, steht dann die Türe aufeinmal komplett offen!

                                          3.4 Lock Actions

                                          1 > unlock = aufschließen
                                          2 > lock = abschließen
                                          3 > unlatch = Türe öffnen
                                          4 > lock ‘n’ go = Lock ‘n’ Go
                                          5 > lock ‘n’ go with unlatch = Lock ‘n’ Go & Türe öffnen
                                          6 > full lock = abschließen
                                          80 > fob (without action) =
                                          90 > button (without action) =

                                          3.3 Lock States

                                          0 > uncalibrated = Türe unkalibriert
                                          1 > locked = Türe abgeschlossen
                                          2 > unlocking = Türe aufschließen
                                          3 > unlocked = Türe aufgeschlossen
                                          4 > locking = Türe abschließen
                                          5 > unlatched = Tür öffnen
                                          6 > unlocked (lock ‘n’ go) = Lock ‘n’ Go
                                          7 > unlatching = Lock ‘n’ Go & Türe öffnen
                                          253 > -
                                          254 > motor blocked = Motor Blockiert
                                          255 > undefined = nicht definiert
                                          3fd69d79-9ac8-4f25-8056-9a0ca236dda5-grafik.png

                                          942b0f9e-1ac5-424d-81c1-6e9336a982a3-grafik.png

                                          Hallo!

                                          Das sieht wirklich klasse aus. Kannst du mir verraten, wie du die Lockstates bzw. Doorstates abfrägst? Ich habe MQTT eingerichtet, aber ich habe noch keinen genauen plan, wie ich diese abfrage, weil es ja keinen true/false wert z.B. zum Tür offen/zu gibt, sonder ich diese States von 1-5 z.B. auslesen muss um sie entsprechend in der VIS darstellen zu können. OMG leicht noobig ausgedrückt, sorry. Ich denke du weisst was ich meine.

                                          DANKE!

                                          LG

                                          A 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          781

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe