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. Mehrere Heizkörper Synchronisiseren, value storm

NEWS

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

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

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

Mehrere Heizkörper Synchronisiseren, value storm

Scheduled Pinned Locked Moved Skripten / Logik
24 Posts 5 Posters 2.0k 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.
  • S Offline
    S Offline
    Smo
    wrote on last edited by
    #1

    Hallo,

    Was ich erreichen will:
    Ich habe drei Heizkörper die über ein blockly script synchronisiert werden sollen, so dass, wenn man an einem Heizkörper stellt alle anderen nachziehen, dass man auch über Vis über einen Regler alle drei stellen kann, und dass auch alle drei auf den Fenstersensor reagieren.

    Mein Problem ist:
    Fenstersensor und stellen am Heizkörper synct perfekt. Aber wenn ich am VIS den Regler bediene, dann kann es durch den Touch passieren, dass man zwei Änderungen abschickt. Dann hat Heizkörper 1 z.B. 18 Grad also soll, gibt den an Heizkörper zwei weiter, und dann geht nochmal 19 Grad raus. Dann hat man zwei Temperaturen und drei Heizkörper im System, die sich gegenseitig immer wieder ändern bis der ganze Rassel zur Hölle fährt und abstürzt.

    Was ich versucht habe:
    Ich habs mit dem Baustein "binde Objekt" und mit eigener Logik mit Verzögerung versucht. Hier das Blockly )mit der eigenen Logik deaktiviert.) Zum probieren habe ich immer entweder die "Binde" Bausteine, oder das eigene deaktiviert. Daran liegts also nicht.

    
    BlocklyJavascriptTypeScriptRules
    Protokoll
    Ausgewählte Blöcke exportieren
    <xml xmlns="https://developers.google.com/blockly/xml">
      <variables>
        <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
        <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
        <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
      </variables>
      <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
        <value name="VALUE">
          <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
            <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
          </block>
        </value>
        <next>
          <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            <value name="VALUE">
              <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                <value name="VALUE">
                  <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                    <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                  </block>
                </value>
                <next>
                  <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                    <field name="COMMENT">Küche</field>
                    <next>
                      <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <value name="OID0">
                          <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                            <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                          </shadow>
                          <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                          </block>
                        </value>
                        <statement name="STATEMENT">
                          <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                            <field name="COMMENT">Küche zu Ost</field>
                            <next>
                              <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                <field name="TYPE">false</field>
                                <field name="CLEAR_RUNNING">TRUE</field>
                                <value name="OID">
                                  <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                    <field name="oid">Object ID</field>
                                  </shadow>
                                  <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                  </block>
                                </value>
                                <value name="VALUE">
                                  <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                    <field name="BOOL">TRUE</field>
                                  </shadow>
                                  <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                  </block>
                                </value>
                                <value name="DELAY_MS">
                                  <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                    <field name="NUM">5</field>
                                  </shadow>
                                </value>
                              </block>
                            </next>
                          </block>
                        </statement>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </next>
      </block>
      <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
        <field name="COMMENT">Ost</field>
      </block>
      <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
        <field name="COMMENT">Süd</field>
      </block>
      <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
            <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
          </shadow>
          <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
            <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
          </block>
        </value>
        <statement name="STATEMENT">
          <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
            <field name="COMMENT">Süd zu Küche</field>
            <next>
              <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                <field name="TYPE">false</field>
                <field name="CLEAR_RUNNING">TRUE</field>
                <value name="OID">
                  <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                    <field name="oid">Object ID</field>
                  </shadow>
                  <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                  </block>
                </value>
                <value name="VALUE">
                  <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                    <field name="BOOL">TRUE</field>
                  </shadow>
                  <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="DELAY_MS">
                  <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                    <field name="NUM">5</field>
                  </shadow>
                </value>
              </block>
            </next>
          </block>
        </statement>
      </block>
      <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
        <field name="NUM">3000</field>
      </block>
      <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
        <field name="NUM">3000</field>
      </block>
      <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
            <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
          </shadow>
          <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
          </block>
        </value>
        <statement name="STATEMENT">
          <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
            <field name="COMMENT">Ost zu Süd</field>
            <next>
              <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                <field name="TYPE">false</field>
                <field name="CLEAR_RUNNING">TRUE</field>
                <value name="OID">
                  <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                    <field name="oid">Object ID</field>
                  </shadow>
                  <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="VALUE">
                  <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                    <field name="BOOL">TRUE</field>
                  </shadow>
                  <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                  </block>
                </value>
                <value name="DELAY_MS">
                  <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                    <field name="NUM">5</field>
                  </shadow>
                </value>
              </block>
            </next>
          </block>
        </statement>
      </block>
      <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
        <field name="ONLY_CHANGES">TRUE</field>
        <value name="OID_SRC">
          <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
            <field name="oid">Object ID 1</field>
          </shadow>
          <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
          </block>
        </value>
        <value name="OID_DST">
          <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
            <field name="oid">Object ID 2</field>
          </shadow>
          <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
          </block>
        </value>
        <next>
          <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
            <field name="ONLY_CHANGES">TRUE</field>
            <value name="OID_SRC">
              <shadow type="field_oid">
                <field name="oid">Object ID 1</field>
              </shadow>
              <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <value name="OID_DST">
              <shadow type="field_oid">
                <field name="oid">Object ID 2</field>
              </shadow>
              <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
              </block>
            </value>
            <next>
              <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                <field name="ONLY_CHANGES">TRUE</field>
                <value name="OID_SRC">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 1</field>
                  </shadow>
                  <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="OID_DST">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 2</field>
                  </shadow>
                  <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                  </block>
                </value>
              </block>
            </next>
          </block>
        </next>
      </block>
      <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
        <field name="NUM">3000</field>
      </block>
    </xml>
    <xml xmlns="https://developers.google.com/blockly/xml">
      <variables>
        <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
        <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
        <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
      </variables>
      <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
        <value name="VALUE">
          <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
            <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
          </block>
        </value>
        <next>
          <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            <value name="VALUE">
              <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                <value name="VALUE">
                  <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                    <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                  </block>
                </value>
                <next>
                  <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                    <field name="COMMENT">Küche</field>
                    <next>
                      <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                        <field name="CONDITION">ne</field>
                        <field name="ACK_CONDITION"></field>
                        <value name="OID0">
                          <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                            <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                          </shadow>
                          <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                          </block>
                        </value>
                        <statement name="STATEMENT">
                          <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                            <field name="COMMENT">Küche zu Ost</field>
                            <next>
                              <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                <field name="TYPE">false</field>
                                <field name="CLEAR_RUNNING">TRUE</field>
                                <value name="OID">
                                  <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                    <field name="oid">Object ID</field>
                                  </shadow>
                                  <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                  </block>
                                </value>
                                <value name="VALUE">
                                  <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                    <field name="BOOL">TRUE</field>
                                  </shadow>
                                  <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                  </block>
                                </value>
                                <value name="DELAY_MS">
                                  <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                    <field name="NUM">5</field>
                                  </shadow>
                                </value>
                              </block>
                            </next>
                          </block>
                        </statement>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
        </next>
      </block>
      <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
        <field name="COMMENT">Ost</field>
      </block>
      <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
        <field name="COMMENT">Süd</field>
      </block>
      <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
            <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
          </shadow>
          <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
            <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
          </block>
        </value>
        <statement name="STATEMENT">
          <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
            <field name="COMMENT">Süd zu Küche</field>
            <next>
              <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                <field name="TYPE">false</field>
                <field name="CLEAR_RUNNING">TRUE</field>
                <value name="OID">
                  <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                    <field name="oid">Object ID</field>
                  </shadow>
                  <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                  </block>
                </value>
                <value name="VALUE">
                  <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                    <field name="BOOL">TRUE</field>
                  </shadow>
                  <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="DELAY_MS">
                  <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                    <field name="NUM">5</field>
                  </shadow>
                </value>
              </block>
            </next>
          </block>
        </statement>
      </block>
      <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
        <field name="NUM">3000</field>
      </block>
      <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
        <field name="NUM">3000</field>
      </block>
      <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
        <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
            <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
          </shadow>
          <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
          </block>
        </value>
        <statement name="STATEMENT">
          <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
            <field name="COMMENT">Ost zu Süd</field>
            <next>
              <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                <field name="TYPE">false</field>
                <field name="CLEAR_RUNNING">TRUE</field>
                <value name="OID">
                  <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                    <field name="oid">Object ID</field>
                  </shadow>
                  <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="VALUE">
                  <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                    <field name="BOOL">TRUE</field>
                  </shadow>
                  <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                  </block>
                </value>
                <value name="DELAY_MS">
                  <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                    <field name="NUM">5</field>
                  </shadow>
                </value>
              </block>
            </next>
          </block>
        </statement>
      </block>
      <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
        <field name="ONLY_CHANGES">TRUE</field>
        <value name="OID_SRC">
          <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
            <field name="oid">Object ID 1</field>
          </shadow>
          <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
          </block>
        </value>
        <value name="OID_DST">
          <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
            <field name="oid">Object ID 2</field>
          </shadow>
          <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
            <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
          </block>
        </value>
        <next>
          <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
            <field name="ONLY_CHANGES">TRUE</field>
            <value name="OID_SRC">
              <shadow type="field_oid">
                <field name="oid">Object ID 1</field>
              </shadow>
              <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <value name="OID_DST">
              <shadow type="field_oid">
                <field name="oid">Object ID 2</field>
              </shadow>
              <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
              </block>
            </value>
            <next>
              <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                <field name="ONLY_CHANGES">TRUE</field>
                <value name="OID_SRC">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 1</field>
                  </shadow>
                  <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <value name="OID_DST">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 2</field>
                  </shadow>
                  <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                    <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                  </block>
                </value>
              </block>
            </next>
          </block>
        </next>
      </block>
      <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
        <field name="NUM">3000</field>
      </block>
    </xml>
    
    

    Hat jemand ne Idee wie man das abfängt? Weder eine Verzögerung, noch "lösche falls läuft" bringen die gewünschte Abhilfe. Das einzige was mir einfällt, ist beim Sender, also im VIS, zu verhindern, dass kurz nacheinander verschiedene Werte rausgehen. Aber das ist irgendwie auch unbefriedigend, ich hätte lieber die elegantere Lösung die den Empfänger fehlertolerant macht.

    Dankbar für jede Idee
    Steve

    sigi234S paul53P 2 Replies Last reply
    0
    • S Smo

      Hallo,

      Was ich erreichen will:
      Ich habe drei Heizkörper die über ein blockly script synchronisiert werden sollen, so dass, wenn man an einem Heizkörper stellt alle anderen nachziehen, dass man auch über Vis über einen Regler alle drei stellen kann, und dass auch alle drei auf den Fenstersensor reagieren.

      Mein Problem ist:
      Fenstersensor und stellen am Heizkörper synct perfekt. Aber wenn ich am VIS den Regler bediene, dann kann es durch den Touch passieren, dass man zwei Änderungen abschickt. Dann hat Heizkörper 1 z.B. 18 Grad also soll, gibt den an Heizkörper zwei weiter, und dann geht nochmal 19 Grad raus. Dann hat man zwei Temperaturen und drei Heizkörper im System, die sich gegenseitig immer wieder ändern bis der ganze Rassel zur Hölle fährt und abstürzt.

      Was ich versucht habe:
      Ich habs mit dem Baustein "binde Objekt" und mit eigener Logik mit Verzögerung versucht. Hier das Blockly )mit der eigenen Logik deaktiviert.) Zum probieren habe ich immer entweder die "Binde" Bausteine, oder das eigene deaktiviert. Daran liegts also nicht.

      
      BlocklyJavascriptTypeScriptRules
      Protokoll
      Ausgewählte Blöcke exportieren
      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
          <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
          <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
        </variables>
        <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
          <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
          <value name="VALUE">
            <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
              <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
            </block>
          </value>
          <next>
            <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              <value name="VALUE">
                <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                  <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                </block>
              </value>
              <next>
                <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                  <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  <value name="VALUE">
                    <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                      <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                    </block>
                  </value>
                  <next>
                    <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                      <field name="COMMENT">Küche</field>
                      <next>
                        <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                          <field name="CONDITION">ne</field>
                          <field name="ACK_CONDITION"></field>
                          <value name="OID0">
                            <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                              <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                            </shadow>
                            <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                              <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                            </block>
                          </value>
                          <statement name="STATEMENT">
                            <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                              <field name="COMMENT">Küche zu Ost</field>
                              <next>
                                <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                  <field name="TYPE">false</field>
                                  <field name="CLEAR_RUNNING">TRUE</field>
                                  <value name="OID">
                                    <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                      <field name="oid">Object ID</field>
                                    </shadow>
                                    <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                    </block>
                                  </value>
                                  <value name="VALUE">
                                    <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                      <field name="BOOL">TRUE</field>
                                    </shadow>
                                    <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                    </block>
                                  </value>
                                  <value name="DELAY_MS">
                                    <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                      <field name="NUM">5</field>
                                    </shadow>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
          <field name="COMMENT">Ost</field>
        </block>
        <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
          <field name="COMMENT">Süd</field>
        </block>
        <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
              <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
            </shadow>
            <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
              <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
            </block>
          </value>
          <statement name="STATEMENT">
            <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
              <field name="COMMENT">Süd zu Küche</field>
              <next>
                <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                  <field name="TYPE">false</field>
                  <field name="CLEAR_RUNNING">TRUE</field>
                  <value name="OID">
                    <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                      <field name="oid">Object ID</field>
                    </shadow>
                    <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                    </block>
                  </value>
                  <value name="VALUE">
                    <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                      <field name="BOOL">TRUE</field>
                    </shadow>
                    <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="DELAY_MS">
                    <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                      <field name="NUM">5</field>
                    </shadow>
                  </value>
                </block>
              </next>
            </block>
          </statement>
        </block>
        <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
          <field name="NUM">3000</field>
        </block>
        <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
          <field name="NUM">3000</field>
        </block>
        <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
              <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
            </shadow>
            <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            </block>
          </value>
          <statement name="STATEMENT">
            <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
              <field name="COMMENT">Ost zu Süd</field>
              <next>
                <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                  <field name="TYPE">false</field>
                  <field name="CLEAR_RUNNING">TRUE</field>
                  <value name="OID">
                    <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                      <field name="oid">Object ID</field>
                    </shadow>
                    <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="VALUE">
                    <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                      <field name="BOOL">TRUE</field>
                    </shadow>
                    <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                    </block>
                  </value>
                  <value name="DELAY_MS">
                    <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                      <field name="NUM">5</field>
                    </shadow>
                  </value>
                </block>
              </next>
            </block>
          </statement>
        </block>
        <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
          <field name="ONLY_CHANGES">TRUE</field>
          <value name="OID_SRC">
            <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
              <field name="oid">Object ID 1</field>
            </shadow>
            <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
              <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
            </block>
          </value>
          <value name="OID_DST">
            <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
              <field name="oid">Object ID 2</field>
            </shadow>
            <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            </block>
          </value>
          <next>
            <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
              <field name="ONLY_CHANGES">TRUE</field>
              <value name="OID_SRC">
                <shadow type="field_oid">
                  <field name="oid">Object ID 1</field>
                </shadow>
                <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                  <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                </block>
              </value>
              <value name="OID_DST">
                <shadow type="field_oid">
                  <field name="oid">Object ID 2</field>
                </shadow>
                <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                  <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                </block>
              </value>
              <next>
                <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                  <field name="ONLY_CHANGES">TRUE</field>
                  <value name="OID_SRC">
                    <shadow type="field_oid">
                      <field name="oid">Object ID 1</field>
                    </shadow>
                    <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="OID_DST">
                    <shadow type="field_oid">
                      <field name="oid">Object ID 2</field>
                    </shadow>
                    <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                    </block>
                  </value>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
          <field name="NUM">3000</field>
        </block>
      </xml>
      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
          <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
          <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
        </variables>
        <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
          <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
          <value name="VALUE">
            <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
              <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
            </block>
          </value>
          <next>
            <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              <value name="VALUE">
                <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                  <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                </block>
              </value>
              <next>
                <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                  <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  <value name="VALUE">
                    <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                      <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                    </block>
                  </value>
                  <next>
                    <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                      <field name="COMMENT">Küche</field>
                      <next>
                        <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                          <field name="CONDITION">ne</field>
                          <field name="ACK_CONDITION"></field>
                          <value name="OID0">
                            <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                              <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                            </shadow>
                            <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                              <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                            </block>
                          </value>
                          <statement name="STATEMENT">
                            <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                              <field name="COMMENT">Küche zu Ost</field>
                              <next>
                                <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                  <field name="TYPE">false</field>
                                  <field name="CLEAR_RUNNING">TRUE</field>
                                  <value name="OID">
                                    <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                      <field name="oid">Object ID</field>
                                    </shadow>
                                    <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                    </block>
                                  </value>
                                  <value name="VALUE">
                                    <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                      <field name="BOOL">TRUE</field>
                                    </shadow>
                                    <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                    </block>
                                  </value>
                                  <value name="DELAY_MS">
                                    <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                      <field name="NUM">5</field>
                                    </shadow>
                                  </value>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
          <field name="COMMENT">Ost</field>
        </block>
        <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
          <field name="COMMENT">Süd</field>
        </block>
        <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
              <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
            </shadow>
            <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
              <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
            </block>
          </value>
          <statement name="STATEMENT">
            <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
              <field name="COMMENT">Süd zu Küche</field>
              <next>
                <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                  <field name="TYPE">false</field>
                  <field name="CLEAR_RUNNING">TRUE</field>
                  <value name="OID">
                    <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                      <field name="oid">Object ID</field>
                    </shadow>
                    <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                    </block>
                  </value>
                  <value name="VALUE">
                    <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                      <field name="BOOL">TRUE</field>
                    </shadow>
                    <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="DELAY_MS">
                    <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                      <field name="NUM">5</field>
                    </shadow>
                  </value>
                </block>
              </next>
            </block>
          </statement>
        </block>
        <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
          <field name="NUM">3000</field>
        </block>
        <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
          <field name="NUM">3000</field>
        </block>
        <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
              <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
            </shadow>
            <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            </block>
          </value>
          <statement name="STATEMENT">
            <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
              <field name="COMMENT">Ost zu Süd</field>
              <next>
                <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                  <field name="TYPE">false</field>
                  <field name="CLEAR_RUNNING">TRUE</field>
                  <value name="OID">
                    <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                      <field name="oid">Object ID</field>
                    </shadow>
                    <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="VALUE">
                    <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                      <field name="BOOL">TRUE</field>
                    </shadow>
                    <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                      <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                    </block>
                  </value>
                  <value name="DELAY_MS">
                    <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                      <field name="NUM">5</field>
                    </shadow>
                  </value>
                </block>
              </next>
            </block>
          </statement>
        </block>
        <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
          <field name="ONLY_CHANGES">TRUE</field>
          <value name="OID_SRC">
            <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
              <field name="oid">Object ID 1</field>
            </shadow>
            <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
              <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
            </block>
          </value>
          <value name="OID_DST">
            <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
              <field name="oid">Object ID 2</field>
            </shadow>
            <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
              <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
            </block>
          </value>
          <next>
            <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
              <field name="ONLY_CHANGES">TRUE</field>
              <value name="OID_SRC">
                <shadow type="field_oid">
                  <field name="oid">Object ID 1</field>
                </shadow>
                <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                  <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                </block>
              </value>
              <value name="OID_DST">
                <shadow type="field_oid">
                  <field name="oid">Object ID 2</field>
                </shadow>
                <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                  <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                </block>
              </value>
              <next>
                <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                  <field name="ONLY_CHANGES">TRUE</field>
                  <value name="OID_SRC">
                    <shadow type="field_oid">
                      <field name="oid">Object ID 1</field>
                    </shadow>
                    <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                      <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    </block>
                  </value>
                  <value name="OID_DST">
                    <shadow type="field_oid">
                      <field name="oid">Object ID 2</field>
                    </shadow>
                    <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                      <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                    </block>
                  </value>
                </block>
              </next>
            </block>
          </next>
        </block>
        <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
          <field name="NUM">3000</field>
        </block>
      </xml>
      
      

      Hat jemand ne Idee wie man das abfängt? Weder eine Verzögerung, noch "lösche falls läuft" bringen die gewünschte Abhilfe. Das einzige was mir einfällt, ist beim Sender, also im VIS, zu verhindern, dass kurz nacheinander verschiedene Werte rausgehen. Aber das ist irgendwie auch unbefriedigend, ich hätte lieber die elegantere Lösung die den Empfänger fehlertolerant macht.

      Dankbar für jede Idee
      Steve

      sigi234S Online
      sigi234S Online
      sigi234
      Forum Testing Most Active
      wrote on last edited by
      #2

      @smo

      Warum nimmst du nicht HeatigControl?

      https://github.com/rg-engineering/ioBroker.heatingcontrol

      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Immer Daten sichern!

      S 1 Reply Last reply
      0
      • S Smo

        Hallo,

        Was ich erreichen will:
        Ich habe drei Heizkörper die über ein blockly script synchronisiert werden sollen, so dass, wenn man an einem Heizkörper stellt alle anderen nachziehen, dass man auch über Vis über einen Regler alle drei stellen kann, und dass auch alle drei auf den Fenstersensor reagieren.

        Mein Problem ist:
        Fenstersensor und stellen am Heizkörper synct perfekt. Aber wenn ich am VIS den Regler bediene, dann kann es durch den Touch passieren, dass man zwei Änderungen abschickt. Dann hat Heizkörper 1 z.B. 18 Grad also soll, gibt den an Heizkörper zwei weiter, und dann geht nochmal 19 Grad raus. Dann hat man zwei Temperaturen und drei Heizkörper im System, die sich gegenseitig immer wieder ändern bis der ganze Rassel zur Hölle fährt und abstürzt.

        Was ich versucht habe:
        Ich habs mit dem Baustein "binde Objekt" und mit eigener Logik mit Verzögerung versucht. Hier das Blockly )mit der eigenen Logik deaktiviert.) Zum probieren habe ich immer entweder die "Binde" Bausteine, oder das eigene deaktiviert. Daran liegts also nicht.

        
        BlocklyJavascriptTypeScriptRules
        Protokoll
        Ausgewählte Blöcke exportieren
        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
            <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
            <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
          </variables>
          <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
            <value name="VALUE">
              <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                <value name="VALUE">
                  <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                    <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                  </block>
                </value>
                <next>
                  <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    <value name="VALUE">
                      <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                        <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                      </block>
                    </value>
                    <next>
                      <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                        <field name="COMMENT">Küche</field>
                        <next>
                          <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <value name="OID0">
                              <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                                <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                              </shadow>
                              <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                              </block>
                            </value>
                            <statement name="STATEMENT">
                              <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                                <field name="COMMENT">Küche zu Ost</field>
                                <next>
                                  <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                    <field name="TYPE">false</field>
                                    <field name="CLEAR_RUNNING">TRUE</field>
                                    <value name="OID">
                                      <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                        <field name="oid">Object ID</field>
                                      </shadow>
                                      <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                      </block>
                                    </value>
                                    <value name="VALUE">
                                      <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                        <field name="BOOL">TRUE</field>
                                      </shadow>
                                      <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                      </block>
                                    </value>
                                    <value name="DELAY_MS">
                                      <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                        <field name="NUM">5</field>
                                      </shadow>
                                    </value>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
          <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
            <field name="COMMENT">Ost</field>
          </block>
          <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
            <field name="COMMENT">Süd</field>
          </block>
          <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
                <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
              </shadow>
              <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
              </block>
            </value>
            <statement name="STATEMENT">
              <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
                <field name="COMMENT">Süd zu Küche</field>
                <next>
                  <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                    <field name="TYPE">false</field>
                    <field name="CLEAR_RUNNING">TRUE</field>
                    <value name="OID">
                      <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                        <field name="oid">Object ID</field>
                      </shadow>
                      <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                      </block>
                    </value>
                    <value name="VALUE">
                      <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                        <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="DELAY_MS">
                      <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                        <field name="NUM">5</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
          </block>
          <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
            <field name="NUM">3000</field>
          </block>
          <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
            <field name="NUM">3000</field>
          </block>
          <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
                <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
              </shadow>
              <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <statement name="STATEMENT">
              <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
                <field name="COMMENT">Ost zu Süd</field>
                <next>
                  <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                    <field name="TYPE">false</field>
                    <field name="CLEAR_RUNNING">TRUE</field>
                    <value name="OID">
                      <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                        <field name="oid">Object ID</field>
                      </shadow>
                      <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="VALUE">
                      <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                        <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                      </block>
                    </value>
                    <value name="DELAY_MS">
                      <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                        <field name="NUM">5</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
          </block>
          <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
            <field name="ONLY_CHANGES">TRUE</field>
            <value name="OID_SRC">
              <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
                <field name="oid">Object ID 1</field>
              </shadow>
              <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
              </block>
            </value>
            <value name="OID_DST">
              <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
                <field name="oid">Object ID 2</field>
              </shadow>
              <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <next>
              <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
                <field name="ONLY_CHANGES">TRUE</field>
                <value name="OID_SRC">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 1</field>
                  </shadow>
                  <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                  </block>
                </value>
                <value name="OID_DST">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 2</field>
                  </shadow>
                  <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <next>
                  <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                    <field name="ONLY_CHANGES">TRUE</field>
                    <value name="OID_SRC">
                      <shadow type="field_oid">
                        <field name="oid">Object ID 1</field>
                      </shadow>
                      <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="OID_DST">
                      <shadow type="field_oid">
                        <field name="oid">Object ID 2</field>
                      </shadow>
                      <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                      </block>
                    </value>
                  </block>
                </next>
              </block>
            </next>
          </block>
          <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
            <field name="NUM">3000</field>
          </block>
        </xml>
        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
            <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
            <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
          </variables>
          <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
            <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
            <value name="VALUE">
              <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
              </block>
            </value>
            <next>
              <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                <value name="VALUE">
                  <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                    <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                  </block>
                </value>
                <next>
                  <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                    <value name="VALUE">
                      <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                        <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                      </block>
                    </value>
                    <next>
                      <block type="comment" id="D%$NUGPM}V$2tIWjtlmn">
                        <field name="COMMENT">Küche</field>
                        <next>
                          <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~" disabled="true">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <value name="OID0">
                              <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                                <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                              </shadow>
                              <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                              </block>
                            </value>
                            <statement name="STATEMENT">
                              <block type="comment" id="80_b4A)o3_$I=M6]$$2e">
                                <field name="COMMENT">Küche zu Ost</field>
                                <next>
                                  <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+">
                                    <field name="TYPE">false</field>
                                    <field name="CLEAR_RUNNING">TRUE</field>
                                    <value name="OID">
                                      <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                        <field name="oid">Object ID</field>
                                      </shadow>
                                      <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                      </block>
                                    </value>
                                    <value name="VALUE">
                                      <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                        <field name="BOOL">TRUE</field>
                                      </shadow>
                                      <block type="variables_get" id="GF1RF4*T+2Itnu=Fu*iB">
                                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                      </block>
                                    </value>
                                    <value name="DELAY_MS">
                                      <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                        <field name="NUM">5</field>
                                      </shadow>
                                    </value>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                </next>
              </block>
            </next>
          </block>
          <block type="comment" id="c?S0mV+us:@YTz{c#U#z" x="138" y="-287">
            <field name="COMMENT">Ost</field>
          </block>
          <block type="comment" id="n7^mC/R`k!zR-11TXuCY" x="463" y="-288">
            <field name="COMMENT">Süd</field>
          </block>
          <block type="on_ext" id="$dPI^%UPZ;FQo61,V)|m" disabled="true" x="638" y="-238">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="gn:DP}gbIfmrl`yD|s%*">
                <field name="oid">zigbee.0.b4e3f9fffe119f2f.current_heating_setpoint</field>
              </shadow>
              <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
              </block>
            </value>
            <statement name="STATEMENT">
              <block type="comment" id=".-xtP7%f%N@0tzscx}v*">
                <field name="COMMENT">Süd zu Küche</field>
                <next>
                  <block type="control_ex" id="s0/zO5__|w6t)9z8+rp^">
                    <field name="TYPE">false</field>
                    <field name="CLEAR_RUNNING">TRUE</field>
                    <value name="OID">
                      <shadow type="field_oid" id="Bans@pwgMfv=)6;a*[4K">
                        <field name="oid">Object ID</field>
                      </shadow>
                      <block type="variables_get" id="0/~pXH.B6bw+X9C:PU:d">
                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                      </block>
                    </value>
                    <value name="VALUE">
                      <shadow type="logic_boolean" id="^@DME$BR[Xi-#(2XI0)k">
                        <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="9i=5h,9o!EU~o9QX_amL">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="DELAY_MS">
                      <shadow type="math_number" id="-r]dlv9,E`373nIE7KKf">
                        <field name="NUM">5</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
          </block>
          <block type="math_number" id="qWY8B=l*dZ{3U;#~Ys-f" x="162" y="-12">
            <field name="NUM">3000</field>
          </block>
          <block type="math_number" id="j3wSU#CSQL*l0A[{s]1W" x="888" y="-12">
            <field name="NUM">3000</field>
          </block>
          <block type="on_ext" id="aoK6!!Iu}DG^B`;_+6eh" disabled="true" x="-162" y="62">
            <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
            <field name="CONDITION">ne</field>
            <field name="ACK_CONDITION"></field>
            <value name="OID0">
              <shadow type="field_oid" id="NQo}a/3YWQ:1nXrXc$#J">
                <field name="oid">zigbee.0.b4e3f9fffebd9bea.current_heating_setpoint</field>
              </shadow>
              <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <statement name="STATEMENT">
              <block type="comment" id="N0lwc^.RW-A`iz`*HIPY">
                <field name="COMMENT">Ost zu Süd</field>
                <next>
                  <block type="control_ex" id="D4K/Uv*kgzLm0j2YxxF5">
                    <field name="TYPE">false</field>
                    <field name="CLEAR_RUNNING">TRUE</field>
                    <value name="OID">
                      <shadow type="field_oid" id="D+=FI_WZlkPxW(piZ2Qu">
                        <field name="oid">Object ID</field>
                      </shadow>
                      <block type="variables_get" id="G51]sNW}5RUiuwHn+tJ?">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="VALUE">
                      <shadow type="logic_boolean" id="u4{N~R11~9jVL{Am#JMR">
                        <field name="BOOL">TRUE</field>
                      </shadow>
                      <block type="variables_get" id="/!;*Y3k,)6r{qEt*x9*$">
                        <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                      </block>
                    </value>
                    <value name="DELAY_MS">
                      <shadow type="math_number" id="ej4*:q/K~kj)$3(uHroO">
                        <field name="NUM">5</field>
                      </shadow>
                    </value>
                  </block>
                </next>
              </block>
            </statement>
          </block>
          <block type="direct" id="YwPUx1OTI$o8VmV:5ohU" x="413" y="138">
            <field name="ONLY_CHANGES">TRUE</field>
            <value name="OID_SRC">
              <shadow type="field_oid" id="*8-T:4Kna^-9zxXtA)Ft">
                <field name="oid">Object ID 1</field>
              </shadow>
              <block type="variables_get" id="!D}DRl:%T4v$Qv+zaY4c">
                <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
              </block>
            </value>
            <value name="OID_DST">
              <shadow type="field_oid" id="[z(+;]he|@((j?2]Jw;w">
                <field name="oid">Object ID 2</field>
              </shadow>
              <block type="variables_get" id="G]jP{4%;YMn,jauS,=bQ">
                <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
              </block>
            </value>
            <next>
              <block type="direct" id="d!|Z.@4i`RO3=U*I@bTS">
                <field name="ONLY_CHANGES">TRUE</field>
                <value name="OID_SRC">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 1</field>
                  </shadow>
                  <block type="variables_get" id="FvNN+fKokq0oD]TvA-!4">
                    <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                  </block>
                </value>
                <value name="OID_DST">
                  <shadow type="field_oid">
                    <field name="oid">Object ID 2</field>
                  </shadow>
                  <block type="variables_get" id="1%vZ_uG}3IV0fN9}uYA:">
                    <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                  </block>
                </value>
                <next>
                  <block type="direct" id="erj#K.[#w8lJ*.Fi4/aa">
                    <field name="ONLY_CHANGES">TRUE</field>
                    <value name="OID_SRC">
                      <shadow type="field_oid">
                        <field name="oid">Object ID 1</field>
                      </shadow>
                      <block type="variables_get" id="-k$}%B@=duC~hgsKZvsb">
                        <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                      </block>
                    </value>
                    <value name="OID_DST">
                      <shadow type="field_oid">
                        <field name="oid">Object ID 2</field>
                      </shadow>
                      <block type="variables_get" id="[~mCo[{%Yo.FY#=3C5%D">
                        <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                      </block>
                    </value>
                  </block>
                </next>
              </block>
            </next>
          </block>
          <block type="math_number" id=".8[UYKugdA{Uid{m~!4:" x="138" y="287">
            <field name="NUM">3000</field>
          </block>
        </xml>
        
        

        Hat jemand ne Idee wie man das abfängt? Weder eine Verzögerung, noch "lösche falls läuft" bringen die gewünschte Abhilfe. Das einzige was mir einfällt, ist beim Sender, also im VIS, zu verhindern, dass kurz nacheinander verschiedene Werte rausgehen. Aber das ist irgendwie auch unbefriedigend, ich hätte lieber die elegantere Lösung die den Empfänger fehlertolerant macht.

        Dankbar für jede Idee
        Steve

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

        @smo sagte: Hat jemand ne Idee wie man das abfängt?

        Man muss eine Trigger-Schleife verhindern, was durch die Abfrage des Trigger-Ursprungs erfolgen kann. Vorschlag:

        Blockly_temp.JPG

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
           <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
           <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
           <variable id="d|fQQ^z{.5`R~GJleE[U">idZiel1</variable>
           <variable id="~avL/#WiGg4U,4l5M5+L">idZiel2</variable>
         </variables>
         <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
           <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
           <value name="VALUE">
             <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
               <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
             </block>
           </value>
           <next>
             <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
               <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
               <value name="VALUE">
                 <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                   <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                 </block>
               </value>
               <next>
                 <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                   <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                   <value name="VALUE">
                     <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                       <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                     </block>
                   </value>
                   <next>
                     <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <value name="OID0">
                         <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                           <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                         </shadow>
                         <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                           <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                         </block>
                       </value>
                       <value name="OID1">
                         <shadow type="field_oid" id="uy;(g-Jex[e?@d9?h_]@">
                           <field name="oid">default</field>
                         </shadow>
                         <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                           <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                         </block>
                       </value>
                       <value name="OID2">
                         <shadow type="field_oid" id="J:G4DbTwRa)_X7ShcRnV">
                           <field name="oid">default</field>
                         </shadow>
                         <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                           <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                         </block>
                       </value>
                       <statement name="STATEMENT">
                         <block type="controls_if" id="oi*@RHmtQ{8m54wIwb[7">
                           <value name="IF0">
                             <block type="logic_compare" id="GAXt}vZ_/puqs=w9D{t9">
                               <field name="OP">NEQ</field>
                               <value name="A">
                                 <block type="on_source" id="^p7CtQ3=z}Fv!JBL:}|6">
                                   <field name="ATTR">state.from</field>
                                 </block>
                               </value>
                               <value name="B">
                                 <block type="text" id="$=8NvT]JGeg]dQX##U@3">
                                   <field name="TEXT">system.adapter.javascript.0</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="logic_switch_case" id=".h;5GTblOo.hLH`R;cq#">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" case="1" default="1"></mutation>
                               <value name="CONDITION">
                                 <block type="on_source" id="%[P7X^cdD^twDGYo@w]/">
                                   <field name="ATTR">id</field>
                                 </block>
                               </value>
                               <value name="CASECONDITION0">
                                 <block type="variables_get" id="Mgi]C=yW!W,z]xnt_cJw">
                                   <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                 </block>
                               </value>
                               <statement name="CASE0">
                                 <block type="variables_set" id="@lEY@(,h*MTSy:e{caEI">
                                   <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="t1PcK,}-Vzug_07*0Sgs">
                                       <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="4}Y3aRhQ].{x$*fr~Owv">
                                       <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                       <value name="VALUE">
                                         <block type="variables_get" id="OH!Fw#;8r$qP_@y5b!;L">
                                           <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                         </block>
                                       </value>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                               <value name="CASECONDITION1">
                                 <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                   <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                 </block>
                               </value>
                               <statement name="CASE1">
                                 <block type="variables_set" id="HW/iFSllX1%qK+G!o-gV">
                                   <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="qZVI[pTbd.qFfykJy$lf">
                                       <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="(Hfwzk)Nd#Zs#ZFY`^=|">
                                       <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                       <value name="VALUE">
                                         <block type="variables_get" id="N3DfM30dZIj]2{%s|WR0">
                                           <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                         </block>
                                       </value>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                               <statement name="ONDEFAULT">
                                 <block type="variables_set" id="dth`4:`=z]+0HiS*P|%;">
                                   <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="B-Vde1A]D,6w@^k#_5bq">
                                       <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="variables_set" id="WV,SGvU~}|:J;FR@HO@`">
                                       <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                       <value name="VALUE">
                                         <block type="variables_get" id="e,2/_qXR3v(S~ZDB:Q#y">
                                           <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                         </block>
                                       </value>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                               <next>
                                 <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+" inline="true">
                                   <field name="TYPE">false</field>
                                   <field name="CLEAR_RUNNING">FALSE</field>
                                   <value name="OID">
                                     <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                       <field name="oid">Object ID</field>
                                     </shadow>
                                     <block type="variables_get" id="f4#m[n3|OFPcq-0cuvX2">
                                       <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                     </block>
                                   </value>
                                   <value name="VALUE">
                                     <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                       <field name="BOOL">TRUE</field>
                                     </shadow>
                                     <block type="on_source" id="tc{BuczraO#{E-GtWH:~">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                   <value name="DELAY_MS">
                                     <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                       <field name="NUM">0</field>
                                     </shadow>
                                   </value>
                                   <next>
                                     <block type="control_ex" id="*8t)fh|aw6pOWtpC4#PW" inline="true">
                                       <field name="TYPE">false</field>
                                       <field name="CLEAR_RUNNING">FALSE</field>
                                       <value name="OID">
                                         <shadow type="field_oid">
                                           <field name="oid">Object ID</field>
                                         </shadow>
                                         <block type="variables_get" id="$wO;{`X9C?,n2q4a/iiq">
                                           <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                         </block>
                                       </value>
                                       <value name="VALUE">
                                         <shadow type="logic_boolean">
                                           <field name="BOOL">TRUE</field>
                                         </shadow>
                                         <block type="on_source" id="/f,=NCV*|v^xcO4[i_={">
                                           <field name="ATTR">state.val</field>
                                         </block>
                                       </value>
                                       <value name="DELAY_MS">
                                         <shadow type="math_number" id="n*d/SJvg$g)CYTW}0dD-">
                                           <field name="NUM">0</field>
                                         </shadow>
                                       </value>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
           </next>
         </block>
        </xml>
        

        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

        S 1 Reply Last reply
        1
        • paul53P paul53

          @smo sagte: Hat jemand ne Idee wie man das abfängt?

          Man muss eine Trigger-Schleife verhindern, was durch die Abfrage des Trigger-Ursprungs erfolgen kann. Vorschlag:

          Blockly_temp.JPG

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="xwP+E7r*%:9g!Q/8k!*u">Kueche</variable>
             <variable id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</variable>
             <variable id="LJYmQ224PvX(za_jPm!_">Stube-Sued</variable>
             <variable id="d|fQQ^z{.5`R~GJleE[U">idZiel1</variable>
             <variable id="~avL/#WiGg4U,4l5M5+L">idZiel2</variable>
           </variables>
           <block type="variables_set" id="}`|5T^zl8rrO05gh{9td" x="-162" y="-362">
             <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
             <value name="VALUE">
               <block type="field_oid" id="cVcm=hQi#;N[p(`f|saz">
                 <field name="oid">zigbee.0.84fd27fffea5aa76.current_heating_setpoint</field>
               </block>
             </value>
             <next>
               <block type="variables_set" id="D#=Oy8`3ZC$2p8z5,^*o">
                 <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                 <value name="VALUE">
                   <block type="field_oid" id=",dWvxR6VD`sHLg2K%Q1B">
                     <field name="oid">zigbee.0.84fd27fffea5a776.current_heating_setpoint</field>
                   </block>
                 </value>
                 <next>
                   <block type="variables_set" id=";`XS`L?KTPd/AWs0J:3~">
                     <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                     <value name="VALUE">
                       <block type="field_oid" id="Th$Wq$lmufG.x_qeP**b">
                         <field name="oid">zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint</field>
                       </block>
                     </value>
                     <next>
                       <block type="on_ext" id="rNCavHPQHqv[%LtqKZw~">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="]:K7sxy+Z1=fLir+S/O;">
                             <field name="oid">zigbee.0.b4e3f9fffe11af85.current_heating_setpoint</field>
                           </shadow>
                           <block type="variables_get" id="*QY%|A3{Okrmh2OMTG.*">
                             <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                           </block>
                         </value>
                         <value name="OID1">
                           <shadow type="field_oid" id="uy;(g-Jex[e?@d9?h_]@">
                             <field name="oid">default</field>
                           </shadow>
                           <block type="variables_get" id="P7vBCrFl8E]IT;tc4973">
                             <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                           </block>
                         </value>
                         <value name="OID2">
                           <shadow type="field_oid" id="J:G4DbTwRa)_X7ShcRnV">
                             <field name="oid">default</field>
                           </shadow>
                           <block type="variables_get" id="sxUf:.!$H]L8MEptV:iv">
                             <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                           </block>
                         </value>
                         <statement name="STATEMENT">
                           <block type="controls_if" id="oi*@RHmtQ{8m54wIwb[7">
                             <value name="IF0">
                               <block type="logic_compare" id="GAXt}vZ_/puqs=w9D{t9">
                                 <field name="OP">NEQ</field>
                                 <value name="A">
                                   <block type="on_source" id="^p7CtQ3=z}Fv!JBL:}|6">
                                     <field name="ATTR">state.from</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="text" id="$=8NvT]JGeg]dQX##U@3">
                                     <field name="TEXT">system.adapter.javascript.0</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="logic_switch_case" id=".h;5GTblOo.hLH`R;cq#">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" case="1" default="1"></mutation>
                                 <value name="CONDITION">
                                   <block type="on_source" id="%[P7X^cdD^twDGYo@w]/">
                                     <field name="ATTR">id</field>
                                   </block>
                                 </value>
                                 <value name="CASECONDITION0">
                                   <block type="variables_get" id="Mgi]C=yW!W,z]xnt_cJw">
                                     <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                   </block>
                                 </value>
                                 <statement name="CASE0">
                                   <block type="variables_set" id="@lEY@(,h*MTSy:e{caEI">
                                     <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="t1PcK,}-Vzug_07*0Sgs">
                                         <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id="4}Y3aRhQ].{x$*fr~Owv">
                                         <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                         <value name="VALUE">
                                           <block type="variables_get" id="OH!Fw#;8r$qP_@y5b!;L">
                                             <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <value name="CASECONDITION1">
                                   <block type="variables_get" id="cS=Esi8cP[@Xq7oe1w,0">
                                     <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                   </block>
                                 </value>
                                 <statement name="CASE1">
                                   <block type="variables_set" id="HW/iFSllX1%qK+G!o-gV">
                                     <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="qZVI[pTbd.qFfykJy$lf">
                                         <field name="VAR" id="LJYmQ224PvX(za_jPm!_">Stube-Sued</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id="(Hfwzk)Nd#Zs#ZFY`^=|">
                                         <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                         <value name="VALUE">
                                           <block type="variables_get" id="N3DfM30dZIj]2{%s|WR0">
                                             <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <statement name="ONDEFAULT">
                                   <block type="variables_set" id="dth`4:`=z]+0HiS*P|%;">
                                     <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="B-Vde1A]D,6w@^k#_5bq">
                                         <field name="VAR" id="xwP+E7r*%:9g!Q/8k!*u">Kueche</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="variables_set" id="WV,SGvU~}|:J;FR@HO@`">
                                         <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                         <value name="VALUE">
                                           <block type="variables_get" id="e,2/_qXR3v(S~ZDB:Q#y">
                                             <field name="VAR" id="i}L,KT[`hM%j=fb;7(]g">Stube-Ost</field>
                                           </block>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <next>
                                   <block type="control_ex" id="m8n(ez~Ih}c!g.tJCO_+" inline="true">
                                     <field name="TYPE">false</field>
                                     <field name="CLEAR_RUNNING">FALSE</field>
                                     <value name="OID">
                                       <shadow type="field_oid" id="CTD:j1@O(mDK$,v{Uh;c">
                                         <field name="oid">Object ID</field>
                                       </shadow>
                                       <block type="variables_get" id="f4#m[n3|OFPcq-0cuvX2">
                                         <field name="VAR" id="d|fQQ^z{.5`R~GJleE[U">idZiel1</field>
                                       </block>
                                     </value>
                                     <value name="VALUE">
                                       <shadow type="logic_boolean" id="+pi$o-3WYA;Hv-`7j^]p">
                                         <field name="BOOL">TRUE</field>
                                       </shadow>
                                       <block type="on_source" id="tc{BuczraO#{E-GtWH:~">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                     <value name="DELAY_MS">
                                       <shadow type="math_number" id="`-HY6@Y1WUq`#z6WzM@N">
                                         <field name="NUM">0</field>
                                       </shadow>
                                     </value>
                                     <next>
                                       <block type="control_ex" id="*8t)fh|aw6pOWtpC4#PW" inline="true">
                                         <field name="TYPE">false</field>
                                         <field name="CLEAR_RUNNING">FALSE</field>
                                         <value name="OID">
                                           <shadow type="field_oid">
                                             <field name="oid">Object ID</field>
                                           </shadow>
                                           <block type="variables_get" id="$wO;{`X9C?,n2q4a/iiq">
                                             <field name="VAR" id="~avL/#WiGg4U,4l5M5+L">idZiel2</field>
                                           </block>
                                         </value>
                                         <value name="VALUE">
                                           <shadow type="logic_boolean">
                                             <field name="BOOL">TRUE</field>
                                           </shadow>
                                           <block type="on_source" id="/f,=NCV*|v^xcO4[i_={">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="DELAY_MS">
                                           <shadow type="math_number" id="n*d/SJvg$g)CYTW}0dD-">
                                             <field name="NUM">0</field>
                                           </shadow>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
             </next>
           </block>
          </xml>
          

          S Offline
          S Offline
          Smo
          wrote on last edited by
          #4

          @paul53 Hmm. Das wird für mich immer unverständlicher. In "Objekte" bekomm ich als Absender der Änderungen zigbee.0 statt javascript.0 angezeigt, was ich ja noch nachvollziehen kann. zigbee.0 als Ursprung auszuschliessen ergibt aber keinen Effekt. Und würde es, wenn es denn funktionieren würde, nicht auch die Funktionalität "synce direkt am Thermostet vorgenommene Änderungen" killen?

          paul53P 1 Reply Last reply
          0
          • sigi234S sigi234

            @smo

            Warum nimmst du nicht HeatigControl?

            https://github.com/rg-engineering/ioBroker.heatingcontrol

            S Offline
            S Offline
            Smo
            wrote on last edited by
            #5

            @sigi234 Danke für den Tip. Ich würds gern selbst bauen, einfach um den ganzen Kram zu verstehen.

            1 Reply Last reply
            0
            • S Smo

              @paul53 Hmm. Das wird für mich immer unverständlicher. In "Objekte" bekomm ich als Absender der Änderungen zigbee.0 statt javascript.0 angezeigt, was ich ja noch nachvollziehen kann. zigbee.0 als Ursprung auszuschliessen ergibt aber keinen Effekt. Und würde es, wenn es denn funktionieren würde, nicht auch die Funktionalität "synce direkt am Thermostet vorgenommene Änderungen" killen?

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

              @smo sagte: zigbee.0 als Ursprung auszuschliessen ergibt aber keinen Effekt.

              Es muss javascript.0 ausgeschlossen werden, um eine Schleife zu verhindern (siehe Post).

              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

              S 1 Reply Last reply
              1
              • paul53P paul53

                @smo sagte: zigbee.0 als Ursprung auszuschliessen ergibt aber keinen Effekt.

                Es muss javascript.0 ausgeschlossen werden, um eine Schleife zu verhindern (siehe Post).

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

                @paul53 Irgendwas ist hier braun. javascript.0 ausschliessen hilft nix. Wenn ich in den Datenpunkt schaue, komme immer abwechslend javascript, web und zigbee als Absender. Aber selbst wenn ich alle drei ausschliesse, passierts dass die Temperatur beginnt zwischen zwei Werten zu springen wenn ich die nur schnell genug ändere

                paul53P 1 Reply Last reply
                0
                • S Smo

                  @paul53 Irgendwas ist hier braun. javascript.0 ausschliessen hilft nix. Wenn ich in den Datenpunkt schaue, komme immer abwechslend javascript, web und zigbee als Absender. Aber selbst wenn ich alle drei ausschliesse, passierts dass die Temperatur beginnt zwischen zwei Werten zu springen wenn ich die nur schnell genug ändere

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

                  @smo
                  Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

                  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

                  S 1 Reply Last reply
                  1
                  • paul53P paul53

                    @smo
                    Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

                    S Offline
                    S Offline
                    Smo
                    wrote on last edited by
                    #9

                    @paul53 Bitteschön:

                    var Kueche, Stube_Ost, Stube_Sued, idZiel1, idZiel2;
                    
                    
                    Kueche = 'zigbee.0.84fd27fffea5aa76.current_heating_setpoint';
                    Stube_Ost = 'zigbee.0.84fd27fffea5a776.current_heating_setpoint';
                    Stube_Sued = 'zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint';
                    on({id: new RegExp(Kueche + "$|" + Stube_Ost + "$|" + Stube_Sued + "$"), change: "ne"}, async function (obj) {
                        if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') {
                    
                        switch (obj.id) {
                        	case Kueche:
                          idZiel1 = Stube_Ost;
                          idZiel2 = Stube_Sued;
                    
                        		break;
                        	case Stube_Ost:
                          idZiel1 = Stube_Sued;
                          idZiel2 = Kueche;
                    
                        		break;
                        	default:
                          idZiel1 = Kueche;
                          idZiel2 = Stube_Ost;
                    
                        		break;
                        }
                        setStateDelayed(idZiel1, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
                        setStateDelayed(idZiel2, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
                      }
                    });
                    
                    paul53P 1 Reply Last reply
                    0
                    • S Smo

                      @paul53 Bitteschön:

                      var Kueche, Stube_Ost, Stube_Sued, idZiel1, idZiel2;
                      
                      
                      Kueche = 'zigbee.0.84fd27fffea5aa76.current_heating_setpoint';
                      Stube_Ost = 'zigbee.0.84fd27fffea5a776.current_heating_setpoint';
                      Stube_Sued = 'zigbee.0.cc86ecfffeb7ff1a.current_heating_setpoint';
                      on({id: new RegExp(Kueche + "$|" + Stube_Ost + "$|" + Stube_Sued + "$"), change: "ne"}, async function (obj) {
                          if ((obj.state ? obj.state.from : "") != 'system.adapter.javascript.0') {
                      
                          switch (obj.id) {
                          	case Kueche:
                            idZiel1 = Stube_Ost;
                            idZiel2 = Stube_Sued;
                      
                          		break;
                          	case Stube_Ost:
                            idZiel1 = Stube_Sued;
                            idZiel2 = Kueche;
                      
                          		break;
                          	default:
                            idZiel1 = Kueche;
                            idZiel2 = Stube_Ost;
                      
                          		break;
                          }
                          setStateDelayed(idZiel1, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
                          setStateDelayed(idZiel2, (obj.state ? obj.state.val : ""), false, parseInt(((0) || "").toString(), 10), false);
                        }
                      });
                      
                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by paul53
                      #10

                      @smo
                      Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 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

                      S 2 Replies Last reply
                      1
                      • paul53P paul53

                        @smo
                        Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 0?

                        S Offline
                        S Offline
                        Smo
                        wrote on last edited by
                        #11

                        @paul53 Nein, funktioniert nicht. Und ja, javascript.0. Hab auch nur die eine. Ich hab mal schnell ne VIS zamgeklickt und ein Video gemacht: https://streamable.com/61tw6d Am Anfang ändere ich die Temperatur langsam, da gehts. dann klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                        paul53P 1 Reply Last reply
                        0
                        • paul53P paul53

                          @smo
                          Danke. Es funktioniert so nicht? Das Skript läuft unter der Javascript-Instanz 0?

                          S Offline
                          S Offline
                          Smo
                          wrote on last edited by
                          #12

                          @paul53 Noch ein verwackeltes von den Eigenschaften des Datenpunktes https://streamable.com/51doj1

                          1 Reply Last reply
                          0
                          • S Smo

                            @paul53 Nein, funktioniert nicht. Und ja, javascript.0. Hab auch nur die eine. Ich hab mal schnell ne VIS zamgeklickt und ein Video gemacht: https://streamable.com/61tw6d Am Anfang ändere ich die Temperatur langsam, da gehts. dann klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

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

                            @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                            Dann verzögere mal, bis der Wert stabil ist.

                            Bild_2022-04-24_153009270.png

                            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

                            S 2 Replies Last reply
                            1
                            • paul53P paul53

                              @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                              Dann verzögere mal, bis der Wert stabil ist.

                              Bild_2022-04-24_153009270.png

                              S Offline
                              S Offline
                              Smo
                              wrote on last edited by
                              #14

                              @paul53 Jetzt wirds wild. Jetzt updatet er logischerweise nicht mehr, aber das Thermostat auf den der Regler im VIS wirkt springt hin und her. Also beeinflussen sich die drei wahrscheinlich gar nicht so dass sie sich aufschaukeln, sondern der Fehler liegt weiter vorn. Nur wo? Vom VIS ausgehen kanns ja eigentlich nicht, oder? Das schreibt doch einfach den Wert in den DP, und dann ists gut.

                              1 Reply Last reply
                              0
                              • paul53P paul53

                                @smo sagte: klicke ich schneller, und dann wirds wild, dann springts immer hin und her.

                                Dann verzögere mal, bis der Wert stabil ist.

                                Bild_2022-04-24_153009270.png

                                S Offline
                                S Offline
                                Smo
                                wrote on last edited by
                                #15

                                @paul53 Kommando zurück: Verzögerung scheint zu helfen. Das Vis buffert scheinbar nur die Eingaben, und da man, um das ausulösen paar mal schnell den Wert ändern muss, sah es so aus, ald würds springen. Hörte dann aber wieder auf, und wurde nicht immer schneller bis zum Absturz wie vorher.

                                Great SUNG 1 Reply Last reply
                                0
                                • S Smo

                                  @paul53 Kommando zurück: Verzögerung scheint zu helfen. Das Vis buffert scheinbar nur die Eingaben, und da man, um das ausulösen paar mal schnell den Wert ändern muss, sah es so aus, ald würds springen. Hörte dann aber wieder auf, und wurde nicht immer schneller bis zum Absturz wie vorher.

                                  Great SUNG Offline
                                  Great SUNG Offline
                                  Great SUN
                                  wrote on last edited by
                                  #16

                                  @smo @paul53

                                  Das mit dem Verzögern halte ich auch für Sinnvoll. Im JS würde ich das in etwa so machen:
                                  Erstmal entweder mit $() die Heizkörpergruppe selektieren, oder, wenn das nicht geht, die ID's in einem json Objekt hinterlegen. Dann für alle den Gleichen on request machen:

                                  function changeGroupObject(sourceObjId, groupObjListId, settingsJson) {
                                      for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                          var currVal = getState(sourceObjId + '.' + settingId).val;
                                         if(currVal != settingVal) {
                                             console.log('setting changed after call, ignoring request');
                                             return;
                                         }
                                     }
                                     var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                                     for(const destObjId of groupObjIdArr) {
                                         if(destObjId == sourceObjId) {
                                             continue;
                                         }
                                         for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                             setState(destObjId + '.' + settingId, settingVal);
                                         }
                                  }
                                  var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                                  var syncSettingArr = ['STATE.temperature', 'STATE.windowopen'];
                                  for(const destObjId of groupObjIdArr) {
                                      for(const settingId of syncSettingArr) {
                                          on({id: destObjId + '.' + settingId, change: 'ne'}, async function(obj) {
                                              setTimeout(function () { changeGroupObject(destObjId, groupObjListId, {settingId: obj.state.val});. 2000); // 2sec, könnte man drüber nachdenken, das zu ändern ;-)
                                          })
                                      }
                                  }
                                  

                                  Mit dem Code oben könnte man von der Basis her auch noch verschiedene Werte gleichzeitig prüfen und verändern, so dass bei mehreren Änderungen nur ein setState aufgerufen werden muss pro Gerät/Eigenschaft.

                                  Ich hoffe, das hilft Dir evtl. etwas ;-)

                                  S 1 Reply Last reply
                                  1
                                  • Great SUNG Great SUN

                                    @smo @paul53

                                    Das mit dem Verzögern halte ich auch für Sinnvoll. Im JS würde ich das in etwa so machen:
                                    Erstmal entweder mit $() die Heizkörpergruppe selektieren, oder, wenn das nicht geht, die ID's in einem json Objekt hinterlegen. Dann für alle den Gleichen on request machen:

                                    function changeGroupObject(sourceObjId, groupObjListId, settingsJson) {
                                        for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                            var currVal = getState(sourceObjId + '.' + settingId).val;
                                           if(currVal != settingVal) {
                                               console.log('setting changed after call, ignoring request');
                                               return;
                                           }
                                       }
                                       var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                                       for(const destObjId of groupObjIdArr) {
                                           if(destObjId == sourceObjId) {
                                               continue;
                                           }
                                           for(const [settingId, settingVal] of Object.entries(settingsJson)) {
                                               setState(destObjId + '.' + settingId, settingVal);
                                           }
                                    }
                                    var groupObjIdArr = JSON.parse(getState(groupObjListId).val);
                                    var syncSettingArr = ['STATE.temperature', 'STATE.windowopen'];
                                    for(const destObjId of groupObjIdArr) {
                                        for(const settingId of syncSettingArr) {
                                            on({id: destObjId + '.' + settingId, change: 'ne'}, async function(obj) {
                                                setTimeout(function () { changeGroupObject(destObjId, groupObjListId, {settingId: obj.state.val});. 2000); // 2sec, könnte man drüber nachdenken, das zu ändern ;-)
                                            })
                                        }
                                    }
                                    

                                    Mit dem Code oben könnte man von der Basis her auch noch verschiedene Werte gleichzeitig prüfen und verändern, so dass bei mehreren Änderungen nur ein setState aufgerufen werden muss pro Gerät/Eigenschaft.

                                    Ich hoffe, das hilft Dir evtl. etwas ;-)

                                    S Offline
                                    S Offline
                                    Smo
                                    wrote on last edited by
                                    #17

                                    @great-sun Ehrlich gesagt, ich guck da rein wie die Sau ins Uhrwerk. Zu modernes Zeugs für mich. Ich kann Bourne Shell und bissel awk, dann hörts auf :) Drum bin ich ganz dankbar für Blockly, auch wenn man sich da auch manchmal fragt... :) Trotzdem vielen Dank, und auch @paul53 nochmal. Funktioniert alles, und ich bin wieder bissel schlauer.

                                    Great SUNG 1 Reply Last reply
                                    0
                                    • S Smo

                                      @great-sun Ehrlich gesagt, ich guck da rein wie die Sau ins Uhrwerk. Zu modernes Zeugs für mich. Ich kann Bourne Shell und bissel awk, dann hörts auf :) Drum bin ich ganz dankbar für Blockly, auch wenn man sich da auch manchmal fragt... :) Trotzdem vielen Dank, und auch @paul53 nochmal. Funktioniert alles, und ich bin wieder bissel schlauer.

                                      Great SUNG Offline
                                      Great SUNG Offline
                                      Great SUN
                                      wrote on last edited by
                                      #18

                                      @smo Ich habe im Grunde das setzen der Werte ausgelagert und aus der Gruppenkonfiguration heraus einen onChange Listener gebaut, der auf alle Werte lauscht, die Du synchronisieren willst.

                                      Jede Änderung an den Werten eines Gruppenmitglieds führt dazu, dass der Code separat einen Timer mit 2sec anwirft, der dann nach den 2sec eine Funktion aufruft, die prüft, ob der/die Wert(e) sich seit dem Aufruf verändert haben. Ist dem der Fall, macht sie gar nichts.
                                      So umgeht man das setzen der Werte egal wie die Zeitliche Abfolge aussieht und ob da irgendwo zwischendrin etwas hängt oder so, denn nur wenn der Wert sich seit dem Aufruf nicht verändert hat (2sec), wird auch etwas synchronisiert.
                                      Solltest Du also zum Beispiel einen Wert versehentlich ändern und binnen 2sec wieder zurück setzen, passiert nichts.

                                      S 1 Reply Last reply
                                      0
                                      • H Offline
                                        H Offline
                                        hm_krause
                                        wrote on last edited by
                                        #19

                                        @great-sun

                                        Hallo,
                                        kannst Du mir bitte Dein Script zur Verfügung stellen.
                                        Würde das gern mal nachbauen wollen.
                                        MfG

                                        Great SUNG 1 Reply Last reply
                                        0
                                        • H hm_krause

                                          @great-sun

                                          Hallo,
                                          kannst Du mir bitte Dein Script zur Verfügung stellen.
                                          Würde das gern mal nachbauen wollen.
                                          MfG

                                          Great SUNG Offline
                                          Great SUNG Offline
                                          Great SUN
                                          wrote on last edited by
                                          #20

                                          @hm_krause Ich hab alles, was ich dazu geschrieben habe bis jetzt direkt hier geschrieben, aber ich kann Dir gerne mal eine Einführung in das geben, was ich sonst so schreibe, oder das script mit Dir zusammen für Dich machen.

                                          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

                                          325

                                          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