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. ioBroker Allgemein
  4. gelöst: Zigbee brightness_move stoppen / abbrechen

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    10
    1
    231

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.8k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    769

gelöst: Zigbee brightness_move stoppen / abbrechen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
19 Beiträge 4 Kommentatoren 1.6k 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.
  • R rotamint

    Bin immernoch offen für Lösungsansätze ;-)

    Great SUNG Offline
    Great SUNG Offline
    Great SUN
    schrieb am zuletzt editiert von
    #5

    @rotamint Ich gehe davon aus, dass das ein BlockLy ist, richtig? Wenn ja, könntest Du da mal einen Screenshot vom UI machen?
    Ich nutze aus Prinzip kein Blockly, aber vielleicht sehe ich ja dann etwas 🐶

    Danke ;-)

    R 1 Antwort Letzte Antwort
    0
    • R rotamint

      Hallo zusammen,

      nachdem ich alleine nicht weiter komme, hoffe ich auf das geballte Know-How der Community.

      Ich möchte die Helligkeit meiner Zigbee-Lampe(n) über den Datenpunkt "brightness_move" steuern. Der Hintergrund ist sowohl das stufenlose Dimmen, als auch die Entlastung des Zigbee Netzwerkes.

      Es geht um diese beiden Lampen, wobei das Verhalten bei beiden identisch ist:

      Philips 8718696449691 und IKEA LED1903C5/LED1835C6

      Problem: Sobald der "brightness_move" aktiviert wurde, läuft er durch bis zum Ende. Er lässt er sich mit brightness_move=0 bzw. "stop" zwar auflösen, die Lampe nimmt aber sofort die ursprüngliche Leuchtkraft an. Sprich - wird von "unten nach oben gedimmt" - stop - sofort wieder schummrig. Beim dimmen von "oben nach unten" wird abgesenkt - stop - sofort ursprüngliche volle Leuchtkraft.

      Wie ich es verstanden habe, sollte sich der "brightness_move" jedoch mit "0" oder "stop" abbrechen / anhalten lassen.
      Es gelingt mir jedoch nicht, dass die Lampe dann auch mit dem aktuellen Leuchtwert "verharrt".

      Ich habe mir hierzu ein ganz einfaches Blockly gebaut, um alleinig den "brightness_move" zu testen.

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="on_ext" id="9@T.YF6?4Q;=ZCn`B=~]" x="238" y="38">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
          <field name="CONDITION">gt</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="da|b,*QKwE3R3(Tu[s%a">
              <field name="oid">zigbee.0.04cf8cdf3c7d4b90.button_1_click</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id="O#C#a,-Ba@t?x{{c)IC#">
              <field name="oid">zigbee.0.04cf8cdf3c7d4b90.button_1_hold</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id=")=)UByF,wIM=KNakPjji">
              <mutation elseif="1"></mutation>
              <value name="IF0">
                <block type="get_value" id="VxYYp!i|Obd/iQ~p!Yy#">
                  <field name="ATTR">val</field>
                  <field name="OID">zigbee.0.04cf8cdf3c7d4b90.button_1_click</field>
                </block>
              </value>
              <statement name="DO0">
                <block type="debug" id="s:?cw{7}_7qn^vC?5RFC">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="t~x8Wv:+NT.GgqdjqDY~">
                      <field name="TEXT">Schaltet ein</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="control" id="OM,:h]=_`q.XIkh[@_e*">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">zigbee.0.588e81fffe655d96.state</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="^;[gj+@]6)FFjVWhF|4r">
                          <field name="BOOL">TRUE</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
              <value name="IF1">
                <block type="get_value" id="DkUl%^#e}CDq7.e7Z]Tv">
                  <field name="ATTR">val</field>
                  <field name="OID">zigbee.0.04cf8cdf3c7d4b90.button_1_hold</field>
                </block>
              </value>
              <statement name="DO1">
                <block type="debug" id="`26Fp7RHj=TRjXaiP_lY">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="S_5J=)@J.t}+b{*8fj3_">
                      <field name="TEXT">Dimmer rauf</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="control" id="sP)bcy2Ad9`Ck=#ynEFp">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">zigbee.0.588e81fffe655d96.brightness_move</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="math_number" id="(lnfFFm,$!}GHfc$`9m?">
                          <field name="NUM">20</field>
                        </block>
                      </value>
                      <next>
                        <block type="timeouts_wait" id="%Q5Jl:?Ct-@;b%E*DHH~">
                          <field name="DELAY">2000</field>
                          <field name="UNIT">ms</field>
                          <next>
                            <block type="debug" id="bDajT-UZbfuZd^T/QBgB">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="Wb{V`je)!2g2hdIb0m`k">
                                  <field name="TEXT">Dimmen ende</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="control" id="=I^eV7$40sY`:BM7c``_" disabled="true">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">zigbee.0.588e81fffe655d96.brightness_move</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="cG}HifXDqzJ~EVf6qYg5">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="sendto_custom" id="HrU3P[~,KD)%41NQ(MX2">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="device,payload" with_statement="false"></mutation>
                                      <field name="INSTANCE">zigbee.0</field>
                                      <field name="COMMAND">SendToDevice</field>
                                      <field name="LOG"></field>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <value name="ARG0">
                                        <shadow type="text" id="UGj3|:J)-]Blsbz)9ik*">
                                          <field name="TEXT">588e81fffe655d96</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG1">
                                        <shadow type="text" id="P8!j=]mL[2Q|EZ]__YRy">
                                          <field name="TEXT">"brightness_move: stop"</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
        <block type="on_ext" id="3tTFEnR*cMc*S_0%7g1^" x="788" y="38">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
          <field name="CONDITION">gt</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="1kGJQO|Gq9+mt9h75Bzw">
              <field name="oid">zigbee.0.04cf8cdf3c7d4b90.button_2_click</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id="s9V58X]zfw.C-ZAeYjSm">
              <field name="oid">zigbee.0.04cf8cdf3c7d4b90.button_2_hold</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="|3W5L)$sfzJ*-)pkQqiN">
              <mutation elseif="1"></mutation>
              <value name="IF0">
                <block type="get_value" id="T_bt9x;~08tS;qay@D@@">
                  <field name="ATTR">val</field>
                  <field name="OID">zigbee.0.04cf8cdf3c7d4b90.button_2_click</field>
                </block>
              </value>
              <statement name="DO0">
                <block type="debug" id="|Y:Jy+5EN{SB#2n%oVqU">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="dt#F|#f)g%^K*7NGZU+n">
                      <field name="TEXT">Schaltet aus</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="control" id="V63(.qT#yNJySQn0_]#`">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">zigbee.0.588e81fffe655d96.state</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="1{.ISgRStoHM:VM8YJvh">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
              <value name="IF1">
                <block type="get_value" id="D`!r]/H@^ue#g(TgsFe-">
                  <field name="ATTR">val</field>
                  <field name="OID">zigbee.0.04cf8cdf3c7d4b90.button_2_hold</field>
                </block>
              </value>
              <statement name="DO1">
                <block type="debug" id="jOiskauqG:9Io#_A=tx`">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="gsO28B4ICn0N+s%I!(.%">
                      <field name="TEXT">Dimmer runter</field>
                    </shadow>
                  </value>
                  <next>
                    <block type="control" id="1qvZeuUwPP0Aj+x@mD)R">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">zigbee.0.588e81fffe655d96.brightness_move</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="math_number" id="z}~sn$[#aW6j9.i2wv-+">
                          <field name="NUM">-20</field>
                        </block>
                      </value>
                      <next>
                        <block type="timeouts_wait" id="V:)X~_[39SX)ZP-]Cl?6">
                          <field name="DELAY">2000</field>
                          <field name="UNIT">ms</field>
                          <next>
                            <block type="debug" id="zF{]mv7PUd.jX0@/(-__">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="8nnEMEOJhFRwXL}IUKJK">
                                  <field name="TEXT">Dimmen ende</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="control" id=":~RyD5lRcu/S76c+UC5L">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">zigbee.0.588e81fffe655d96.brightness_move</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="math_number" id="AIBHmVz5IXHbFoAsq0OM">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="sendto_custom" id="}c(26hKOmLM#L*0{%Mr5">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="device,payload" with_statement="false"></mutation>
                                      <field name="INSTANCE">zigbee.0</field>
                                      <field name="COMMAND">SendToDevice</field>
                                      <field name="LOG"></field>
                                      <field name="WITH_STATEMENT">FALSE</field>
                                      <value name="ARG0">
                                        <shadow type="text" id="zTIRilVhBr3.(suLn[~:">
                                          <field name="TEXT">588e81fffe655d96</field>
                                        </shadow>
                                      </value>
                                      <value name="ARG1">
                                        <shadow type="text" id="vH]#8sO1]7%jb^!SoUrj">
                                          <field name="TEXT">"brightness_move: stop"</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
        </block>
      </xml>
      

      ConbeeII habe ich heute aktualisiert:

      coordinator.jpg

      Wer hat eine Idee? Danke für Eure Unterstütung!

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

      @rotamint Stell bitte sicher das du nicht noch irgendwo einen trigger auf deinen Auslöser hast der auf Basis der im ioBroker angezeigten Helligkeitswerte etwas ansteuert.

      Bei der Verwendung von brightness_move kann es bis zu 5 Sekunden dauern bis der Wert im iobroker der Helligkeit der Lampe entspricht.

      A.

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

      R 1 Antwort Letzte Antwort
      0
      • Great SUNG Great SUN

        @rotamint Ich gehe davon aus, dass das ein BlockLy ist, richtig? Wenn ja, könntest Du da mal einen Screenshot vom UI machen?
        Ich nutze aus Prinzip kein Blockly, aber vielleicht sehe ich ja dann etwas 🐶

        Danke ;-)

        R Offline
        R Offline
        rotamint
        schrieb am zuletzt editiert von
        #7

        @great-sun Brightness_move_blockly.jpg

        1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

          @rotamint Stell bitte sicher das du nicht noch irgendwo einen trigger auf deinen Auslöser hast der auf Basis der im ioBroker angezeigten Helligkeitswerte etwas ansteuert.

          Bei der Verwendung von brightness_move kann es bis zu 5 Sekunden dauern bis der Wert im iobroker der Helligkeit der Lampe entspricht.

          A.

          R Offline
          R Offline
          rotamint
          schrieb am zuletzt editiert von rotamint
          #8

          Besten Dank Euch Beiden für die Hinweise. Anbei habe ich das Blockly als Screenshot gepostet, ich habe mir ein ganz einfaches Testblockly aufgebaut, einzig um den brightness_move zu verstehen.

          Der lange Tastendruck soll "runter" dimmen, nach 4,5 Sekunden soll das Dimmen abgebrochen werden. Das Dimmen wird zwar auch beendet, jedoch springt danach die Lampe wieder auf die ursprüngliche Helligkeit.

          Screenshot 2022-04-21 211827.jpg
          (und nach dem "brightness_move 0 gesendet ==> wieder volle Leuchtkraft)

          Bin gespannt! Danke nochmals Euch beiden!

          Great SUNG 1 Antwort Letzte Antwort
          0
          • R rotamint

            Besten Dank Euch Beiden für die Hinweise. Anbei habe ich das Blockly als Screenshot gepostet, ich habe mir ein ganz einfaches Testblockly aufgebaut, einzig um den brightness_move zu verstehen.

            Der lange Tastendruck soll "runter" dimmen, nach 4,5 Sekunden soll das Dimmen abgebrochen werden. Das Dimmen wird zwar auch beendet, jedoch springt danach die Lampe wieder auf die ursprüngliche Helligkeit.

            Screenshot 2022-04-21 211827.jpg
            (und nach dem "brightness_move 0 gesendet ==> wieder volle Leuchtkraft)

            Bin gespannt! Danke nochmals Euch beiden!

            Great SUNG Offline
            Great SUNG Offline
            Great SUN
            schrieb am zuletzt editiert von
            #9

            @rotamint @Asgothian @arteck :

            So, wie ich das sehe, werden aus irgendeinem Grund alle Werte des Objektes an die Lampe übertragen. Da der Brightness aber noch auf 100 steht, schaltet die Lampe wieder auf 100%.
            Seht Ihr eine Möglichkeit, dass nur der geänderte Wert übertragen wird, oder dass man den aktuellen Brightness-Wert bei dem/über den ConbeeII (USB Zigbee Dongle) direkt auslesen (lassen) kann? Dann könnte man den auslesen und "gleichzeitig" mit dem "Dimming" setzen...

            Ich müsste mich jetzt das erste Mal in den Adapter einlesen, ich glaube, Da seid Ihr schneller ;-)

            Bei mir läuft halt alles über Sonoff Zigbee Bridge mit Tasmota...

            AsgothianA 1 Antwort Letzte Antwort
            0
            • Great SUNG Great SUN

              @rotamint @Asgothian @arteck :

              So, wie ich das sehe, werden aus irgendeinem Grund alle Werte des Objektes an die Lampe übertragen. Da der Brightness aber noch auf 100 steht, schaltet die Lampe wieder auf 100%.
              Seht Ihr eine Möglichkeit, dass nur der geänderte Wert übertragen wird, oder dass man den aktuellen Brightness-Wert bei dem/über den ConbeeII (USB Zigbee Dongle) direkt auslesen (lassen) kann? Dann könnte man den auslesen und "gleichzeitig" mit dem "Dimming" setzen...

              Ich müsste mich jetzt das erste Mal in den Adapter einlesen, ich glaube, Da seid Ihr schneller ;-)

              Bei mir läuft halt alles über Sonoff Zigbee Bridge mit Tasmota...

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

              @great-sun sagte in Zigbee: Brightness_move stoppen / abbrechen:

              @rotamint @Asgothian @arteck :

              So, wie ich das sehe, werden aus irgendeinem Grund alle Werte des Objektes an die Lampe übertragen. Da der Brightness aber noch auf 100 steht, schaltet die Lampe wieder auf 100%.
              Seht Ihr eine Möglichkeit, dass nur der geänderte Wert übertragen wird, oder dass man den aktuellen Brightness-Wert bei dem/über den ConbeeII (USB Zigbee Dongle) direkt auslesen (lassen) kann? Dann könnte man den auslesen und "gleichzeitig" mit dem "Dimming" setzen...

              Ich müsste mich jetzt das erste Mal in den Adapter einlesen, ich glaube, Da seid Ihr schneller ;-)

              Bei mir läuft halt alles über Sonoff Zigbee Bridge mit Tasmota...

              Der Adapter tut das auf jeden Fall nicht.
              Wobei: das dimmen geht nur während die Lampe an ist.

              @rotamint: Trag mal bitte die ieee der betroffenen Lampe in den State "zigbee.0.info.debugmessages" ein - dann siehst im Log als "elevated" Warnmeldungen du was der Adapter an die Lampe sendet.

              A.

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

              R 1 Antwort Letzte Antwort
              0
              • AsgothianA Asgothian

                @great-sun sagte in Zigbee: Brightness_move stoppen / abbrechen:

                @rotamint @Asgothian @arteck :

                So, wie ich das sehe, werden aus irgendeinem Grund alle Werte des Objektes an die Lampe übertragen. Da der Brightness aber noch auf 100 steht, schaltet die Lampe wieder auf 100%.
                Seht Ihr eine Möglichkeit, dass nur der geänderte Wert übertragen wird, oder dass man den aktuellen Brightness-Wert bei dem/über den ConbeeII (USB Zigbee Dongle) direkt auslesen (lassen) kann? Dann könnte man den auslesen und "gleichzeitig" mit dem "Dimming" setzen...

                Ich müsste mich jetzt das erste Mal in den Adapter einlesen, ich glaube, Da seid Ihr schneller ;-)

                Bei mir läuft halt alles über Sonoff Zigbee Bridge mit Tasmota...

                Der Adapter tut das auf jeden Fall nicht.
                Wobei: das dimmen geht nur während die Lampe an ist.

                @rotamint: Trag mal bitte die ieee der betroffenen Lampe in den State "zigbee.0.info.debugmessages" ein - dann siehst im Log als "elevated" Warnmeldungen du was der Adapter an die Lampe sendet.

                A.

                R Offline
                R Offline
                rotamint
                schrieb am zuletzt editiert von
                #11

                @asgothian Danke für Deine Unterstützung!
                Anbei:

                Screenshot 2022-04-21 211827.jpg

                Great SUNG AsgothianA 2 Antworten Letzte Antwort
                0
                • R rotamint

                  @asgothian Danke für Deine Unterstützung!
                  Anbei:

                  Screenshot 2022-04-21 211827.jpg

                  Great SUNG Offline
                  Great SUNG Offline
                  Great SUN
                  schrieb am zuletzt editiert von
                  #12

                  @rotamint @Asgothian : Das komische ist, dass brightness 143 zurück kommt, während der maximal eintragbare Wert 100 ist.
                  Irgend eine Idee, warum das so ist?

                  1 Antwort Letzte Antwort
                  0
                  • R rotamint

                    @asgothian Danke für Deine Unterstützung!
                    Anbei:

                    Screenshot 2022-04-21 211827.jpg

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

                    @rotamint sagte in Zigbee: Brightness_move stoppen / abbrechen:

                    @asgothian Danke für Deine Unterstützung!
                    Anbei:

                    Screenshot 2022-04-21 211827.jpg

                    Logs bitte immer als Text posten. Jetzt musst du den Fehler im Log selber suchen:

                    Offensichtlich gibt es ein Skript welches die Helligkeit auf 100 setzt. Eine entsprechende Meldung mit dem "user state change" auf 100 Helligkeit (gesendet ohne ACK, damit als Steuerbefehl vom Adapter javascript.0)

                    A.

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

                    Great SUNG 1 Antwort Letzte Antwort
                    0
                    • AsgothianA Asgothian

                      @rotamint sagte in Zigbee: Brightness_move stoppen / abbrechen:

                      @asgothian Danke für Deine Unterstützung!
                      Anbei:

                      Screenshot 2022-04-21 211827.jpg

                      Logs bitte immer als Text posten. Jetzt musst du den Fehler im Log selber suchen:

                      Offensichtlich gibt es ein Skript welches die Helligkeit auf 100 setzt. Eine entsprechende Meldung mit dem "user state change" auf 100 Helligkeit (gesendet ohne ACK, damit als Steuerbefehl vom Adapter javascript.0)

                      A.

                      Great SUNG Offline
                      Great SUNG Offline
                      Great SUN
                      schrieb am zuletzt editiert von
                      #14

                      @asgothian Man... wie doof... Das hab ich gestern total übersehen!
                      Das mit dem Log als Text siehst Du, wie ich, aber offensichtlich gibt es andere (nicht rotamint), die es anders wollen...
                      Egal. Ich schau später mal, ob ich ihn noch irgendwie unterstützen kann dabei das in den Griff zu bekommen :-)

                      DANKE!!! Und sorry, dass ich das nicht gestern schon gesehen hab...

                      R 1 Antwort Letzte Antwort
                      0
                      • Great SUNG Great SUN

                        @asgothian Man... wie doof... Das hab ich gestern total übersehen!
                        Das mit dem Log als Text siehst Du, wie ich, aber offensichtlich gibt es andere (nicht rotamint), die es anders wollen...
                        Egal. Ich schau später mal, ob ich ihn noch irgendwie unterstützen kann dabei das in den Griff zu bekommen :-)

                        DANKE!!! Und sorry, dass ich das nicht gestern schon gesehen hab...

                        R Offline
                        R Offline
                        rotamint
                        schrieb am zuletzt editiert von rotamint
                        #15

                        @great-sun @Asgothian

                        Ihr BEIDEN (!) seid meine "Helden der Nacht" ;-) Da wäre ich niemals drauf gekommen, aber erneut ein super Anlass um wieder was dazu zu lernen.

                        1. "ohne ack" = vom Javascript-Adapter gesendet
                        2. Logs immer in Textform. Hatte da noch kurz mit GreatSUN drüber diskutiert, war aber der Meinung mir für die "Textform" schon mal irgendwo "einen eingefangen" zu haben. Folglich wars aber umgekehrt ;-)

                        Ich habe das eigentliche "Dimmerscript" der Lampe deaktiviert - und - der "brightness_move" funktioniert tadellos, so wie es soll! :)

                        Das ist das "ursprüngliche" Script:

                        
                        
                        const idLevel = 'zigbee.0.001788010410074e.brightness'/*Brightness*/; 
                        
                        const idState = 'zigbee.0.001788010410074e.state'/*Switch state*/;
                        
                        const idLong  = 'hm-rpc.0.PEQ1590616.3.PRESS_CONT';
                        
                        const idShort = 'hm-rpc.0.PEQ1590616.3.PRESS_SHORT'; 
                        
                         
                        
                        var level = getState(idLevel).val;
                        
                        var state = getState(idState).val;
                        
                        var down = false;
                        
                        if(level > 95) down = true;
                        
                        var timerpause = null;
                        
                         
                        
                        function rampe() {
                        
                           if(down) {
                        
                              level = level - 5;
                        
                              if(level < 5) down = false;
                        
                              else setState(idLevel, level);
                        
                           } else {
                        
                              level = level + 5;
                        
                              if(level > 99) down = true;
                        
                              else setState(idLevel, level);
                        
                           }
                        
                        }
                        
                         
                        
                        on({id: idState, ack: true}, function(dp) {
                        
                           state = dp.state.val;
                        
                           if(state) setState(idLevel, level); // letzter Dimmwert
                        
                        });
                        
                         
                        
                        on({id: idShort}, function() {
                        
                           setState(idState, !state); // Toggle
                        
                        });
                        
                         
                        
                        on({id: idLong}, function() {
                        
                           if(state) { 
                        
                              rampe();
                        
                              if(timerpause) clearTimeout(timerpause);
                        
                              timerpause = setTimeout(function() {
                        
                                 down = !down;
                        
                                 timerpause = null;
                        
                              }, 600);
                        
                           }   
                        
                        });
                        

                        Mal schauen was ich daraus bastle, ich baue seit Jahren nur mit Blockly.
                        Habe es bis heute nicht geschafft, den "sauberen" und "jetzt habe ich es verstanden"-Einstieg in Javascript zu schaffen.

                        Jedenfalls danke EUCH BEIDEN (!) nochmals ganz herzlich für Eure Unterstützung bei der Fehlerfindung!

                        LG Stefan.

                        AsgothianA 1 Antwort Letzte Antwort
                        0
                        • R rotamint

                          @great-sun @Asgothian

                          Ihr BEIDEN (!) seid meine "Helden der Nacht" ;-) Da wäre ich niemals drauf gekommen, aber erneut ein super Anlass um wieder was dazu zu lernen.

                          1. "ohne ack" = vom Javascript-Adapter gesendet
                          2. Logs immer in Textform. Hatte da noch kurz mit GreatSUN drüber diskutiert, war aber der Meinung mir für die "Textform" schon mal irgendwo "einen eingefangen" zu haben. Folglich wars aber umgekehrt ;-)

                          Ich habe das eigentliche "Dimmerscript" der Lampe deaktiviert - und - der "brightness_move" funktioniert tadellos, so wie es soll! :)

                          Das ist das "ursprüngliche" Script:

                          
                          
                          const idLevel = 'zigbee.0.001788010410074e.brightness'/*Brightness*/; 
                          
                          const idState = 'zigbee.0.001788010410074e.state'/*Switch state*/;
                          
                          const idLong  = 'hm-rpc.0.PEQ1590616.3.PRESS_CONT';
                          
                          const idShort = 'hm-rpc.0.PEQ1590616.3.PRESS_SHORT'; 
                          
                           
                          
                          var level = getState(idLevel).val;
                          
                          var state = getState(idState).val;
                          
                          var down = false;
                          
                          if(level > 95) down = true;
                          
                          var timerpause = null;
                          
                           
                          
                          function rampe() {
                          
                             if(down) {
                          
                                level = level - 5;
                          
                                if(level < 5) down = false;
                          
                                else setState(idLevel, level);
                          
                             } else {
                          
                                level = level + 5;
                          
                                if(level > 99) down = true;
                          
                                else setState(idLevel, level);
                          
                             }
                          
                          }
                          
                           
                          
                          on({id: idState, ack: true}, function(dp) {
                          
                             state = dp.state.val;
                          
                             if(state) setState(idLevel, level); // letzter Dimmwert
                          
                          });
                          
                           
                          
                          on({id: idShort}, function() {
                          
                             setState(idState, !state); // Toggle
                          
                          });
                          
                           
                          
                          on({id: idLong}, function() {
                          
                             if(state) { 
                          
                                rampe();
                          
                                if(timerpause) clearTimeout(timerpause);
                          
                                timerpause = setTimeout(function() {
                          
                                   down = !down;
                          
                                   timerpause = null;
                          
                                }, 600);
                          
                             }   
                          
                          });
                          

                          Mal schauen was ich daraus bastle, ich baue seit Jahren nur mit Blockly.
                          Habe es bis heute nicht geschafft, den "sauberen" und "jetzt habe ich es verstanden"-Einstieg in Javascript zu schaffen.

                          Jedenfalls danke EUCH BEIDEN (!) nochmals ganz herzlich für Eure Unterstützung bei der Fehlerfindung!

                          LG Stefan.

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

                          @rotamint sagte in Zigbee: Brightness_move stoppen / abbrechen:

                          "ohne ack" = vom Javascript-Adapter gesendet

                          Das ist leider falsch.

                          Im Log steht:
                          brightness{"val":100, "ack":"false", "ts":1659575589149, "q":0, "c":"script.js.common.Wohnzimmer.Stehlampe_Dimmer", "from":"system.adapter.javascript.0", ...

                          Da kannst du sehen:

                          • wer den state gesetzt hat ("from")
                          • wann das passiert ist ("ts")
                          • auf welchen Wert er gesetzt wurde ("val")
                          • ob er als Steuerbefehl ("ack":"false") oder Wertupdate ("ack":"true") gesetzt wurde.

                          In deinem Beispiel steht da sogar noch der Skriptname drin. Einfacher gehts nicht.

                          A.

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

                          R 1 Antwort Letzte Antwort
                          0
                          • AsgothianA Asgothian

                            @rotamint sagte in Zigbee: Brightness_move stoppen / abbrechen:

                            "ohne ack" = vom Javascript-Adapter gesendet

                            Das ist leider falsch.

                            Im Log steht:
                            brightness{"val":100, "ack":"false", "ts":1659575589149, "q":0, "c":"script.js.common.Wohnzimmer.Stehlampe_Dimmer", "from":"system.adapter.javascript.0", ...

                            Da kannst du sehen:

                            • wer den state gesetzt hat ("from")
                            • wann das passiert ist ("ts")
                            • auf welchen Wert er gesetzt wurde ("val")
                            • ob er als Steuerbefehl ("ack":"false") oder Wertupdate ("ack":"true") gesetzt wurde.

                            In deinem Beispiel steht da sogar noch der Skriptname drin. Einfacher gehts nicht.

                            A.

                            R Offline
                            R Offline
                            rotamint
                            schrieb am zuletzt editiert von
                            #17

                            @asgothian 👍 Verstanden! Lernen kann soviel Spaß machen und Freude schenken! Danke.

                            Great SUNG 1 Antwort Letzte Antwort
                            0
                            • R rotamint

                              @asgothian 👍 Verstanden! Lernen kann soviel Spaß machen und Freude schenken! Danke.

                              Great SUNG Offline
                              Great SUNG Offline
                              Great SUN
                              schrieb am zuletzt editiert von
                              #18

                              @rotamint evtl. (nur ein spontaner guess) reicht es bei dem script das zu tun:

                              Tausche

                              on({id: idState, ack: true}, function(dp) {
                              

                              gegen

                              on({id: idState, change: 'ne', val: true}, function(dp) {
                              

                              Bin mir zwar nicht sicher, ob man val und change kombinieren kann, aber wenn, dann wäre es das, sonst müsstest Du nur noch ein

                              if(dp.state.val !== true) { return; } 
                              

                              drunter setzen und ack:true -> change: 'ne'

                              AsgothianA 1 Antwort Letzte Antwort
                              0
                              • Great SUNG Great SUN

                                @rotamint evtl. (nur ein spontaner guess) reicht es bei dem script das zu tun:

                                Tausche

                                on({id: idState, ack: true}, function(dp) {
                                

                                gegen

                                on({id: idState, change: 'ne', val: true}, function(dp) {
                                

                                Bin mir zwar nicht sicher, ob man val und change kombinieren kann, aber wenn, dann wäre es das, sonst müsstest Du nur noch ein

                                if(dp.state.val !== true) { return; } 
                                

                                drunter setzen und ack:true -> change: 'ne'

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

                                @great-sun sagte in gelöst: Zigbee brightness_move stoppen / abbrechen:

                                gegen
                                on({id: idState, change: 'ne', val: true}, function(dp) {

                                Bin mir zwar nicht sicher, ob man val und change kombinieren kann, aber wenn, dann wäre es das, sonst müsstest Du nur noch ein
                                if(dp.state.val !== true) { return; }

                                drunter setzen und ack:true -> change: 'ne'

                                Das was du erreichen willst ist

                                on({id: idState, change: 'gt'}, function(dp) {
                                

                                Fun fact: In JS gilt: true > false

                                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

                                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
                                FAQ Cloud / IOT
                                HowTo: Node.js-Update
                                HowTo: Backup/Restore
                                Downloads
                                BLOG

                                358

                                Online

                                32.9k

                                Benutzer

                                83.0k

                                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