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. Blocky bringt mich in den Wahnsinn

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    142

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

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

Blocky bringt mich in den Wahnsinn

Scheduled Pinned Locked Moved Blockly
16 Posts 5 Posters 1.3k Views 4 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.
  • I ITCrowd

    @mend
    Geht auch einfacher. (Bei mir, mangels Masse, ohne Dimmer.) Der obere Teil läuft so bei mir. (Den NotAus brauche ich nicht.)
    Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

    Licht.PNG

    Das gestaffelte Dimmen vor Aus sollte so funktionieren. Kann ich hier nicht testen.

    Licht2.PNG

    S Offline
    S Offline
    smartysmart
    wrote on last edited by
    #7

    @ITCrowd sagte in Blocky bringt mich in den Wahnsinn:

    Geht auch einfacher
    Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

    Was macht das "falls - [Wert]" siehe Pfeil
    Was maht das "löschen falls läuft" siehe Pfeil
    33a6fdeb-0eab-42f6-9f6c-561ff95b460f-image.png

    Diese Methode schaut am einfachsten aus aber ich muss noch verstehen was diese zwei Sachen machen.

    AsgothianA 1 Reply Last reply
    0
    • H Hoffiheller

      @mend

      ich will auch mal versuchen etwas beizutragen. anbei mal mein Lösungsansatz wie ich es bewältigen würde, das liegt aber daran das ich mit den Timeouts auf Kriegsfuß bin.

      <xml xmlns="http://www.w3.org/1999/xhtml">
        <variables>
          <variable type="undefined" id="timeout4">timeout4</variable>
        </variables>
        <block type="on_ext" id="=Ekh(d#t2Q/*a0|-RmIP" x="-838" y="-562">
          <mutation items="2"></mutation>
          <field name="CONDITION">true</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="VYCE?r?S{yr,*JD3[dT2">
              <field name="oid">deconz.0.Lights.1.on</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id="|HA~+2V0,q3/n5pvDBA6">
              <field name="oid">deconz.0.Lights.3.on</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="timeouts_settimeout" id="gy}|sAF_DQXg.;FQmc3a">
              <field name="NAME">timeout4</field>
              <field name="DELAY">60</field>
              <field name="UNIT">sec</field>
              <statement name="STATEMENT">
                <block type="controls_if" id="lgo%/1P8sMZTlfT|f*8}">
                  <mutation else="1"></mutation>
                  <value name="IF0">
                    <block type="logic_operation" id="T/`h4}o]EYuy^]FfKKpS">
                      <field name="OP">OR</field>
                      <value name="A">
                        <block type="logic_compare" id="zo|J]:4A(y,7H3$e(JHI">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id="#a6HSdgys/n}-5r-a|;C">
                              <field name="ATTR">val</field>
                              <field name="OID">deconz.0.Lights.3.on</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="bT:F4=Vojc|*,3bhKs[1">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_compare" id="Wza^L+Y9x.}`PYe!Z{=}">
                          <field name="OP">EQ</field>
                          <value name="A">
                            <block type="get_value" id=";+*=*:kAkVQ0!@ljG7N[">
                              <field name="ATTR">val</field>
                              <field name="OID">deconz.0.Lights.1.on</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_boolean" id="(qQ5{p5:T~sts@a1fN23">
                              <field name="BOOL">TRUE</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="control" id="N@HhnKGGSq/*;%O3aL6A">
                      <mutation delay_input="false"></mutation>
                      <field name="OID">deconz.0.Lights.1.on</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="m0{RE;LB$,L+!ww[K-~}">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="zsUhH%2Efk-1`|:=3LmU">
                          <mutation delay_input="false"></mutation>
                          <field name="OID">deconz.0.Lights.3.on</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="1-%oIIRm}DotQc?N,!6f">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                          <next>
                            <block type="debug" id="bS2z6G8|?V#u9VNK*%6t">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="oD(knTZ5Pdl?V,9`xC=y">
                                  <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                </shadow>
                              </value>
                              <next>
                                <block type="telegram" id="isq6}}*2cGG/S4r3b/P]">
                                  <field name="INSTANCE"></field>
                                  <field name="LOG"></field>
                                  <field name="SILENT">FALSE</field>
                                  <field name="PARSEMODE">default</field>
                                  <value name="MESSAGE">
                                    <shadow type="text" id="{H^_s2;_+l_$3N~pRrDj">
                                      <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                    </shadow>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </statement>
                  <statement name="ELSE">
                    <block type="debug" id="+/wD}mBboia2~Y6Aw1$@">
                      <field name="Severity">log</field>
                      <value name="TEXT">
                        <shadow type="text" id="$,e#2{Af!UgNz{us11U~">
                          <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="comment" id="w|c.MV]lQRpdh)#?Ur8X">
                      <field name="COMMENT">hier der timeoutstop </field>
                      <next>
                        <block type="timeouts_cleartimeout" id="TH3!29wEx$9gA`wPFe9I">
                          <field name="NAME">timeout4</field>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </statement>
          <next>
            <block type="comment" id="y=+AZqyYw7DI8.ulb+}f">
              <field name="COMMENT">so hätte ich es bewältigt</field>
              <next>
                <block type="on_ext" id="9eUR^;5!QfBv-9mby5lo">
                  <mutation items="2"></mutation>
                  <field name="CONDITION">true</field>
                  <field name="ACK_CONDITION"></field>
                  <value name="OID0">
                    <shadow type="field_oid" id="!MdQl/o%J-jz*Z~C3Qe:">
                      <field name="oid">deconz.0.Lights.1.on</field>
                    </shadow>
                  </value>
                  <value name="OID1">
                    <shadow type="field_oid" id="*]K-K*nzhBPN%r4IuS4C">
                      <field name="oid">deconz.0.Lights.3.on</field>
                    </shadow>
                  </value>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="_S^ZbKn4RwU=Co!+0F7B">
                      <mutation else="1"></mutation>
                      <value name="IF0">
                        <block type="logic_operation" id="%jvB#=}]dTOEKA.V2oy3">
                          <field name="OP">OR</field>
                          <value name="A">
                            <block type="logic_compare" id="v4UW`GAxv%O6v=gzs%Ir">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="get_value" id="k:z}~a1+7FFb)zPA]N6s">
                                  <field name="ATTR">val</field>
                                  <field name="OID">deconz.0.Lights.3.on</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="Nemkw`T=~gf)0JuW/6DI">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_compare" id="i:?ohuj:(,*P)N}LV(S2">
                              <field name="OP">EQ</field>
                              <value name="A">
                                <block type="get_value" id="ddXtq7*)ZZn|/I+^ekcu">
                                  <field name="ATTR">val</field>
                                  <field name="OID">deconz.0.Lights.1.on</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_boolean" id="phN350Z4(pMnVAx#+gV2">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="control" id="IS3]BN=T@,ia+Wl8k#oN">
                          <mutation delay_input="true"></mutation>
                          <field name="OID">deconz.0.Lights.1.on</field>
                          <field name="WITH_DELAY">TRUE</field>
                          <field name="DELAY_MS">60000</field>
                          <field name="UNIT">ms</field>
                          <field name="CLEAR_RUNNING">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="R]fJe]WzT_:1j:|Jc=cF">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                          <next>
                            <block type="control" id="[$GxiAUR_bqs;U2218:$">
                              <mutation delay_input="true"></mutation>
                              <field name="OID">deconz.0.Lights.3.on</field>
                              <field name="WITH_DELAY">TRUE</field>
                              <field name="DELAY_MS">60000</field>
                              <field name="UNIT">ms</field>
                              <field name="CLEAR_RUNNING">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="T)N7l~I)%N``~m#8bMK~">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                              <next>
                                <block type="debug" id="=3rf{)Ki{ICEBvUTY+h|">
                                  <field name="Severity">log</field>
                                  <value name="TEXT">
                                    <shadow type="text" id=")%5}k0]*~Y(8TQz0/`=|">
                                      <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                    </shadow>
                                  </value>
                                  <next>
                                    <block type="telegram" id="IulSqelmIrbB/;4h*6]d">
                                      <field name="INSTANCE"></field>
                                      <field name="LOG"></field>
                                      <field name="SILENT">FALSE</field>
                                      <field name="PARSEMODE">default</field>
                                      <value name="MESSAGE">
                                        <shadow type="text" id="L+wm-pY$rOpS{w;D5)Eu">
                                          <field name="TEXT">!! ACHTUNG !! Licht wurde von der Notfallzeit ausgeschalten !</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                      <statement name="ELSE">
                        <block type="debug" id="p]I|^u}U}5a%BGF2LpsU">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="xoK;=G[)tAj/CNoHTC{p">
                              <field name="TEXT">Licht vor Notlauf ausgeschlten</field>
                            </shadow>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </next>
        </block>
      </xml>```
      S Offline
      S Offline
      smartysmart
      wrote on last edited by
      #8

      @Hoffiheller
      Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
      Greift dann der "sonst" Baustein ?

      Und noch eine Frage ... Was passiert wenn bei 59:50 dann Bewegung passiert. Macht die Verzögerung trotzdem nach 60:00 aus ? Das befürchte ich fast bei dieser Lösung

      AsgothianA 1 Reply Last reply
      0
      • S smartysmart

        @ITCrowd sagte in Blocky bringt mich in den Wahnsinn:

        Geht auch einfacher
        Dabei spielt es keine Rolle woher der Ein-Befehl kommt.

        Was macht das "falls - [Wert]" siehe Pfeil
        Was maht das "löschen falls läuft" siehe Pfeil
        33a6fdeb-0eab-42f6-9f6c-561ff95b460f-image.png

        Diese Methode schaut am einfachsten aus aber ich muss noch verstehen was diese zwei Sachen machen.

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        wrote on last edited by
        #9

        @mend

        Das falls wert ist ein einfacher Trick. “Wert” entspricht dem Wert des datenpunktes der den trigger ausgelöst hat. Falls erwartet etwas das ‘wahr” oder “falsch” sei kann. Da der datenpunkt genau diese beiden Werte annehmen kann entspricht das “falls wert = wahr”

        ‘Löschen falls läuft” sorgt dafür da du nicht für jeden trigger je einen schalt Befehl bekommst, sondern immer nur für den letzten.

        Zum Thema “Not aus” - das wird in genau dieser Konfiguration auch dann getriggert wenn durch den bwm das Licht an geschaltet wird. Durch das ‘löschen falls läuft’ wird also wenn wenige Sekunden vor der Not Ausschaltung jemand nach oben geht der Timer für die Abschaltung auf 60 Minuten (neu) gesetzt.

        Das geht aber nur deswegen weil

        • du auf jede Aktualisierung triggerst
        • du bei trigger des BWM den datenpunkt on explizit aktivierst. so wie du das oben gelöst hattest (“nur” Helligkeit hoch setzen würde das dann nicht passieren und das Licht wäre aus.

        A.

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

        1 Reply Last reply
        0
        • S smartysmart

          @Hoffiheller
          Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
          Greift dann der "sonst" Baustein ?

          Und noch eine Frage ... Was passiert wenn bei 59:50 dann Bewegung passiert. Macht die Verzögerung trotzdem nach 60:00 aus ? Das befürchte ich fast bei dieser Lösung

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          wrote on last edited by
          #10

          @mend sagte in Blocky bringt mich in den Wahnsinn:

          Danke dir für deinen Ansatz, was passiert mit der Verzögerung, wenn das Licht dann doch davor aus geht ?
          Greift dann der "sonst" Baustein ?

          Welcher “sonst” Baustein ? Den gibt es im Beispiel nicht. Wenn du einen einfügst dann bring das nichts, da der Befehl zum abschalten sofort gesetzt wird (er wird halt nur 60 Minuten Kannst bei dieser Methode nicht feststellen wann die not Abschaltung greift.

          A.

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

          1 Reply Last reply
          0
          • H Offline
            H Offline
            Hoffiheller
            wrote on last edited by
            #11

            @mend

            habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
            Bildschirmfoto 2020-01-15 um 21.35.19.png

            J AsgothianA 2 Replies Last reply
            0
            • H Hoffiheller

              @mend

              habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
              Bildschirmfoto 2020-01-15 um 21.35.19.png

              J Offline
              J Offline
              Jan1
              wrote on last edited by
              #12

              @Hoffiheller
              Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
              Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

              H AsgothianA 2 Replies Last reply
              0
              • J Jan1

                @Hoffiheller
                Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                H Offline
                H Offline
                Hoffiheller
                wrote on last edited by
                #13

                @Jan1

                Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.

                hat aber irgendwie Funktioniert

                Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                Danke für den tip das macht in Zukunft einiges übersichtlicher und schneller.

                1 Reply Last reply
                0
                • J Jan1

                  @Hoffiheller
                  Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                  Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                  AsgothianA Offline
                  AsgothianA Offline
                  Asgothian
                  Developer
                  wrote on last edited by
                  #14

                  @Jan1 sagte in Blocky bringt mich in den Wahnsinn:

                  @Hoffiheller
                  Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                  Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                  Sind sie nicht. Fun fact in JS: true > false !

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

                  J 1 Reply Last reply
                  0
                  • AsgothianA Asgothian

                    @Jan1 sagte in Blocky bringt mich in den Wahnsinn:

                    @Hoffiheller
                    Der Trigger ist falsch abgefragt. Die DPssind wohl nur true oder false, wie willst die auf größer abfragen.
                    Die falls kannst ganz weg lassen wenn das schon im Trigger erledigst und wenn nicht, Werte Oder zu prüfen und jedesmal auf true abfragen ist auch Overkill, da der Block das eh macht und das true komplett überflüssig ist.

                    Sind sie nicht. Fun fact in JS: true > false !

                    J Offline
                    J Offline
                    Jan1
                    wrote on last edited by Jan1
                    #15

                    @Asgothian
                    True größer false, ok bolisch gesehen macht das sogar Sinn.

                    1 Reply Last reply
                    0
                    • H Hoffiheller

                      @mend

                      habe es nochmal umgebaut so geht es wie gewünscht aber man bekommt direkt eine telegram Nachricht so wie das Licht angeht. ich bekomme so auch immer direkt 5 nachrichten.
                      Bildschirmfoto 2020-01-15 um 21.35.19.png

                      AsgothianA Offline
                      AsgothianA Offline
                      Asgothian
                      Developer
                      wrote on last edited by Asgothian
                      #16

                      @Hoffiheller das macht so wenig Sinn:

                      • der trigger auf “größer oder gleich als vorher” in diesem Fall fast identisch zu “wurde aktualisiert” (true->true triggert, false->false triggert, false->true triggert, nur true->false triggert nicht.
                      • der wenn Fall wird bei jedem trigger wenn mindestens ein Licht an ist gestartet.
                      • Der sonst Fall tritt nur auf wenn beide Lichter aus sind und mindestens einer der Werte aktualisiert wurde.
                      • Die Nachricht (Telegramm) wird geschickt wenn der trigger kommt, nicht wenn das Licht vor Ablauf der 60 Minuten ausgeschaltet wurde.
                      • es erfolgt keine Nachricht wenn das Licht nach der Stunde ausgeschaltet wurde.

                      Der Ausweg sieht so aus:
                      8C823BAA-ADB0-4A86-93F3-F85CBFE2451C.jpeg

                      Natürlich musst du die Objekt ids noch korrekt setzen.

                      Nachtrag: ich hab im falls einen Fehler, da muss oder statt und stehen.

                      A.

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

                      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

                      567

                      Online

                      32.7k

                      Users

                      82.4k

                      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