Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
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

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Blockly für zigbeeschalter welcher nur read hat

Geplant Angeheftet Gesperrt Verschoben Blockly
32 Beiträge 4 Kommentatoren 2.3k Aufrufe 3 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • paul53P paul53

    @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
    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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 Antworten Letzte Antwort
          0
          • paul53P paul53

            @robbi12 sagte: State und Position.

            Mein Vorschlag oben wertet die "Position" aus.

            R Offline
            R Offline
            Robbi12
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            0
            • paul53P paul53

              @robbi12 sagte: State und Position.

              Mein Vorschlag oben wertet die "Position" aus.

              R Offline
              R Offline
              Robbi12
              schrieb am zuletzt editiert von
              #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 Antwort Letzte Antwort
              0
              • paul53P paul53

                @robbi12 sagte: State und Position.

                Mein Vorschlag oben wertet die "Position" aus.

                R Offline
                R Offline
                Robbi12
                schrieb am zuletzt editiert von
                #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 Antwort Letzte Antwort
                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
                  schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                  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
                    schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
                    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
                      schrieb am zuletzt editiert von
                      #32

                      @paul53 Du hattest recht. So funktioniert es.

                      Vielen, Vielen Dank

                      1 Antwort Letzte Antwort
                      0
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      600

                      Online

                      32.7k

                      Benutzer

                      82.4k

                      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