Skip to content
  • Home
  • 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
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Blockly für zigbeeschalter welcher nur read hat

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    496

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

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

Blockly für zigbeeschalter welcher nur read hat

Scheduled Pinned Locked Moved Blockly
32 Posts 4 Posters 2.3k Views 3 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.
  • R Robbi12

    @paul53 Also durch die rechte Taste des Schalters wird beim langend Drücken der Taste move_down_right geschaltet. Geht wie oben auf true und dann selbständig auf false. Wenn diese Taste erneut gedrückt wird dann geht der Datenpunkt move_up_right kurzfristig auf true und wieder zurück. Dies immer im Wechsel bei erneutem Tastendruck.

    stop_right wird beim loslassen aktiviert.

    paul53P Offline
    paul53P Offline
    paul53
    wrote on last edited by paul53
    #21

    @robbi12 sagte: Dies immer im Wechsel bei erneutem Tastendruck.
    stop_right wird beim loslassen aktiviert.

    Versuche es mal so mit Taste rechts = "ausfahren" (close) und Taste links = "einfahren" (open).

    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

    R 2 Replies Last reply
    0
    • paul53P paul53

      @robbi12 sagte: Dies immer im Wechsel bei erneutem Tastendruck.
      stop_right wird beim loslassen aktiviert.

      Versuche es mal so mit Taste rechts = "ausfahren" (close) und Taste links = "einfahren" (open).

      Blockly_temp.JPG

      R Offline
      R Offline
      Robbi12
      wrote on last edited by
      #22

      @paul53 Hallo Paul.. Funktioniert schon fast.

      Noch kleine Fehler. Es wird nicht immer geschalten. Ich muss zweimal auf den jeweiligen Schalter drücken.

      Beim longpress funktionier es.

      1 Reply Last reply
      0
      • paul53P paul53

        @robbi12 sagte: Dies immer im Wechsel bei erneutem Tastendruck.
        stop_right wird beim loslassen aktiviert.

        Versuche es mal so mit Taste rechts = "ausfahren" (close) und Taste links = "einfahren" (open).

        Blockly_temp.JPG

        R Offline
        R Offline
        Robbi12
        wrote on last edited by Robbi12
        #23

        @paul53 Hallo Paul. Ich hole den Eintrag nochmal hervor.

        Wie gesagt es funktioniert, so dass man letztlich damit leben kann.

        Perfekt wäre es wenn man die "Kleinigkeit" noch ausbügeln könnte.

        Also die Schaltpunkte wechseln folgendermaßen:

        rechte Taste: off_right/on_right

        linke Taste: off_left/on_left

        rechte Taste lang: brightness_move_down_right/brightness_move_up_right

        linke Taste lang: brightness_move_down_left/brightness_move_up_left

        Beim Landdruck nach dem loslassen immer: brightness_stop_right/brightness_stop_left

        Ach ja, dies ist mir auch aufgefallen:

        Wenn ich z.B. links drücke und er die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.

        Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

        paul53P 1 Reply Last reply
        0
        • R Robbi12

          @paul53 Hallo Paul. Ich hole den Eintrag nochmal hervor.

          Wie gesagt es funktioniert, so dass man letztlich damit leben kann.

          Perfekt wäre es wenn man die "Kleinigkeit" noch ausbügeln könnte.

          Also die Schaltpunkte wechseln folgendermaßen:

          rechte Taste: off_right/on_right

          linke Taste: off_left/on_left

          rechte Taste lang: brightness_move_down_right/brightness_move_up_right

          linke Taste lang: brightness_move_down_left/brightness_move_up_left

          Beim Landdruck nach dem loslassen immer: brightness_stop_right/brightness_stop_left

          Ach ja, dies ist mir auch aufgefallen:

          Wenn ich z.B. links drücke und er die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.

          Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by paul53
          #24

          @robbi12 sagte: die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.
          Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

          Ja, so ist es programmiert.

          Soll jeder Tastendruck während des Aus-/Einfahrens stoppen, braucht man die Information, dass die Markise fährt. Gibt es dafür einen Aktor-Datenpunkt? Falls nicht, gibt es einen Datenpunkt, der die Position anzeigt?

          EDIT: Blockly-Version mit Auswertung der Position.

          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

          R 1 Reply Last reply
          0
          • paul53P paul53

            @robbi12 sagte: die Markise ausfährt, beim Drücken auf rechts, stopt sie nicht, sondern fährt dann gleich in die entgegengesetzte Richtung.
            Wenn ich nochmal auf links drücke, dann klappt es mit dem Stop

            Ja, so ist es programmiert.

            Soll jeder Tastendruck während des Aus-/Einfahrens stoppen, braucht man die Information, dass die Markise fährt. Gibt es dafür einen Aktor-Datenpunkt? Falls nicht, gibt es einen Datenpunkt, der die Position anzeigt?

            EDIT: Blockly-Version mit Auswertung der Position.

            Blockly_temp.JPG

            R Offline
            R Offline
            Robbi12
            wrote on last edited by
            #25

            @paul53 Screenshot 2024-08-05 141538.png

            Die Markise wird über einen Shelly gesteuert.

            Der Datenpunkt Power ändert sich bei der Bewegung, da hier ja die Leistung abgerufen wird.

            Ebenfalls der Punkt State und Position.

            paul53P 1 Reply Last reply
            0
            • R Robbi12

              @paul53 Screenshot 2024-08-05 141538.png

              Die Markise wird über einen Shelly gesteuert.

              Der Datenpunkt Power ändert sich bei der Bewegung, da hier ja die Leistung abgerufen wird.

              Ebenfalls der Punkt State und Position.

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #26

              @robbi12 sagte: State und Position.

              Mein Vorschlag oben wertet die "Position" aus.

              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

              R 3 Replies Last reply
              0
              • paul53P paul53

                @robbi12 sagte: State und Position.

                Mein Vorschlag oben wertet die "Position" aus.

                R Offline
                R Offline
                Robbi12
                wrote on last edited by
                #27

                @paul53 Hallo, habe es nachgebaut. Fährt aber nicht ein. Evtl. habe ich noch einen Fehler drin.

                <xml xmlns="https://developers.google.com/blockly/xml">
                  <variables>
                    <variable id="?.([A*WCW5[)/gYOuEN[">position</variable>
                    <variable id="_n6m^Nl-K?eJ}-WKj,~e">move</variable>
                  </variables>
                  <block type="procedures_defnoreturn" id="^+yr!wz-zf{64_}rT22Z" x="-287" y="-137">
                    <field name="NAME">stoppen</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    <statement name="STACK">
                      <block type="control" id="?`IT!yD3MjN/;@Zif5?s">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                        <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Stop</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE">
                          <block type="logic_boolean" id="B$L{x|aFIT^(jSM4~UVe">
                            <field name="BOOL">TRUE</field>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id="~*?ZI6sM/I3r=N/*K/UA">
                            <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="}~+B]#UV~x)Htu@^{HaH">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                  <block type="variables_set" id="h6AXh}TW/n`S)+]KWK~Q" x="-287" y="-12">
                    <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                    <value name="VALUE">
                      <block type="get_value" id="AFXj42IWQCIdXK[{*lt~">
                        <field name="ATTR">val</field>
                        <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                      </block>
                    </value>
                    <next>
                      <block type="on" id="`e}GZ0B~!f`Oayf$gaGo">
                        <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <statement name="STATEMENT">
                          <block type="variables_set" id="X|h!}P}=sHN?J9JkK_!2">
                            <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                            <value name="VALUE">
                              <block type="on_source" id="Z~5awLRP)#Y`t]?_7jXT">
                                <field name="ATTR">state.val</field>
                              </block>
                            </value>
                            <next>
                              <block type="controls_if" id="AOr!6tDE,=nMM^7.};IL">
                                <value name="IF0">
                                  <block type="logic_operation" id="^1;M7QpeOwYkVCzLZo)s" inline="false">
                                    <field name="OP">OR</field>
                                    <value name="A">
                                      <block type="logic_compare" id=")h4pHPs#`9$er}C:@,ne">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="variables_get" id=",N%rf=W}+)WGl.7bnM|d">
                                            <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="math_number" id="h[ek]O~5:)v5amG1s(+j">
                                            <field name="NUM">0</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="logic_compare" id="byf1BpPawsF%l=Fh}LYn">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="variables_get" id="`adu5i~qKoRzVNgln!`9">
                                            <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="math_number" id="E7pa=Tpv{]wV@qICi!R3">
                                            <field name="NUM">100</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <statement name="DO0">
                                  <block type="variables_set" id="4d06k4_3v;4_TA*?Dvm:">
                                    <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                    <value name="VALUE">
                                      <block type="logic_boolean" id="39;z00RZI(G#HUXG5^=v">
                                        <field name="BOOL">FALSE</field>
                                      </block>
                                    </value>
                                  </block>
                                </statement>
                              </block>
                            </next>
                          </block>
                        </statement>
                        <next>
                          <block type="on_ext" id="S$^cKUM9f4-40*0Ux!GX">
                            <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="2LVzfr`.YXuX{wBjMxqR">
                                <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_right</field>
                              </shadow>
                            </value>
                            <value name="OID1">
                              <shadow type="field_oid" id="7:-Z?Lz@DzU;iMZ?-j/r">
                                <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_left</field>
                              </shadow>
                            </value>
                            <statement name="STATEMENT">
                              <block type="procedures_callnoreturn" id="|~HfV7cldj:lVFlMn6ml">
                                <mutation name="stoppen"></mutation>
                              </block>
                            </statement>
                            <next>
                              <block type="on_ext" id="El2yiUX6:^87,b0oBm`#">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                <field name="CONDITION">gt</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="1v[;{L*u(qX7tm9fiMfJ">
                                    <field name="oid">zigbee.0.003c84fffe8bec61.on_right</field>
                                  </shadow>
                                </value>
                                <value name="OID1">
                                  <shadow type="field_oid" id=".*y9_k$5nSU{#4QnB2^#">
                                    <field name="oid">zigbee.0.003c84fffe8bec61.off_right</field>
                                  </shadow>
                                </value>
                                <value name="OID2">
                                  <shadow type="field_oid" id="Nk5O,wQm4(YEgn1-dw~W">
                                    <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_right</field>
                                  </shadow>
                                </value>
                                <value name="OID3">
                                  <shadow type="field_oid" id="]m{w#7yLUbD@#_N7zd01">
                                    <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_right</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="controls_if" id="rZ,O^!YQEKb$Ku~3idOD">
                                    <mutation elseif="1"></mutation>
                                    <value name="IF0">
                                      <block type="variables_get" id="Z?MF(9mmt|~=gWa~nh$h">
                                        <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                      </block>
                                    </value>
                                    <statement name="DO0">
                                      <block type="procedures_callnoreturn" id="NqER3cP5Q9={U-{~lGqj">
                                        <mutation name="stoppen"></mutation>
                                      </block>
                                    </statement>
                                    <value name="IF1">
                                      <block type="logic_compare" id="lhK:0;^NBldqbE0ypr2|">
                                        <field name="OP">LT</field>
                                        <value name="A">
                                          <block type="variables_get" id="O9G#WdI:L^Y3t%~I@25[">
                                            <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="math_number" id="0-a7ZscWarix@2i}oPs_">
                                            <field name="NUM">100</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <statement name="DO1">
                                      <block type="control" id=".,pg/bl#(:K$C`]]|qN3">
                                        <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                        <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Close</field>
                                        <field name="WITH_DELAY">FALSE</field>
                                        <value name="VALUE">
                                          <block type="logic_boolean" id="U^$zr-S-D~sH:rYK{=YR">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="variables_set" id="0Seh6rq=Yf%OF:4jp0={">
                                            <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="tf*^X2Q3pv[xV*ADK7Ej">
                                                <field name="BOOL">TRUE</field>
                                              </block>
                                            </value>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                  </block>
                                </statement>
                                <next>
                                  <block type="on_ext" id="Jz2}){fRERquPQ5yrkG`">
                                    <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                    <field name="CONDITION">gt</field>
                                    <field name="ACK_CONDITION"></field>
                                    <value name="OID0">
                                      <shadow type="field_oid" id="e3A5.bx](fQ0/sag=s(}">
                                        <field name="oid">zigbee.0.003c84fffe8bec61.on_left</field>
                                      </shadow>
                                    </value>
                                    <value name="OID1">
                                      <shadow type="field_oid" id="oH^6vm2r@`Tz4ca|xQg7">
                                        <field name="oid">zigbee.0.003c84fffe8bec61.off_left</field>
                                      </shadow>
                                    </value>
                                    <value name="OID2">
                                      <shadow type="field_oid" id="r}z)%UU@Ryd`gD6U{D=l">
                                        <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_left</field>
                                      </shadow>
                                    </value>
                                    <value name="OID3">
                                      <shadow type="field_oid" id="k7{zQikaV4t7CMafyY@(">
                                        <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_left</field>
                                      </shadow>
                                    </value>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="jFs!{Sp7q42eV(Xig0FJ">
                                        <mutation elseif="1"></mutation>
                                        <value name="IF0">
                                          <block type="variables_get" id=":dfkL6uL?`]LumIgSWq2">
                                            <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="procedures_callnoreturn" id="%KP5wZkq8i2@HdCgtcvB">
                                            <mutation name="stoppen"></mutation>
                                          </block>
                                        </statement>
                                        <value name="IF1">
                                          <block type="logic_compare" id="FVmxA197upN=1oRlxhoS">
                                            <field name="OP">GT</field>
                                            <value name="A">
                                              <block type="variables_get" id=":YpltyZ7MXRPi6q4tG;^">
                                                <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="math_number" id="Z7*gG`mdQ8Y!qN:}=$e/">
                                                <field name="NUM">0</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO1">
                                          <block type="control" id="6Pk.f4=t$GsBpqw+5aj2">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Open</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="*MDo^}r+n1TT$`=F:J0z">
                                                <field name="BOOL">TRUE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="variables_set" id="Vc/#r?SplyVdE*Q@HqiS">
                                                <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                <value name="VALUE">
                                                  <block type="logic_boolean" id="A(Jc.rwO7?VxC_?xxo[1">
                                                    <field name="BOOL">TRUE</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </xml>
                
                paul53P 1 Reply Last reply
                0
                • paul53P paul53

                  @robbi12 sagte: State und Position.

                  Mein Vorschlag oben wertet die "Position" aus.

                  R Offline
                  R Offline
                  Robbi12
                  wrote on last edited by
                  #28

                  @paul53 Gerade noch getestet.

                  Es funktioniert, wenn die Markise nicht ganz auf 0 oder 100 steht. Steht sie ganz drin 0 oder ganz draußen dann funktioniert es nicht.

                  1 Reply Last reply
                  0
                  • paul53P paul53

                    @robbi12 sagte: State und Position.

                    Mein Vorschlag oben wertet die "Position" aus.

                    R Offline
                    R Offline
                    Robbi12
                    wrote on last edited by
                    #29

                    @paul53 Habs gerade selber gefunden. Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                    Bei mir ist es leider im ein rumprobieren. Ich kann nicht mal nachverfolgen was dies mit den Werten ist.

                    Du bist ein Profi. Danke dafür

                    paul53P 1 Reply Last reply
                    0
                    • R Robbi12

                      @paul53 Hallo, habe es nachgebaut. Fährt aber nicht ein. Evtl. habe ich noch einen Fehler drin.

                      <xml xmlns="https://developers.google.com/blockly/xml">
                        <variables>
                          <variable id="?.([A*WCW5[)/gYOuEN[">position</variable>
                          <variable id="_n6m^Nl-K?eJ}-WKj,~e">move</variable>
                        </variables>
                        <block type="procedures_defnoreturn" id="^+yr!wz-zf{64_}rT22Z" x="-287" y="-137">
                          <field name="NAME">stoppen</field>
                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                          <statement name="STACK">
                            <block type="control" id="?`IT!yD3MjN/;@Zif5?s">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Stop</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="B$L{x|aFIT^(jSM4~UVe">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                              <next>
                                <block type="variables_set" id="~*?ZI6sM/I3r=N/*K/UA">
                                  <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="}~+B]#UV~x)Htu@^{HaH">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                        <block type="variables_set" id="h6AXh}TW/n`S)+]KWK~Q" x="-287" y="-12">
                          <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                          <value name="VALUE">
                            <block type="get_value" id="AFXj42IWQCIdXK[{*lt~">
                              <field name="ATTR">val</field>
                              <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                            </block>
                          </value>
                          <next>
                            <block type="on" id="`e}GZ0B~!f`Oayf$gaGo">
                              <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Position</field>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <statement name="STATEMENT">
                                <block type="variables_set" id="X|h!}P}=sHN?J9JkK_!2">
                                  <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                  <value name="VALUE">
                                    <block type="on_source" id="Z~5awLRP)#Y`t]?_7jXT">
                                      <field name="ATTR">state.val</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="controls_if" id="AOr!6tDE,=nMM^7.};IL">
                                      <value name="IF0">
                                        <block type="logic_operation" id="^1;M7QpeOwYkVCzLZo)s" inline="false">
                                          <field name="OP">OR</field>
                                          <value name="A">
                                            <block type="logic_compare" id=")h4pHPs#`9$er}C:@,ne">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="variables_get" id=",N%rf=W}+)WGl.7bnM|d">
                                                  <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="h[ek]O~5:)v5amG1s(+j">
                                                  <field name="NUM">0</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_compare" id="byf1BpPawsF%l=Fh}LYn">
                                              <field name="OP">EQ</field>
                                              <value name="A">
                                                <block type="variables_get" id="`adu5i~qKoRzVNgln!`9">
                                                  <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="E7pa=Tpv{]wV@qICi!R3">
                                                  <field name="NUM">100</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="variables_set" id="4d06k4_3v;4_TA*?Dvm:">
                                          <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="39;z00RZI(G#HUXG5^=v">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                              <next>
                                <block type="on_ext" id="S$^cKUM9f4-40*0Ux!GX">
                                  <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="2LVzfr`.YXuX{wBjMxqR">
                                      <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_right</field>
                                    </shadow>
                                  </value>
                                  <value name="OID1">
                                    <shadow type="field_oid" id="7:-Z?Lz@DzU;iMZ?-j/r">
                                      <field name="oid">zigbee.0.003c84fffe8bec61.brightness_stop_left</field>
                                    </shadow>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="procedures_callnoreturn" id="|~HfV7cldj:lVFlMn6ml">
                                      <mutation name="stoppen"></mutation>
                                    </block>
                                  </statement>
                                  <next>
                                    <block type="on_ext" id="El2yiUX6:^87,b0oBm`#">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                      <field name="CONDITION">gt</field>
                                      <field name="ACK_CONDITION"></field>
                                      <value name="OID0">
                                        <shadow type="field_oid" id="1v[;{L*u(qX7tm9fiMfJ">
                                          <field name="oid">zigbee.0.003c84fffe8bec61.on_right</field>
                                        </shadow>
                                      </value>
                                      <value name="OID1">
                                        <shadow type="field_oid" id=".*y9_k$5nSU{#4QnB2^#">
                                          <field name="oid">zigbee.0.003c84fffe8bec61.off_right</field>
                                        </shadow>
                                      </value>
                                      <value name="OID2">
                                        <shadow type="field_oid" id="Nk5O,wQm4(YEgn1-dw~W">
                                          <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_right</field>
                                        </shadow>
                                      </value>
                                      <value name="OID3">
                                        <shadow type="field_oid" id="]m{w#7yLUbD@#_N7zd01">
                                          <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_right</field>
                                        </shadow>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="controls_if" id="rZ,O^!YQEKb$Ku~3idOD">
                                          <mutation elseif="1"></mutation>
                                          <value name="IF0">
                                            <block type="variables_get" id="Z?MF(9mmt|~=gWa~nh$h">
                                              <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                            </block>
                                          </value>
                                          <statement name="DO0">
                                            <block type="procedures_callnoreturn" id="NqER3cP5Q9={U-{~lGqj">
                                              <mutation name="stoppen"></mutation>
                                            </block>
                                          </statement>
                                          <value name="IF1">
                                            <block type="logic_compare" id="lhK:0;^NBldqbE0ypr2|">
                                              <field name="OP">LT</field>
                                              <value name="A">
                                                <block type="variables_get" id="O9G#WdI:L^Y3t%~I@25[">
                                                  <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="0-a7ZscWarix@2i}oPs_">
                                                  <field name="NUM">100</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <statement name="DO1">
                                            <block type="control" id=".,pg/bl#(:K$C`]]|qN3">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Close</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="U^$zr-S-D~sH:rYK{=YR">
                                                  <field name="BOOL">TRUE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="variables_set" id="0Seh6rq=Yf%OF:4jp0={">
                                                  <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                  <value name="VALUE">
                                                    <block type="logic_boolean" id="tf*^X2Q3pv[xV*ADK7Ej">
                                                      <field name="BOOL">TRUE</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </statement>
                                      <next>
                                        <block type="on_ext" id="Jz2}){fRERquPQ5yrkG`">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="4"></mutation>
                                          <field name="CONDITION">gt</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="e3A5.bx](fQ0/sag=s(}">
                                              <field name="oid">zigbee.0.003c84fffe8bec61.on_left</field>
                                            </shadow>
                                          </value>
                                          <value name="OID1">
                                            <shadow type="field_oid" id="oH^6vm2r@`Tz4ca|xQg7">
                                              <field name="oid">zigbee.0.003c84fffe8bec61.off_left</field>
                                            </shadow>
                                          </value>
                                          <value name="OID2">
                                            <shadow type="field_oid" id="r}z)%UU@Ryd`gD6U{D=l">
                                              <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_up_left</field>
                                            </shadow>
                                          </value>
                                          <value name="OID3">
                                            <shadow type="field_oid" id="k7{zQikaV4t7CMafyY@(">
                                              <field name="oid">zigbee.0.003c84fffe8bec61.brightness_move_down_left</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="controls_if" id="jFs!{Sp7q42eV(Xig0FJ">
                                              <mutation elseif="1"></mutation>
                                              <value name="IF0">
                                                <block type="variables_get" id=":dfkL6uL?`]LumIgSWq2">
                                                  <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="procedures_callnoreturn" id="%KP5wZkq8i2@HdCgtcvB">
                                                  <mutation name="stoppen"></mutation>
                                                </block>
                                              </statement>
                                              <value name="IF1">
                                                <block type="logic_compare" id="FVmxA197upN=1oRlxhoS">
                                                  <field name="OP">GT</field>
                                                  <value name="A">
                                                    <block type="variables_get" id=":YpltyZ7MXRPi6q4tG;^">
                                                      <field name="VAR" id="?.([A*WCW5[)/gYOuEN[">position</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="Z7*gG`mdQ8Y!qN:}=$e/">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO1">
                                                <block type="control" id="6Pk.f4=t$GsBpqw+5aj2">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">shelly.0.shellyplus2pm#a0dd6c28a394#1.Cover0.Open</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="logic_boolean" id="*MDo^}r+n1TT$`=F:J0z">
                                                      <field name="BOOL">TRUE</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="variables_set" id="Vc/#r?SplyVdE*Q@HqiS">
                                                      <field name="VAR" id="_n6m^Nl-K?eJ}-WKj,~e">move</field>
                                                      <value name="VALUE">
                                                        <block type="logic_boolean" id="A(Jc.rwO7?VxC_?xxo[1">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                            </block>
                                          </statement>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </xml>
                      
                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by paul53
                      #30

                      @robbi12 sagte: Evtl. habe ich noch einen Fehler drin.

                      Die Richtungen stimmen?

                      • Close (rechte Tasten) fährt Richtung 100 %
                      • Open (linke Tasten) fährt Richtung 0 %

                      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

                      1 Reply Last reply
                      0
                      • R Robbi12

                        @paul53 Habs gerade selber gefunden. Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                        Bei mir ist es leider im ein rumprobieren. Ich kann nicht mal nachverfolgen was dies mit den Werten ist.

                        Du bist ein Profi. Danke dafür

                        paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by paul53
                        #31

                        @robbi12 sagte: Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                        Das ist nicht zielführend. Vermutlich sind die Vergleiche falsch herum?

                        EDIT: Funktioniert es so?

                        Blockly_temp.JPG

                        Ziel der Vergleiche ist, dass nicht noch mal gesteuert wird, wenn die betreffende Endlage erreicht sind. Außerdem soll move dann auf false bleiben, damit der nächste Tastendruck keinen Stopp auslöst.

                        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

                        R 1 Reply Last reply
                        0
                        • paul53P paul53

                          @robbi12 sagte: Ich habe die Werte auf kleiner gleich 100 und auf größer gleich 0 gesetzt.

                          Das ist nicht zielführend. Vermutlich sind die Vergleiche falsch herum?

                          EDIT: Funktioniert es so?

                          Blockly_temp.JPG

                          Ziel der Vergleiche ist, dass nicht noch mal gesteuert wird, wenn die betreffende Endlage erreicht sind. Außerdem soll move dann auf false bleiben, damit der nächste Tastendruck keinen Stopp auslöst.

                          R Offline
                          R Offline
                          Robbi12
                          wrote on last edited by
                          #32

                          @paul53 Du hattest recht. So funktioniert es.

                          Vielen, Vielen Dank

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


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          265

                          Online

                          32.7k

                          Users

                          82.5k

                          Topics

                          1.3m

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

                          • Don't have an account? Register

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