Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Skripten / Logik
  4. Blockly
  5. Bewegungsmelder nur aktivieren wenn das Licht aus ist

NEWS

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    6
    1
    81

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    843

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.4k

Bewegungsmelder nur aktivieren wenn das Licht aus ist

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
16 Beiträge 5 Kommentatoren 1.8k Aufrufe 5 Beobachtet
  • Ä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.
  • paul53P paul53

    @Hank sagte:

    leider funktioniert es nicht.

    Sollte es aber, wenn das Script unter der Instanz 0 läuft, denn ich kenn keinen Fehler erkennen. Poste mal den von Blockly erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

    H Offline
    H Offline
    Hank
    schrieb am zuletzt editiert von Hank
    #5

    @paul53
    ich weiß leider nicht genau was du mit "unter der Instanz 0" meinst.
    Wenn du meinst das Script Engine unter instanz 0 läuft dann ist die Antwort ja.

    var manuell, timeout;
    
    
    on({id: 'hue.0.Büro.on', change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      manuell = (obj.state ? obj.state.val : "") && (obj.state ? obj.state.from : "") != 'system.adapter.javascript.0';
    });
    on({id: "0_userdata.0.büropresence"/*büropresence*/, change: "ne"}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      if (!manuell) {
        manuell = false;
        if (true == getState("0_userdata.0.büropresence").val) {
          (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
          setState("hue.0.Büro.scene_hell"/*Scene Hell*/, true);
        } else if (false == getState("0_userdata.0.büropresence").val) {
          timeout = setTimeout(async function () {
            setStateDelayed("hue.0.Büro.scene_gedimmt"/*Scene Gedimmt*/, true, 10, true);
            setStateDelayed("hue.0.Büro.on"/*Büro.on*/, false, 30000, true);
          }, 30000);
        }
      }
    });
    

    danke Gruß Basti

    paul53P 1 Antwort Letzte Antwort
    0
    • H Hank

      @paul53
      ich weiß leider nicht genau was du mit "unter der Instanz 0" meinst.
      Wenn du meinst das Script Engine unter instanz 0 läuft dann ist die Antwort ja.

      var manuell, timeout;
      
      
      on({id: 'hue.0.Büro.on', change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        manuell = (obj.state ? obj.state.val : "") && (obj.state ? obj.state.from : "") != 'system.adapter.javascript.0';
      });
      on({id: "0_userdata.0.büropresence"/*büropresence*/, change: "ne"}, async function (obj) {
        var value = obj.state.val;
        var oldValue = obj.oldState.val;
        if (!manuell) {
          manuell = false;
          if (true == getState("0_userdata.0.büropresence").val) {
            (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
            setState("hue.0.Büro.scene_hell"/*Scene Hell*/, true);
          } else if (false == getState("0_userdata.0.büropresence").val) {
            timeout = setTimeout(async function () {
              setStateDelayed("hue.0.Büro.scene_gedimmt"/*Scene Gedimmt*/, true, 10, true);
              setStateDelayed("hue.0.Büro.on"/*Büro.on*/, false, 30000, true);
            }, 30000);
          }
        }
      });
      

      danke Gruß Basti

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #6

      @Hank
      Kann keinen Fehler entdecken. Lediglich Zeile 13 ist überflüssig

          manuell = false;
      

      Ist im Blockly-Bild auch nicht vorhanden.
      Was funktioniert nicht ? Verhindert das manuelle Einschalten nicht die Steuerung durch den BWM ?

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      H 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @Hank
        Kann keinen Fehler entdecken. Lediglich Zeile 13 ist überflüssig

            manuell = false;
        

        Ist im Blockly-Bild auch nicht vorhanden.
        Was funktioniert nicht ? Verhindert das manuelle Einschalten nicht die Steuerung durch den BWM ?

        H Offline
        H Offline
        Hank
        schrieb am zuletzt editiert von
        #7

        @paul53
        hey,
        nein leider nicht wenn ich über die hue app am handy das licht einstelle wird es leider immer noch durch den bewegungsmelder wieder überschrieben.

        "Lediglich Zeile 13 ist überflüssig"

        ja da hatte ich nur grade etwas noch ausprobiert und hatte vergessen es vorher wieder zu löschen.
        Screenshot 2020-11-05 002136.jpg

        ich glaube das wird mich noch eine zeit lang beschäftigen bis es funktioniert 😂

        OcrimO paul53P 2 Antworten Letzte Antwort
        0
        • H Hank

          @paul53
          hey,
          nein leider nicht wenn ich über die hue app am handy das licht einstelle wird es leider immer noch durch den bewegungsmelder wieder überschrieben.

          "Lediglich Zeile 13 ist überflüssig"

          ja da hatte ich nur grade etwas noch ausprobiert und hatte vergessen es vorher wieder zu löschen.
          Screenshot 2020-11-05 002136.jpg

          ich glaube das wird mich noch eine zeit lang beschäftigen bis es funktioniert 😂

          OcrimO Offline
          OcrimO Offline
          Ocrim
          schrieb am zuletzt editiert von Ocrim
          #8

          @Hank ich glaube das Problem liegt daran, dass du es über die App steuern willst und es dort keinen Taster als Trigger im iobroker gibt.
          Lass doch den Bewegungsmelder die variable unter der Bedingung auf true setzen, dass die Lampe noch nicht eingeschaltet ist und der Timer darf dann nur herunterzählen, wenn die Variable des BW auf true steht.

          H 1 Antwort Letzte Antwort
          0
          • OcrimO Ocrim

            @Hank ich glaube das Problem liegt daran, dass du es über die App steuern willst und es dort keinen Taster als Trigger im iobroker gibt.
            Lass doch den Bewegungsmelder die variable unter der Bedingung auf true setzen, dass die Lampe noch nicht eingeschaltet ist und der Timer darf dann nur herunterzählen, wenn die Variable des BW auf true steht.

            H Offline
            H Offline
            Hank
            schrieb am zuletzt editiert von
            #9

            @Ocrim
            vielleicht denke ich ja grade in die völlig falsche Richtung oder habe mich schlecht ausgredrückt

            wenn ich die hue lampe manuell per wanschalter oder app an mache geht dieser Wert im iobroker ja von true auf false

            Screenshot 2020-11-05 030505.jpg

            und alles was ich wollte ist das mein bewegunsmelder blocklyscript dann nicht aktiviert wird wenn der wert der lampe auf true ist.

            AsgothianA OcrimO 2 Antworten Letzte Antwort
            0
            • H Hank

              @Ocrim
              vielleicht denke ich ja grade in die völlig falsche Richtung oder habe mich schlecht ausgredrückt

              wenn ich die hue lampe manuell per wanschalter oder app an mache geht dieser Wert im iobroker ja von true auf false

              Screenshot 2020-11-05 030505.jpg

              und alles was ich wollte ist das mein bewegunsmelder blocklyscript dann nicht aktiviert wird wenn der wert der lampe auf true ist.

              AsgothianA Offline
              AsgothianA Offline
              Asgothian
              Developer
              schrieb am zuletzt editiert von
              #10

              @Hank
              Das was @paul53 gepostet hat sollte funktionieren.

              Füge doch dem Trigger auf das Objekt Büro.on noch eine Debugausgabe hinzu, in der du den Inhalt der Bausteine "wert" und "Ursprung" ausgibst.

              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

              1 Antwort Letzte Antwort
              0
              • H Hank

                @paul53
                hey,
                nein leider nicht wenn ich über die hue app am handy das licht einstelle wird es leider immer noch durch den bewegungsmelder wieder überschrieben.

                "Lediglich Zeile 13 ist überflüssig"

                ja da hatte ich nur grade etwas noch ausprobiert und hatte vergessen es vorher wieder zu löschen.
                Screenshot 2020-11-05 002136.jpg

                ich glaube das wird mich noch eine zeit lang beschäftigen bis es funktioniert 😂

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von paul53
                #11

                @Hank
                Mir fällt gerade auf, dass das Script nicht das Licht direkt einschaltet, sondern über eine Szene. Dann bringt die Prüfung auf "Ursprung != system.adapter.javascript.0" nichts, weil sie immer erfüllt ist.

                EDIT: Versuche es mal so:

                Blockly_temp.JPG

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                H 1 Antwort Letzte Antwort
                0
                • H Hank

                  @Ocrim
                  vielleicht denke ich ja grade in die völlig falsche Richtung oder habe mich schlecht ausgredrückt

                  wenn ich die hue lampe manuell per wanschalter oder app an mache geht dieser Wert im iobroker ja von true auf false

                  Screenshot 2020-11-05 030505.jpg

                  und alles was ich wollte ist das mein bewegunsmelder blocklyscript dann nicht aktiviert wird wenn der wert der lampe auf true ist.

                  OcrimO Offline
                  OcrimO Offline
                  Ocrim
                  schrieb am zuletzt editiert von
                  #12

                  @Hank
                  Büro on wird aber auch getriggert, wenn der bw die Szene schaltet. Das letzte Programm von Paul würde ich jetzt nehmen und noch um einen Trigger mit dem Wandschalter und vllt sogar um einen Trigger vom Farbwert erweitern, der den wert bwm_ein zusätzlich auf falsch setzt. Mit letzterem sollte sich der bw deaktivieren sobald du die Farbe in der App änderst

                  1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @Hank
                    Mir fällt gerade auf, dass das Script nicht das Licht direkt einschaltet, sondern über eine Szene. Dann bringt die Prüfung auf "Ursprung != system.adapter.javascript.0" nichts, weil sie immer erfüllt ist.

                    EDIT: Versuche es mal so:

                    Blockly_temp.JPG

                    H Offline
                    H Offline
                    Hank
                    schrieb am zuletzt editiert von Hank
                    #13

                    @paul53 @Ocrim
                    hi
                    erstmal vielen Dank für die ganze Hilfe! Ohne die hätte ich ewig daran gesessen. ich habe meine blockly script von gestern soweit jetzt fertig.
                    ich habe dank des Tipps, die Scenen durch feste Licht und Farbwerte ersetzt.
                    Anscheinend funktioniert es auch erstmal alles wie gewünscht. 🙂

                    Hier erstmal die fertige lösung

                    Screenshot 2020-11-05 133810.jpg

                    der neue Vorschlag von paul53 sieht gut aus.
                    nur leider habe ich da aktuell noch das Problem, das die Lichter nicht wieder hell werden wenn nach sich nach einer zeit wieder bewegt.

                    Und danke Ocrim das werde ich probieren!

                    Gruß Basti

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • H Hank

                      @paul53 @Ocrim
                      hi
                      erstmal vielen Dank für die ganze Hilfe! Ohne die hätte ich ewig daran gesessen. ich habe meine blockly script von gestern soweit jetzt fertig.
                      ich habe dank des Tipps, die Scenen durch feste Licht und Farbwerte ersetzt.
                      Anscheinend funktioniert es auch erstmal alles wie gewünscht. 🙂

                      Hier erstmal die fertige lösung

                      Screenshot 2020-11-05 133810.jpg

                      der neue Vorschlag von paul53 sieht gut aus.
                      nur leider habe ich da aktuell noch das Problem, das die Lichter nicht wieder hell werden wenn nach sich nach einer zeit wieder bewegt.

                      Und danke Ocrim das werde ich probieren!

                      Gruß Basti

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von paul53
                      #14

                      @Hank sagte:

                      das die Lichter nicht wieder hell werden wenn nach sich nach einer zeit wieder bewegt.

                      Ja, das stimmt.

                      Wozu sollen die zusätzlichen Verzögerungen von 5 s dienen ? Sie verbrauchen nur unnötig Ressourcen.
                      Macht es Sinn, sowohl level als auch bri zu steuern ?

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      H 1 Antwort Letzte Antwort
                      0
                      • paul53P paul53

                        @Hank sagte:

                        das die Lichter nicht wieder hell werden wenn nach sich nach einer zeit wieder bewegt.

                        Ja, das stimmt.

                        Wozu sollen die zusätzlichen Verzögerungen von 5 s dienen ? Sie verbrauchen nur unnötig Ressourcen.
                        Macht es Sinn, sowohl level als auch bri zu steuern ?

                        H Offline
                        H Offline
                        Hank
                        schrieb am zuletzt editiert von Hank
                        #15

                        @paul53

                        das wusste ich nicht das es zusätzliche Ressourcen benötigt. Hab ich wieder raus genommen!

                        Macht es Sinn, sowohl level als auch bri zu steuern ?

                        nach überprüfung, habe ich festgestellt das es wohl keinen macht 😂 Hab level auch entfernt!

                        war zwar eine schwere Geburt, aber nun bin ich wenigsten ein bisschen schlauer. 😁

                        Hier noch der Javascript-Code falls jemand mal das selbe Problem hat

                        var manuell, timeout, timeout2;
                        
                        
                        on({id: 'hue.0.Büro.on', change: "ne"}, async function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          manuell = (obj.state ? obj.state.val : "") && (obj.state ? obj.state.from : "") != 'system.adapter.javascript.0';
                        });
                        on({id: "0_userdata.0.büropresence"/*büropresence*/, change: "ne"}, async function (obj) {
                          var value = obj.state.val;
                          var oldValue = obj.oldState.val;
                          if (!manuell) {
                            if (true == getState("0_userdata.0.büropresence").val) {
                              (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                              (function () {if (timeout2) {clearTimeout(timeout2); timeout2 = null;}})();
                              if (compareTime('07:00', '20:00', "between", null)) {
                                setState("hue.0.Büro.on"/*Büro.on*/, true);
                                setState("hue.0.Büro.bri"/*Büro.bri*/, 254);
                                setState("hue.0.Büro.ct"/*Büro.ct*/, 2732);
                              }
                            } else if (false == getState("0_userdata.0.büropresence").val) {
                              timeout = setTimeout(async function () {
                                setState("hue.0.Büro.bri"/*Büro.bri*/, 77);
                                setState("hue.0.Büro.ct"/*Büro.ct*/, 2732);
                                timeout2 = setTimeout(async function () {
                                  setState("hue.0.Büro.on"/*Büro.on*/, false);
                                }, 80000);
                              }, 50000);
                            }
                          }
                        });
                        
                        

                        Gruß Basti

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          sit-in
                          schrieb am zuletzt editiert von
                          #16

                          @hank said in Bewegungsmelder nur aktivieren wenn das Licht aus ist:

                          Hier erstmal die fertige lösung

                          Screenshot 2020-11-05 133810.jpg

                          @paul53 @Hank @Ocrim

                          Hallo Zusammen,
                          Der Post ist schon ein wenig älter, aber ich stehe aktuell vor genau dem selben Problem.
                          Das Blockly Script mit der manuellen Abfrage habe ich soweit verstanden.
                          Aber ganz oben den ersten Bereich nicht.

                          Wenn "Lampe Büro on" geändert wurde, dann setze manuell auf... Und hier verstehe ich es nicht...
                          was ist "Wert" und "Ursprung" und mit was (system.adapter.javascript()?) wird dort verglichen (ungleich)?

                          a7f24a92-1e96-41d0-a90c-e3cb6881172a-grafik.png

                          1 Antwort Letzte Antwort
                          0

                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                          Registrieren Anmelden
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          345

                          Online

                          32.8k

                          Benutzer

                          82.7k

                          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