Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt

NEWS

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

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

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

Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt

Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt

Scheduled Pinned Locked Moved ioBroker Allgemein
7 Posts 2 Posters 584 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Offline
    K Offline
    Kaskadeur111
    wrote on last edited by
    #1

    Hallo Gemeinde,

    Ich hoffe ich bin hier richtig!

    Ich habe mir 3 Stück Aquara P1 Motion Sensoren gekauft wegen des Lichtsensors.

    Beim Einbinden per Zigbee Adapter (mittels Sonoff Zigbee 3.0 Stick) ist mir dann aufgefallen, dass sie im Gegensatz zu den "Vorgänger-Modellen" keinen Time of last motion Datenpunkt mehr anbieten. (Dieser setzt sich bei meinen anderen Sensoren automatisch auf 0 zurück und zählt solange in 5 oder 10 Sekunden Schritten nach oben bis die nächste Bewegung erkannt wird. Dieser Datenpunkt macht es sehr einfach Automationen zu erstellen.

    laut diesen beiden Links:

    Vorgängermodell

    Aktuelles Modell "P1"

    unterstützten beide die Option no_occupancy_since *

    (Sends a message the last time occupancy (occupancy: true) was detected. When setting this for example to [10, 60] a {"no_occupancy_since": 10} will be send after 10 seconds and a {"no_occupancy_since": 60} after 60 seconds. The value must be a list of [object Object].:*)

    Ich habe leider keine wirkliche Ahnung an was es scheitert, vermute aber dass der Zigbee Adapter für das Neue Modell den Datenpunkt nicht erstellt.

    (A) Kann mir jemand sagen, ob ich eventuell mit ein paar Zeilen Code im Adapter selbst etwas ändern kann?

    (B) Alternativ müsste ich als Workarround dann wohl ein Javascript schreiben welches einen Time since last Motion Datenpunkt bei Änderung des Occupancy Datenpunktes erstellt und aktualisiert.

    (C) Besser wäre es jedoch, wenn der Datenpunkt vom Zigbee Adapter direkt geliefert würde. Richtig? <- Ist ein Issue im Zigbee Adapter erstellen sinnvoll?

    Screen1.png

    K 2 Replies Last reply
    0
    • K Kaskadeur111

      Hallo Gemeinde,

      Ich hoffe ich bin hier richtig!

      Ich habe mir 3 Stück Aquara P1 Motion Sensoren gekauft wegen des Lichtsensors.

      Beim Einbinden per Zigbee Adapter (mittels Sonoff Zigbee 3.0 Stick) ist mir dann aufgefallen, dass sie im Gegensatz zu den "Vorgänger-Modellen" keinen Time of last motion Datenpunkt mehr anbieten. (Dieser setzt sich bei meinen anderen Sensoren automatisch auf 0 zurück und zählt solange in 5 oder 10 Sekunden Schritten nach oben bis die nächste Bewegung erkannt wird. Dieser Datenpunkt macht es sehr einfach Automationen zu erstellen.

      laut diesen beiden Links:

      Vorgängermodell

      Aktuelles Modell "P1"

      unterstützten beide die Option no_occupancy_since *

      (Sends a message the last time occupancy (occupancy: true) was detected. When setting this for example to [10, 60] a {"no_occupancy_since": 10} will be send after 10 seconds and a {"no_occupancy_since": 60} after 60 seconds. The value must be a list of [object Object].:*)

      Ich habe leider keine wirkliche Ahnung an was es scheitert, vermute aber dass der Zigbee Adapter für das Neue Modell den Datenpunkt nicht erstellt.

      (A) Kann mir jemand sagen, ob ich eventuell mit ein paar Zeilen Code im Adapter selbst etwas ändern kann?

      (B) Alternativ müsste ich als Workarround dann wohl ein Javascript schreiben welches einen Time since last Motion Datenpunkt bei Änderung des Occupancy Datenpunktes erstellt und aktualisiert.

      (C) Besser wäre es jedoch, wenn der Datenpunkt vom Zigbee Adapter direkt geliefert würde. Richtig? <- Ist ein Issue im Zigbee Adapter erstellen sinnvoll?

      Screen1.png

      K Offline
      K Offline
      Kaskadeur111
      wrote on last edited by Kaskadeur111
      #2

      um die Begriffe noch zu präzisieren:

      • der Datenpunkt in der Objektstruktur heisst "no_motion"

      • die Zigbee Option heisst "no_occupancy_since"

      • in der Zigbee-Adapter GUI heisst es "Time from last motion"

      1 Reply Last reply
      0
      • K Kaskadeur111

        Hallo Gemeinde,

        Ich hoffe ich bin hier richtig!

        Ich habe mir 3 Stück Aquara P1 Motion Sensoren gekauft wegen des Lichtsensors.

        Beim Einbinden per Zigbee Adapter (mittels Sonoff Zigbee 3.0 Stick) ist mir dann aufgefallen, dass sie im Gegensatz zu den "Vorgänger-Modellen" keinen Time of last motion Datenpunkt mehr anbieten. (Dieser setzt sich bei meinen anderen Sensoren automatisch auf 0 zurück und zählt solange in 5 oder 10 Sekunden Schritten nach oben bis die nächste Bewegung erkannt wird. Dieser Datenpunkt macht es sehr einfach Automationen zu erstellen.

        laut diesen beiden Links:

        Vorgängermodell

        Aktuelles Modell "P1"

        unterstützten beide die Option no_occupancy_since *

        (Sends a message the last time occupancy (occupancy: true) was detected. When setting this for example to [10, 60] a {"no_occupancy_since": 10} will be send after 10 seconds and a {"no_occupancy_since": 60} after 60 seconds. The value must be a list of [object Object].:*)

        Ich habe leider keine wirkliche Ahnung an was es scheitert, vermute aber dass der Zigbee Adapter für das Neue Modell den Datenpunkt nicht erstellt.

        (A) Kann mir jemand sagen, ob ich eventuell mit ein paar Zeilen Code im Adapter selbst etwas ändern kann?

        (B) Alternativ müsste ich als Workarround dann wohl ein Javascript schreiben welches einen Time since last Motion Datenpunkt bei Änderung des Occupancy Datenpunktes erstellt und aktualisiert.

        (C) Besser wäre es jedoch, wenn der Datenpunkt vom Zigbee Adapter direkt geliefert würde. Richtig? <- Ist ein Issue im Zigbee Adapter erstellen sinnvoll?

        Screen1.png

        K Offline
        K Offline
        Kaskadeur111
        wrote on last edited by Kaskadeur111
        #3

        Ich habe es jetzt mit einem Script gelöst, falls jemand auch den no_motion Datenpunkt benötigt!

        Hinweis: ihr müsst einmalig im Objektbaum jedes einzelnen P1 den Datenpunkt "no_motion" mit Typ "number" anlegen.
        Das Script aktualisiert diesen Datenpunkt dann bei Bewegung und zusätzlich im festen Intervall (zb 10 Sekunden).

        Zusätzlich wird no_motion dann auch automatisch in der Zigbee GUI des Bewegungsmelders angezeigt!

        ////////////////////////////////////////////////////// Bei Scriptstart Subscription-Objekte festlegen //////////////////////////////////////////////////////
        var object_P1_occupancy  = $('channel[state.id=zigbee.1.54ef*.occupancy]'); //MEINE P1 Sensoren haben eine Zigbee ID welche mit 54ef beginnt, ggf. anpassen!
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
        
        function Schleife()
        
        {   object_P1_occupancy.each //Alle Aquara P1 durchgehen
            
            (    function (id, i)
                
                {  var occupancy = getState(id).val; //occupancy Wert ermitteln (true/false)
                   var occupancy_changezeitpunkt = getState(id).lc;  //Zeitstempel letzte Änderung
                   var aktuelles_Datum = new Date().getTime();
        
                        if (occupancy == false) { //wenn Occupancy auf false steht, ermitteln seit wann
                        var parentDeviceId = id.split(".").slice(0,-1).join(".");
                        var differenz = Math.round(((aktuelles_Datum - occupancy_changezeitpunkt)/1000)); //Differenz in Sekunden
                        setState(parentDeviceId + '.no_motion', differenz, true);
                        }
        
                        if (occupancy == true) { //wenn occupancy auf true -> last Motion auf 0 setzen
                        var parentDeviceId = id.split(".").slice(0,-1).join(".");
                        setState(parentDeviceId + '.no_motion', 0, true);
                        }
        
                }
            ); 
        
        };
        
        //////// Trigger ////////
        object_P1_occupancy.on(function() {   // bei Zustandänderung occupancy (true/false)
           Schleife();
        });
        
        schedule("*/10 * * * * *", function () {  // jede 10 Sekunden ("* * * * *"")
           Schleife();
        });
        arteckA 1 Reply Last reply
        0
        • K Kaskadeur111

          Ich habe es jetzt mit einem Script gelöst, falls jemand auch den no_motion Datenpunkt benötigt!

          Hinweis: ihr müsst einmalig im Objektbaum jedes einzelnen P1 den Datenpunkt "no_motion" mit Typ "number" anlegen.
          Das Script aktualisiert diesen Datenpunkt dann bei Bewegung und zusätzlich im festen Intervall (zb 10 Sekunden).

          Zusätzlich wird no_motion dann auch automatisch in der Zigbee GUI des Bewegungsmelders angezeigt!

          ////////////////////////////////////////////////////// Bei Scriptstart Subscription-Objekte festlegen //////////////////////////////////////////////////////
          var object_P1_occupancy  = $('channel[state.id=zigbee.1.54ef*.occupancy]'); //MEINE P1 Sensoren haben eine Zigbee ID welche mit 54ef beginnt, ggf. anpassen!
          ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
          
          function Schleife()
          
          {   object_P1_occupancy.each //Alle Aquara P1 durchgehen
              
              (    function (id, i)
                  
                  {  var occupancy = getState(id).val; //occupancy Wert ermitteln (true/false)
                     var occupancy_changezeitpunkt = getState(id).lc;  //Zeitstempel letzte Änderung
                     var aktuelles_Datum = new Date().getTime();
          
                          if (occupancy == false) { //wenn Occupancy auf false steht, ermitteln seit wann
                          var parentDeviceId = id.split(".").slice(0,-1).join(".");
                          var differenz = Math.round(((aktuelles_Datum - occupancy_changezeitpunkt)/1000)); //Differenz in Sekunden
                          setState(parentDeviceId + '.no_motion', differenz, true);
                          }
          
                          if (occupancy == true) { //wenn occupancy auf true -> last Motion auf 0 setzen
                          var parentDeviceId = id.split(".").slice(0,-1).join(".");
                          setState(parentDeviceId + '.no_motion', 0, true);
                          }
          
                  }
              ); 
          
          };
          
          //////// Trigger ////////
          object_P1_occupancy.on(function() {   // bei Zustandänderung occupancy (true/false)
             Schleife();
          });
          
          schedule("*/10 * * * * *", function () {  // jede 10 Sekunden ("* * * * *"")
             Schleife();
          });
          arteckA Offline
          arteckA Offline
          arteck
          Developer Most Active
          wrote on last edited by arteck
          #4

          @kaskadeur111 sagte in Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt:

          Hinweis: ihr müsst einmalig im Objektbaum jedes einzelnen P1 den Datenpunkt "no_motion" mit Typ "number" anlegen.

          das ist suboptimal.. was du da machst.. der objectbaum des adapter gehört dem adapter.. da sollstest du nicht rumpfuschen

          erstelle eher ein allias dafür und itteriere da drüber..damit bist du auch unabhängiger und musst nicht auf 54ef abfragen

          zigbee hab ich, zwave auch, nuc's genauso und HA auch

          K 1 Reply Last reply
          0
          • arteckA arteck

            @kaskadeur111 sagte in Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt:

            Hinweis: ihr müsst einmalig im Objektbaum jedes einzelnen P1 den Datenpunkt "no_motion" mit Typ "number" anlegen.

            das ist suboptimal.. was du da machst.. der objectbaum des adapter gehört dem adapter.. da sollstest du nicht rumpfuschen

            erstelle eher ein allias dafür und itteriere da drüber..damit bist du auch unabhängiger und musst nicht auf 54ef abfragen

            K Offline
            K Offline
            Kaskadeur111
            wrote on last edited by
            #5

            @arteck Hi! Prinzipiell hast du recht mit dem Script im Adapter Ordner. Aber die Vorteile (identische Datenpunktnamen no_motion, Anzeige des Datenpunkts im Zigbee Adapter und Identische Pfade der Datenpunkte bei 3 verschiedenen Aquara Motion Sensor Typen) wiegen hier (in diesem speziellen Fall) das Risiko auf (finde ich).

            Ich habe daher bewusst den Datenpunkt nicht per Script anlegen lassen, sondern nur aktualisiert, um ein späteres Update des Zigbee Adapters (wo es den Datenpunkt dann evtl irgendwann mal gibt) nicht zu behindern.

            Den Alias Adapter zu verwenden hat für mich zu viele Nachteile.

            Was passiert im schlimmsten Falle beim Update des Zigbee Adapters? Der no_motion Datenpunkt könnte Readonly sein und ich hab n paar Fehler im Protokoll. Damit kann ich leben. Ich müsste jetzt alle scripte für diese beiden P1 überarbeiten wenn ich den Alias Adapter verwende.

            Das würde ich nur tun, wenn du mir einen guten Grund nennen könntest, den DP nicht direkt im Objektbaum des Adapters anzulegen. 😀 Ein "man tut das einfach nicht" reicht mir da jetzt in diesem speziellen Fall nicht.

            arteckA 1 Reply Last reply
            0
            • K Kaskadeur111

              @arteck Hi! Prinzipiell hast du recht mit dem Script im Adapter Ordner. Aber die Vorteile (identische Datenpunktnamen no_motion, Anzeige des Datenpunkts im Zigbee Adapter und Identische Pfade der Datenpunkte bei 3 verschiedenen Aquara Motion Sensor Typen) wiegen hier (in diesem speziellen Fall) das Risiko auf (finde ich).

              Ich habe daher bewusst den Datenpunkt nicht per Script anlegen lassen, sondern nur aktualisiert, um ein späteres Update des Zigbee Adapters (wo es den Datenpunkt dann evtl irgendwann mal gibt) nicht zu behindern.

              Den Alias Adapter zu verwenden hat für mich zu viele Nachteile.

              Was passiert im schlimmsten Falle beim Update des Zigbee Adapters? Der no_motion Datenpunkt könnte Readonly sein und ich hab n paar Fehler im Protokoll. Damit kann ich leben. Ich müsste jetzt alle scripte für diese beiden P1 überarbeiten wenn ich den Alias Adapter verwende.

              Das würde ich nur tun, wenn du mir einen guten Grund nennen könntest, den DP nicht direkt im Objektbaum des Adapters anzulegen. 😀 Ein "man tut das einfach nicht" reicht mir da jetzt in diesem speziellen Fall nicht.

              arteckA Offline
              arteckA Offline
              arteck
              Developer Most Active
              wrote on last edited by arteck
              #6

              @kaskadeur111 sagte in Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt:

              Was passiert im schlimmsten Falle beim Update des Zigbee Adapters?

              der von dir angelegte Datenpunkt wird gelöscht.. mehr nicht..

              es ist dein System.. du musst es pflegen.. fängst an wild Datenpunkte im Adaptern zu erstellen weil "es ist bequemer"..ist es dein Bier

              zigbee hab ich, zwave auch, nuc's genauso und HA auch

              K 1 Reply Last reply
              0
              • arteckA arteck

                @kaskadeur111 sagte in Aquara P1 Motion Sensor, Datenpunkt "no_motion" fehlt:

                Was passiert im schlimmsten Falle beim Update des Zigbee Adapters?

                der von dir angelegte Datenpunkt wird gelöscht.. mehr nicht..

                es ist dein System.. du musst es pflegen.. fängst an wild Datenpunkte im Adaptern zu erstellen weil "es ist bequemer"..ist es dein Bier

                K Offline
                K Offline
                Kaskadeur111
                wrote on last edited by
                #7

                @arteck Na dann passts ja. Genau damit rechne ich. Und im Falle eines Updates des Zigbee Adapters kann ich einfach mein Script deaktivieren (falls nicht mehr von Nöten), oder die 2 DP wieder anlegen.

                Demnach ist diese Lösung für mich optimal und nicht suboptimal.

                Jetzt erstmal n Bier 😉 Cheers!

                1 Reply Last reply
                1
                Reply
                • Reply as topic
                Log in to reply
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes


                Support us

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

                621

                Online

                32.4k

                Users

                81.3k

                Topics

                1.3m

                Posts
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                ioBroker Community 2014-2025
                logo
                • Login

                • Don't have an account? Register

                • Login or register to search.
                • First post
                  Last post
                0
                • Recent
                • Tags
                • Unread 0
                • Categories
                • Unreplied
                • Popular
                • GitHub
                • Docu
                • Hilfe