Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Hilfe bei Tradfri On/Off-Schalter zum Dimmen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Hilfe bei Tradfri On/Off-Schalter zum Dimmen

    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      Jan1 @lullaby last edited by

      @lullaby
      Kannst einzeln tasten oder einfach aufm Button drauf bleiben. Wenn Du feinere Stufen haben möchtest, einfach anpassen.
      Die einzigen Schmerzen die ich im Moment habe, sind Magenschmerzen beim Gedanke daran, wenn die Schulterklopferei nach dem ganzen Käse los geht, wie toll man doch reagiert hat und was hätte nicht alles passieren können😬
      Nix schlimmeres wie jedes Jahr bei ner normalen Grippewelle auch.

      1 Reply Last reply Reply Quote 0
      • M
        MBM1982 last edited by

        Hi, ich möchte der Post nochmal zum Leben erwecken. So lange ist er ja auch noch nicht tot 😉
        Ich habe das Script von Jan1 einmal zum Laufen gebracht, denke ich. Nach einem Neustart des RasPi war jedoch die Lampe nicht mehr gebunden. Also neu Gebunden und Objekt-IDs angepasst. Aber es geht nicht. Ich habe dann einfach den Intervall-Baustein herausgenommen. Wenn ich jetzt die Taste gedrückt halte, passt sich der Wert der Helligkeit einmalig an. So sollte es ja auch sein. Aber sobald ich das Intervall erneut einbaue passiert wieder nix. Entferne ich allerdings die Stopp-Codes, dann läuft das Intervall, eben unendlich. Irgendwo muss da ein Fehler sein, entweder in meinem Script, oder eventuell woanders?!?

        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable type="interval" id="Intervall_dimmerup">Intervall_dimmerup</variable>
            <variable type="interval" id="Intervall_dimmerdown">Intervall_dimmerdown</variable>
            <variable id="8+fBd^W]8,bL81/xub|#">dimmerup</variable>
            <variable id="$B-B*`[N1Km.yo5B8JfA">dimmerdown</variable>
          </variables>
          <block type="on_ext" id="1c|t6w#2H?{9rM/%ikY!" x="-98" y="-276">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="/O`.n-UBq@?9%.([v*2z">
                <field name="oid">deconz.0.Sensors.7.buttonevent.1.hold</field>
              </shadow>
            </value>
            <value name="OID1">
              <shadow type="field_oid" id="R{RKT*]qvkAPch|M:x@a">
                <field name="oid">deconz.0.Sensors.7.buttonevent.2.hold</field>
              </shadow>
            </value>
            <statement name="STATEMENT">
              <block type="controls_if" id="T%|+4gZK@(_?gcxYK4Os">
                <mutation elseif="1" else="1"></mutation>
                <value name="IF0">
                  <block type="get_value" id="+1)UQHu]R#/PeSg.]a8o">
                    <field name="ATTR">val</field>
                    <field name="OID">deconz.0.Sensors.7.buttonevent.1.hold</field>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="timeouts_setinterval" id=".|=9LLKN{9zP]Y@ryG6X">
                    <field name="NAME">Intervall_dimmerup</field>
                    <field name="INTERVAL">300</field>
                    <field name="UNIT">ms</field>
                    <statement name="STATEMENT">
                      <block type="variables_set" id="LUvj0QzWC5/iDjhXDD6T">
                        <field name="VAR" id="8+fBd^W]8,bL81/xub|#">dimmerup</field>
                        <value name="VALUE">
                          <block type="get_value" id="qC9XH8p;6fkOXPj@p)we">
                            <field name="ATTR">val</field>
                            <field name="OID">deconz.0.Lights.3.bri</field>
                          </block>
                        </value>
                        <next>
                          <block type="math_change" id="9)IxDmb9fa!@SwoGOi/`">
                            <field name="VAR" id="8+fBd^W]8,bL81/xub|#">dimmerup</field>
                            <value name="DELTA">
                              <shadow type="math_number" id="s1`gC0qg5[LDq`w~h?.S">
                                <field name="NUM">5</field>
                              </shadow>
                            </value>
                            <next>
                              <block type="control" id="w{BV4;PMxdjoB#89^}0I" inline="false">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">deconz.0.Lights.3.bri</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="variables_get" id="S)dNxFZ}x?:b/fjIpdFg">
                                    <field name="VAR" id="8+fBd^W]8,bL81/xub|#">dimmerup</field>
                                  </block>
                                </value>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                </statement>
                <value name="IF1">
                  <block type="get_value" id="Z4+nLIZ}]rx)rfA`B4.B">
                    <field name="ATTR">val</field>
                    <field name="OID">deconz.0.Sensors.7.buttonevent.2.hold</field>
                  </block>
                </value>
                <statement name="DO1">
                  <block type="timeouts_setinterval" id="=L*GS%l+e.[Dfq,#xW5=">
                    <field name="NAME">Intervall_dimmerdown</field>
                    <field name="INTERVAL">300</field>
                    <field name="UNIT">ms</field>
                    <statement name="STATEMENT">
                      <block type="variables_set" id="BJ|VUo*[5buzlv4XQ|^(">
                        <field name="VAR" id="$B-B*`[N1Km.yo5B8JfA">dimmerdown</field>
                        <value name="VALUE">
                          <block type="get_value" id="[W)YIf{px)_EL]r`=g(_">
                            <field name="ATTR">val</field>
                            <field name="OID">deconz.0.Lights.3.bri</field>
                          </block>
                        </value>
                        <next>
                          <block type="math_change" id="x:A`YfUA30C}[Jxfo)`p">
                            <field name="VAR" id="$B-B*`[N1Km.yo5B8JfA">dimmerdown</field>
                            <value name="DELTA">
                              <shadow type="math_number" id=".SOmX+2ZiVHeVJF^wSzx">
                                <field name="NUM">-5</field>
                              </shadow>
                            </value>
                            <next>
                              <block type="control" id="myu{eTcJzS~76dm?:UVn" inline="false">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">deconz.0.Lights.3.bri</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="variables_get" id="k9o9H*PcAG~hr[hz?FHy">
                                    <field name="VAR" id="$B-B*`[N1Km.yo5B8JfA">dimmerdown</field>
                                  </block>
                                </value>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                </statement>
                <statement name="ELSE">
                  <block type="timeouts_clearinterval" id="gXQv0]VV?-oOIneguR?N">
                    <field name="NAME">Intervall_dimmerup</field>
                    <next>
                      <block type="timeouts_clearinterval" id="0WE4G@O*S~Jq!ccv}/{k">
                        <field name="NAME">Intervall_dimmerdown</field>
                      </block>
                    </next>
                  </block>
                </statement>
              </block>
            </statement>
          </block>
        </xml>
        
        1 Reply Last reply Reply Quote 0
        • R
          rotamint last edited by rotamint

          Hallo zusammen, hallo Jan!

          Anbei mein Versuch, ich verwende einen 6fach Wandtaster (Homematic link text)

          blockly-snipping-tool.JPG

          Leider bekomme ich die IKEA Tradfri-Lampe nicht gedimmt. Daher habe ich versucht, um den Fehler einzugrenzen, Debug-Meldungen auszugeben. In der Ur-Konstellation (Falls Objekt - wurde geändert) passiert gar nichts (Kein Debug "Tastendruck erkannt". Lediglich bei "wahr" tritt eine Veränderung ein, dann allerdings, unabhängig von der Taste up/ down, wird fortlaufend debug "dim-up" ausgegeben.

          Wo liegt mein Fehler? Danke für Eure Hilfe!
          Stefan.

          Asgothian 1 Reply Last reply Reply Quote 0
          • Asgothian
            Asgothian Developer @rotamint last edited by Asgothian

            @rotamint

            Wo der Fehler genau liegt kann ich so noch nicht sagen, aber:

            • dadurch das du einen Trigger auf 2 Datenpunkte setzt bekommst du Probleme, da die Wert-Abfrage auch den Wert abfragt der sich nicht gerade geaendert hat => Aufspalten in 2 Trigger
            • Wenn das in 2 Trigger aufgespalten ist, kannst du das "wert von" in der Falls Abfrage durch den "Wert" Baustein (siehe Bild, den angemerkten Baustein wählen und auf "Wert" umstellen) ersetzen. Zusätzlich bleibt dann das sonst falls weg, und im sonst muss nur das richtige Intervall beendet werden.

            Screen Shot 2020-09-06 at 21.38.08 .png

            Ansonsten stellt sich die Frage wie sich der Datenpunkt verhält. (Ich habe kein HM). Das Blockly kann nur laufen wenn

            • Der Datenpunkt normalerweise auf "falsch" steht
            • Der Datenpunkt solange der Knopf gedrückt ist auf "wahr" steht und stehen bleibt.
            R 1 Reply Last reply Reply Quote 0
            • R
              rotamint @Asgothian last edited by

              @Asgothian Vielen Dank für Deine Erklärung... Habe jetzt mal ein bisschen "gebastelt" und immerhin kann ich die Lampe jetzt dimmen... Werde bei nächster Gelegenheit dran weiter bauen. Danke nochmals! Gruß Stefan.

              snipping-tool-neuerversuch.JPG

              J 1 Reply Last reply Reply Quote 0
              • J
                Jan1 @rotamint last edited by

                @rotamint
                Der Fehler dürfte wohl darin liegen, dass Du mein Script nimmst, mit dem ich auch Button_up und down reagiere und die zum Dimmen gehalten werden, Du hingegen "Press_Short" dafür verwendest und das dann nicht funktionieren kann.

                1 Reply Last reply Reply Quote 0
                • M
                  mdktm last edited by mdktm

                  @Jan1 !!! DANKE!!!! xD

                  Ich versuche gerade noch das Dimmen auf einen Bereich zwischen 1-100 zu begrenzen. Will das es nicht bis auf 0 runtergeht (sonst aus). Wie mach ich das?

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    Jan1 @mdktm last edited by

                    @mdktm
                    Da kannst dann zwei weiter "falls sonst" einfügen mit dem Du den Dimm DP auf den gewünschten Endwert prüfst und dann die zugehörige zyklische Ausführung stoppst 😉

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      mdktm @Jan1 last edited by

                      @jan1

                      Ich habe heute erst angefangen mit Blockly xD Kannst du mir bitte etwas auf die Sprünge helfen

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        Jan1 @mdktm last edited by

                        @mdktm
                        Baue einfach mal mein Blockly von oben nach und ergänze das wie geschrieben. So lernst das auch am schnellsten.
                        Welche Taster hast denn überhaupt zum Steuern? Das Blockly von mir ist für die Ikea Tradfri Dinger.

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          mdktm @Jan1 last edited by

                          @jan1

                          Hab auch die Tradfri Dinger.
                          Es funktioniert auch schon 🙂 Tausend Dank. Nur das zum ergänzen verwirrt mich.
                          Such gerade die Blöcke 🕵️‍♂️

                          J Asgothian 2 Replies Last reply Reply Quote 0
                          • J
                            Jan1 @mdktm last edited by

                            @mdktm
                            Das Zahnrädchen in der Falls 😉

                            1 Reply Last reply Reply Quote 0
                            • Asgothian
                              Asgothian Developer @mdktm last edited by

                              @mdktm

                              besser als das Falls ist der Block "begrenze wert auf min 1 max 100" beim Schreiben des Wertes in den State.

                              A.

                              M J 2 Replies Last reply Reply Quote 0
                              • M
                                mdktm @Asgothian last edited by

                                @asgothian
                                so weit war/bin ich auch schon.
                                firefox_eISabkzQ5B.png

                                1 Reply Last reply Reply Quote 0
                                • J
                                  Jan1 @Asgothian last edited by

                                  @asgothian
                                  Das hört sich auch gut an, wobei meine Idee so eh nicht funktioniert hätte. Das müsste in ein Extra Trigger auf den Dimmer DP der dann den Zyklus stopt.

                                  Wo soll denn der begrenzer- Block eigentlich hin?

                                  Asgothian 1 Reply Last reply Reply Quote 0
                                  • Asgothian
                                    Asgothian Developer @Jan1 last edited by

                                    @jan1 in das "steuere brightness mit"

                                    A.

                                    J 1 Reply Last reply Reply Quote 0
                                    • M
                                      mdktm last edited by mdktm

                                      firefox_QAtImOFxKw.png

                                      So hab ich es jetzt "gelöst" (Stundenlanges Probieren). geht sicher besser

                                      J Asgothian 2 Replies Last reply Reply Quote 0
                                      • J
                                        Jan1 @mdktm last edited by

                                        @mdktm
                                        Das ist ein ganz anderer Ansatz, zeigt aber dass Du es verstanden hast 😉
                                        Das kannst so natürlich dann auch beim Hochdimmen auf 100 machen.

                                        1 Reply Last reply Reply Quote 0
                                        • J
                                          Jan1 @Asgothian last edited by

                                          @asgothian sagte in Hilfe bei Tradfri On/Off-Schalter zum Dimmen:

                                          @jan1 in das "steuere brightness mit"

                                          Soll das wirklich so einfach sein? Kein Wunder habe ich das nicht verstanden 🙂

                                          1 Reply Last reply Reply Quote 0
                                          • Asgothian
                                            Asgothian Developer @mdktm last edited by Asgothian

                                            @mdktm sagte in Hilfe bei Tradfri On/Off-Schalter zum Dimmen:

                                            firefox_QAtImOFxKw.png

                                            So hab ich es jetzt "gelöst" (Stundenlanges Probieren). geht sicher besser

                                            Du hast 4 Dinge ungünstig gelöst:

                                            • Es ist (in der Theorie) möglich das beide Timeouts laufen.
                                            • Du fängst den Wert nur bei 1 ab, nicht bei 100
                                            • Du liest einen Wert zyklisch ein, den du selber vorher zyklisch schreibst.
                                            • Die Steuerzeit von 100 ms ist kritisch. Damit kannst du je nach Hardware dein Zigbee Netz ziemlich in bedrängnis bringen.

                                            besser wäre:
                                            Screenshot 2021-07-29 at 15.03.00.png

                                            Wichtig ist:
                                            die Bausteine "state value" und "name" sind keine Variablen, sondern dieser Baustein (der auf dem object ID steht, jeweils entsprechend eingestellt:
                                            Screenshot 2021-07-29 at 14.55.36.png

                                            Nachtrag: Wenn du den Zigbee Adapter 1.5.x nutzt, sollte deine Lampe einen states für "brightness_move" haben. Wenn das so ist, dann kannst du den auch benutzen - der sollte (wenn ich das recht erinnere) auch bei 1 automatisch aufhören. Nutzung so:

                                            Screenshot 2021-07-29 at 15.08.17.png

                                            25 bedeutet in dem Fall ein Dimmen von 1 auf 100 in 10 sekunden.

                                            A.

                                            J 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            846
                                            Online

                                            32.0k
                                            Users

                                            80.5k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            41
                                            6998
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo