Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [gelöst] Schaltzustand Verzögern

NEWS

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    5
    1
    137

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    8
    1
    170

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    871

[gelöst] Schaltzustand Verzögern

Scheduled Pinned Locked Moved Blockly
262 Posts 4 Posters 25.7k Views 2 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.
  • AphofisA Aphofis

    Entwarnung.
    Die verrückten Dosierwerte sind entstanden, da sich die Plus Leitung im Verteiler gelöst hatte.
    dh. ich werde die Tage den Verteiler der mit Schraubklemmen ist austauschen gegen eine Platine und das alle Kabel die
    an das Sammel Plus gehen auf der Platine verlöten und die Schraubklemme raus werfen.
    Nachdem ich das Plus Kabel vom Magnet Ventil eine neue Ader endhülse drauf gequetscht hatte, läuft die dosierung wieder Tadellos.
    Lag also nicht an der Steuerung siondern nur an der Hardware.

    AphofisA Offline
    AphofisA Offline
    Aphofis
    wrote on last edited by
    #251

    @paul53
    Mahlzeit, sag mal ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !? Da das Vlies unten im Wasser an den umlenken Wellen kleben bleibt dreht der Motor das Vlies nicht weiter somit muss das Vlies kontinuierlich gedreht werden! Um zu verhindern das es fest klebt und ich es von Hand ständig lösen muss

    paul53P 1 Reply Last reply
    0
    • AphofisA Aphofis

      @paul53
      Mahlzeit, sag mal ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !? Da das Vlies unten im Wasser an den umlenken Wellen kleben bleibt dreht der Motor das Vlies nicht weiter somit muss das Vlies kontinuierlich gedreht werden! Um zu verhindern das es fest klebt und ich es von Hand ständig lösen muss

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

      @Aphofis sagte:

      ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

      Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

      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

      AphofisA 2 Replies Last reply
      0
      • paul53P paul53

        @Aphofis sagte:

        ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

        Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

        AphofisA Offline
        AphofisA Offline
        Aphofis
        wrote on last edited by
        #253

        @paul53 nein das auf keinen Fall!
        Ich poste dir mal das JavaScript und die dazugehörigen datenpunkte
        Wenn ich es mal schaffe zu Hause zu sein 😧

        1 Reply Last reply
        0
        • paul53P paul53

          @Aphofis sagte:

          ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

          Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

          AphofisA Offline
          AphofisA Offline
          Aphofis
          wrote on last edited by Aphofis
          #254

          @paul53

          So also Das hattest du programmiert, Da soll der Vliesfilter raus! Die Osmose soll so bleiben, die Osmose Steuerung läuft perfekt.
          Desweiteren, ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

          Aqua_Control.0.Osmose_System.Osmose.Restzeit
          

          bezügich des multiplikators fur das Vlies muss ich den Zettel suchen wo ich die berechnung drauf habe. Ich weiß leider nihct mehr was für eine Maßeinheit der multiplikator ist. Ich glaube das waren die ms pro mm bzw mm pro ms! ich weiß es nur nicht mehr genau.
          Der Vliesfilter soll dann alle 30 min einen Cm laufen. Tausche Heute die angerosteten Edelstahl Wellen für die Vlies Umlenkung gegen Kunstoff Wellen und dann sollte es klappen nur will ich trotzdem das dass Vlies regelmäßig läuft.
          In der Programmierung muss es aber so laufen das nur wenn Vliesfilter Schwimmer Normal true ist das nur dann Motor true sein kann weil die minus Leitung über diesen Schwimmer läuft.

          const idRestzeit = 'Osmose.Restzeit';
          const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
          const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
          
          createState(idRestzeit, 300, {type: 'number', unit: 's'});
          
          var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
          var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
          var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
          
          function Magnetventil_Ein() {
            if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
              Magnetventil_Kontrolle = setInterval(function () {
                if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                  Restzeit--;
                  setState(idRestzeit, 2 * Restzeit, true);
                } else {
                  setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  clearInterval(Magnetventil_Kontrolle); 
                  Magnetventil_Kontrolle = null;
                }
              }, 2000);
              setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
            }
          }
          
          // Skripstart
          setTimeout(function() {
              Restzeit = getState(idRestzeit).val / 2;
              if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
              else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
          }, 200);
          var entprell = null;
          on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
            log('Schwimmer: ' + obj.state.val)
            if(entprell) {
              clearTimeout(entprell);
              entprell = null;
            }  
            entprell = setTimeout(function() {
              Schwimmer = obj.state.val;
              if(Schwimmer) Magnetventil_Ein();
              else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
            }, 2000); // 2 s 
          });
          
          schedule("0 0 * * *", function () {
            Restzeit = 150;
            setState(idRestzeit, 300, true);
            if(Schwimmer) Magnetventil_Ein();
          });
          
          on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
            if (obj.state.val) {
              timeout_aus = setTimeout(function () {
                Osmosefreigabe = false;  
                setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
              }, 5000);
              if (timeout_ein) {
                  clearTimeout(timeout_ein); 
                  timeout_ein = null;
              }
            } else {
              timeout_ein = setTimeout(function () {
                Osmosefreigabe = true;
                if(Schwimmer) Magnetventil_Ein();           
                setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
              }, 10000);
              if (timeout_aus) {
                  clearTimeout(timeout_aus); 
                  timeout_aus = null;
              }
            }
          });
           
          on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
            var txt;  
            if (obj.state.val) txt = text_ein;   
            else txt = text_aus;   
            sendTo("telegram.0", "send", {
              text: txt
            });
            log(txt);
          });
          

          03.png 02.png 01.png

          paul53P 1 Reply Last reply
          0
          • AphofisA Aphofis

            @paul53

            So also Das hattest du programmiert, Da soll der Vliesfilter raus! Die Osmose soll so bleiben, die Osmose Steuerung läuft perfekt.
            Desweiteren, ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

            Aqua_Control.0.Osmose_System.Osmose.Restzeit
            

            bezügich des multiplikators fur das Vlies muss ich den Zettel suchen wo ich die berechnung drauf habe. Ich weiß leider nihct mehr was für eine Maßeinheit der multiplikator ist. Ich glaube das waren die ms pro mm bzw mm pro ms! ich weiß es nur nicht mehr genau.
            Der Vliesfilter soll dann alle 30 min einen Cm laufen. Tausche Heute die angerosteten Edelstahl Wellen für die Vlies Umlenkung gegen Kunstoff Wellen und dann sollte es klappen nur will ich trotzdem das dass Vlies regelmäßig läuft.
            In der Programmierung muss es aber so laufen das nur wenn Vliesfilter Schwimmer Normal true ist das nur dann Motor true sein kann weil die minus Leitung über diesen Schwimmer läuft.

            const idRestzeit = 'Osmose.Restzeit';
            const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
            const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
            
            createState(idRestzeit, 300, {type: 'number', unit: 's'});
            
            var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
            var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
            var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
            
            function Magnetventil_Ein() {
              if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                Magnetventil_Kontrolle = setInterval(function () {
                  if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                    Restzeit--;
                    setState(idRestzeit, 2 * Restzeit, true);
                  } else {
                    setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                    clearInterval(Magnetventil_Kontrolle); 
                    Magnetventil_Kontrolle = null;
                  }
                }, 2000);
                setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
              }
            }
            
            // Skripstart
            setTimeout(function() {
                Restzeit = getState(idRestzeit).val / 2;
                if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
            }, 200);
            var entprell = null;
            on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
              log('Schwimmer: ' + obj.state.val)
              if(entprell) {
                clearTimeout(entprell);
                entprell = null;
              }  
              entprell = setTimeout(function() {
                Schwimmer = obj.state.val;
                if(Schwimmer) Magnetventil_Ein();
                else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
              }, 2000); // 2 s 
            });
            
            schedule("0 0 * * *", function () {
              Restzeit = 150;
              setState(idRestzeit, 300, true);
              if(Schwimmer) Magnetventil_Ein();
            });
            
            on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
              if (obj.state.val) {
                timeout_aus = setTimeout(function () {
                  Osmosefreigabe = false;  
                  setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                  setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                }, 5000);
                if (timeout_ein) {
                    clearTimeout(timeout_ein); 
                    timeout_ein = null;
                }
              } else {
                timeout_ein = setTimeout(function () {
                  Osmosefreigabe = true;
                  if(Schwimmer) Magnetventil_Ein();           
                  setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                }, 10000);
                if (timeout_aus) {
                    clearTimeout(timeout_aus); 
                    timeout_aus = null;
                }
              }
            });
             
            on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
              var txt;  
              if (obj.state.val) txt = text_ein;   
              else txt = text_aus;   
              sendTo("telegram.0", "send", {
                text: txt
              });
              log(txt);
            });
            

            03.png 02.png 01.png

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

            @Aphofis sagte:

            Da soll der Vliesfilter raus!

            Ich kann in dem Script keine Vliesfilter-Steuerung finden.

            @Aphofis sagte in [gelöst] Schaltzustand Verzögern:

            ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

            Ja, dann muss die ID im Script geändert werden, das createState(idRestzeit) muss raus und der Datenpunkt muss manuell erzeugt werden.

            const idRestzeit = 'Aqua_Control.0.Osmose_System.Osmose.Restzeit';
            const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
            const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
             
            // createState(idRestzeit, 300, {type: 'number', unit: 's'}); // Muss manuell erstellt werden
            

            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

            AphofisA 1 Reply Last reply
            0
            • paul53P paul53

              @Aphofis sagte:

              Da soll der Vliesfilter raus!

              Ich kann in dem Script keine Vliesfilter-Steuerung finden.

              @Aphofis sagte in [gelöst] Schaltzustand Verzögern:

              ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

              Ja, dann muss die ID im Script geändert werden, das createState(idRestzeit) muss raus und der Datenpunkt muss manuell erzeugt werden.

              const idRestzeit = 'Aqua_Control.0.Osmose_System.Osmose.Restzeit';
              const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
              const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
               
              // createState(idRestzeit, 300, {type: 'number', unit: 's'}); // Muss manuell erstellt werden
              
              AphofisA Offline
              AphofisA Offline
              Aphofis
              wrote on last edited by Aphofis
              #256

              @paul53
              Das schon mal einfach!
              Hattenst du beim Programmieren nihct diese beiden Steuerungen zusammen gelegt!?
              Dann muss ich noch mal gucken und dann weiß ich vllt auch warum der Vliesfilter nicht läuft. Da keine Steuerung dafür aktiv ist.
              Dann ist das wohl die Vliesfilter Steuerung!
              Die war die ganze Zeit nihct aktiv! egal ich möchte trotzdem das die dann jede halbe stunde X ms läuft wenn schwimmer vlieafilter true sonst gehts eh nicht.

              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="jelrI7)a+8oXZV(*|VPG">schwimmer</variable>
                  <variable id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</variable>
                  <variable id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</variable>
                  <variable type="undefined" id="Intervall">Intervall</variable>
                  <variable type="timeout" id="timeout">timeout</variable>
                </variables>
                <block type="comment" id="5z}DP4%./aV[wt`Fx4$t" x="-2013" y="-787">
                  <field name="COMMENT">Vlies Schwimmer normal</field>
                  <next>
                    <block type="variables_set" id="q^$BreH*yiE%[?k6w~Cu">
                      <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                      <value name="VALUE">
                        <block type="get_value" id="[z_,Lk{/T{ix%}b/^$WM">
                          <field name="ATTR">val</field>
                          <field name="OID">sonoff.0.Aqua_Float.POWER3</field>
                        </block>
                      </value>
                      <next>
                        <block type="variables_set" id="54%k%%U$jnaK1m1E.%SH">
                          <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                          <value name="VALUE">
                            <block type="math_arithmetic" id="@jS^)bBYfX#1dH:D1kdH">
                              <field name="OP">DIVIDE</field>
                              <value name="A">
                                <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="q!^ViYZx3LnzVq1kp_Za">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="q^Na^3~X:M*%vFn_~M82">
                                  <field name="ATTR">val</field>
                                  <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="S7Sc+~JrKqP70}B!6YdK">
                                  <field name="NUM">2</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="on_ext" id=".C1d#(gWIO$3af%qZpd=">
                              <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="ao*zhM3bl`?#R.|56@u2">
                                  <field name="oid">sonoff.0.Aqua_Float.POWER3</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="timeouts_cleartimeout" id="JsI0fYRACRn|cg%P`lFp">
                                  <field name="NAME">schwimmer</field>
                                  <next>
                                    <block type="timeouts_settimeout" id="N#We))|a%fz}L[Q+Cx^q">
                                      <field name="NAME">timeout</field>
                                      <field name="DELAY">5</field>
                                      <field name="UNIT">sec</field>
                                      <statement name="STATEMENT">
                                        <block type="variables_set" id="DBP2g$aqWChGwu[v*4!%">
                                          <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                          <value name="VALUE">
                                            <block type="on_source" id="K11}(or[Z:OS!(#vxqHG">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="procedures_callnoreturn" id="PS|Lsb]Ll|M)1A-*=;MW">
                                              <mutation name="Vliesmotor"></mutation>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                              <next>
                                <block type="schedule" id="(1I$6}V5IN*70(H;=,o%">
                                  <field name="SCHEDULE">0 0 * * *</field>
                                  <statement name="STATEMENT">
                                    <block type="variables_set" id="{)f?@KVtoNY|AFCWejAB">
                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                      <value name="VALUE">
                                        <block type="math_number" id="Rqh{,?m@M#5bO:hk2qxN">
                                          <field name="NUM">20</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="update" id="+r+/i.Ri,fl}QCeX@?61">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="math_number" id="]lwb)]#RcLa^7jMqMB77">
                                              <field name="NUM">40</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="procedures_callnoreturn" id="4]}?^U%FVW-Xhma?(A5M">
                                              <mutation name="Vliesmotor"></mutation>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                  <next>
                                    <block type="variables_set" id=",QNrt-4CE4Oj^jIk#,;Y">
                                      <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                      <value name="VALUE">
                                        <block type="get_value" id=")/E%PW9T*{q`1g=Um8*F">
                                          <field name="ATTR">val</field>
                                          <field name="OID">sonoff.0.Aqua_Float.POWER5</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="comment" id="bHD/a9YVFg5@jtgL}RAZ">
                                          <field name="COMMENT">Vlies Schwimmer max</field>
                                          <next>
                                            <block type="on_ext" id="*GLxbq=Y5W/kt`Ec^_^8">
                                              <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=":`a*puT#US*_u;?L/x6J">
                                                  <field name="oid">sonoff.0.Aqua_Float.POWER5</field>
                                                </shadow>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="variables_set" id="|?HCwmG:!WSA]G_SW,bk">
                                                  <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                  <value name="VALUE">
                                                    <block type="on_source" id="2JAIjy|oUz(g|A5~5NZK">
                                                      <field name="ATTR">state.val</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="controls_if" id="_6.CXzT9uKZMv|AhD2pB">
                                                      <value name="IF0">
                                                        <block type="variables_get" id="bGVV|MyBeYczZ:[4nke5">
                                                          <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="control" id="V1h::i|*Z}0C,x,4n[h[">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="logic_boolean" id="?1XtN^D4|o#2R(0I)]46">
                                                              <field name="BOOL">FALSE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="procedures_callnoreturn" id="4SLh!G5#1BX1Fr=Gc:)G">
                                                          <mutation name="Vliesmotor"></mutation>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="procedures_callnoreturn" id="SwYioD-vCN,({DQT,nlx">
                                                  <mutation name="Vliesmotor"></mutation>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
                <block type="procedures_defnoreturn" id="~}wgr=#9IHto`oZ`1i[U" x="-1512" y="-687">
                  <field name="NAME">Vliesmotor</field>
                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  <statement name="STACK">
                    <block type="controls_if" id="qK^.hb={2:@M!ZVgr,,u">
                      <mutation elseif="1"></mutation>
                      <value name="IF0">
                        <block type="logic_operation" id="[P$,D8~!C1S-}Qc-W#F2">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="variables_get" id="NzRA^q(PS(^dxlh?Hz=`">
                              <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_negate" id="l#n/c,qraF+Y1Tx?C@JA">
                              <value name="BOOL">
                                <block type="variables_get" id="_M:.mt0cg%g*o6:2k*18">
                                  <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="controls_if" id="QywEwMFYFf*jv=~RG:hi">
                          <value name="IF0">
                            <block type="logic_operation" id="xx=Q]8#5BOXA?;HAZ|/Q">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_negate" id="_{hS@M9pcc_|dL-|wHIe">
                                  <value name="BOOL">
                                    <block type="variables_get" id="!lSD/;w.BC6Zye$P;+qB">
                                      <field name="VAR" id="Intervall" variabletype="undefined">Intervall</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="JbQbvT#3JW.9fVGJXtMe">
                                  <field name="OP">GTE</field>
                                  <value name="A">
                                    <block type="variables_get" id="qM,NQ2t^P6}UJ1c+OQ`P">
                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="U=ZFPYpxi`%vn%M4zaBe">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="S$_E~?+C|0xeaXoh_M8M">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="%02%L=N?!^~efNZ}mSgv">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                              <next>
                                <block type="timeouts_setinterval" id="54}UC3}t@D?RM1+Z792o">
                                  <field name="NAME">Intervall</field>
                                  <field name="INTERVAL">5</field>
                                  <field name="UNIT">sec</field>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="(~Q|}=ic+sA#`@!Ma`~L">
                                      <mutation else="1"></mutation>
                                      <value name="IF0">
                                        <block type="logic_operation" id="A46f$uvOO-y~k${W6yj6">
                                          <field name="OP">AND</field>
                                          <value name="A">
                                            <block type="logic_compare" id="bpC5nI2I}O}Z#O{kySt_">
                                              <field name="OP">GT</field>
                                              <value name="A">
                                                <block type="variables_get" id="xk]/(@DMWUBgU#z6:]qZ">
                                                  <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="yO,,$wcKnI|3dJ-tuyV}">
                                                  <field name="NUM">0</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="variables_get" id="BSK6e#C8r)693?3tm_%s">
                                              <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="math_change" id="E`-ssA;X9+940MYh/jC~">
                                          <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                          <value name="DELTA">
                                            <shadow type="math_number" id="|SPdtjyTRk*g7kpbX@yh">
                                              <field name="NUM">-1</field>
                                            </shadow>
                                          </value>
                                          <next>
                                            <block type="update" id="e?4*zw6JeufCUI_A$tWA">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="math_arithmetic" id="?(V0m_KR;zq]8QN4Nnt}">
                                                  <field name="OP">MULTIPLY</field>
                                                  <value name="A">
                                                    <shadow type="math_number" id="e-o]eN1KmMjXLGYbB5*-">
                                                      <field name="NUM">2</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="B">
                                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Jab%cXU;kqAhB|kiv+HG">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="variables_get" id="x3#fOwJi8qvpU_aB}+Qo">
                                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                      <statement name="ELSE">
                                        <block type="control" id=";ZPsI~I3!y;|Bll.nZi]">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="GV}0dox+Wzn)9/ho1)jJ">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="timeouts_clearinterval" id=".JS+sd^HrJ:7@PT?;b1@">
                                              <field name="NAME">Intervall</field>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="get_value" id="#Hsff,HhVj3Er3x^t0d{">
                          <field name="ATTR">val</field>
                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="control" id="4|Vz)`RbK!({%B#^yBT@">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="(F=#.PC)sS-H0v;,Jq$U">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </xml>
              
              AphofisA 1 Reply Last reply
              0
              • AphofisA Aphofis

                @paul53
                Das schon mal einfach!
                Hattenst du beim Programmieren nihct diese beiden Steuerungen zusammen gelegt!?
                Dann muss ich noch mal gucken und dann weiß ich vllt auch warum der Vliesfilter nicht läuft. Da keine Steuerung dafür aktiv ist.
                Dann ist das wohl die Vliesfilter Steuerung!
                Die war die ganze Zeit nihct aktiv! egal ich möchte trotzdem das die dann jede halbe stunde X ms läuft wenn schwimmer vlieafilter true sonst gehts eh nicht.

                <xml xmlns="https://developers.google.com/blockly/xml">
                  <variables>
                    <variable id="jelrI7)a+8oXZV(*|VPG">schwimmer</variable>
                    <variable id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</variable>
                    <variable id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</variable>
                    <variable type="undefined" id="Intervall">Intervall</variable>
                    <variable type="timeout" id="timeout">timeout</variable>
                  </variables>
                  <block type="comment" id="5z}DP4%./aV[wt`Fx4$t" x="-2013" y="-787">
                    <field name="COMMENT">Vlies Schwimmer normal</field>
                    <next>
                      <block type="variables_set" id="q^$BreH*yiE%[?k6w~Cu">
                        <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                        <value name="VALUE">
                          <block type="get_value" id="[z_,Lk{/T{ix%}b/^$WM">
                            <field name="ATTR">val</field>
                            <field name="OID">sonoff.0.Aqua_Float.POWER3</field>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id="54%k%%U$jnaK1m1E.%SH">
                            <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                            <value name="VALUE">
                              <block type="math_arithmetic" id="@jS^)bBYfX#1dH:D1kdH">
                                <field name="OP">DIVIDE</field>
                                <value name="A">
                                  <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="q!^ViYZx3LnzVq1kp_Za">
                                    <field name="NUM">1</field>
                                  </shadow>
                                  <block type="get_value" id="q^Na^3~X:M*%vFn_~M82">
                                    <field name="ATTR">val</field>
                                    <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <shadow type="math_number" id="S7Sc+~JrKqP70}B!6YdK">
                                    <field name="NUM">2</field>
                                  </shadow>
                                </value>
                              </block>
                            </value>
                            <next>
                              <block type="on_ext" id=".C1d#(gWIO$3af%qZpd=">
                                <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="ao*zhM3bl`?#R.|56@u2">
                                    <field name="oid">sonoff.0.Aqua_Float.POWER3</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="timeouts_cleartimeout" id="JsI0fYRACRn|cg%P`lFp">
                                    <field name="NAME">schwimmer</field>
                                    <next>
                                      <block type="timeouts_settimeout" id="N#We))|a%fz}L[Q+Cx^q">
                                        <field name="NAME">timeout</field>
                                        <field name="DELAY">5</field>
                                        <field name="UNIT">sec</field>
                                        <statement name="STATEMENT">
                                          <block type="variables_set" id="DBP2g$aqWChGwu[v*4!%">
                                            <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                            <value name="VALUE">
                                              <block type="on_source" id="K11}(or[Z:OS!(#vxqHG">
                                                <field name="ATTR">state.val</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="procedures_callnoreturn" id="PS|Lsb]Ll|M)1A-*=;MW">
                                                <mutation name="Vliesmotor"></mutation>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </next>
                                  </block>
                                </statement>
                                <next>
                                  <block type="schedule" id="(1I$6}V5IN*70(H;=,o%">
                                    <field name="SCHEDULE">0 0 * * *</field>
                                    <statement name="STATEMENT">
                                      <block type="variables_set" id="{)f?@KVtoNY|AFCWejAB">
                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="Rqh{,?m@M#5bO:hk2qxN">
                                            <field name="NUM">20</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="update" id="+r+/i.Ri,fl}QCeX@?61">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="math_number" id="]lwb)]#RcLa^7jMqMB77">
                                                <field name="NUM">40</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="procedures_callnoreturn" id="4]}?^U%FVW-Xhma?(A5M">
                                                <mutation name="Vliesmotor"></mutation>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="variables_set" id=",QNrt-4CE4Oj^jIk#,;Y">
                                        <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                        <value name="VALUE">
                                          <block type="get_value" id=")/E%PW9T*{q`1g=Um8*F">
                                            <field name="ATTR">val</field>
                                            <field name="OID">sonoff.0.Aqua_Float.POWER5</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="comment" id="bHD/a9YVFg5@jtgL}RAZ">
                                            <field name="COMMENT">Vlies Schwimmer max</field>
                                            <next>
                                              <block type="on_ext" id="*GLxbq=Y5W/kt`Ec^_^8">
                                                <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=":`a*puT#US*_u;?L/x6J">
                                                    <field name="oid">sonoff.0.Aqua_Float.POWER5</field>
                                                  </shadow>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="variables_set" id="|?HCwmG:!WSA]G_SW,bk">
                                                    <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                    <value name="VALUE">
                                                      <block type="on_source" id="2JAIjy|oUz(g|A5~5NZK">
                                                        <field name="ATTR">state.val</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="controls_if" id="_6.CXzT9uKZMv|AhD2pB">
                                                        <value name="IF0">
                                                          <block type="variables_get" id="bGVV|MyBeYczZ:[4nke5">
                                                            <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="control" id="V1h::i|*Z}0C,x,4n[h[">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="?1XtN^D4|o#2R(0I)]46">
                                                                <field name="BOOL">FALSE</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </statement>
                                                        <next>
                                                          <block type="procedures_callnoreturn" id="4SLh!G5#1BX1Fr=Gc:)G">
                                                            <mutation name="Vliesmotor"></mutation>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="procedures_callnoreturn" id="SwYioD-vCN,({DQT,nlx">
                                                    <mutation name="Vliesmotor"></mutation>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                  <block type="procedures_defnoreturn" id="~}wgr=#9IHto`oZ`1i[U" x="-1512" y="-687">
                    <field name="NAME">Vliesmotor</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    <statement name="STACK">
                      <block type="controls_if" id="qK^.hb={2:@M!ZVgr,,u">
                        <mutation elseif="1"></mutation>
                        <value name="IF0">
                          <block type="logic_operation" id="[P$,D8~!C1S-}Qc-W#F2">
                            <field name="OP">AND</field>
                            <value name="A">
                              <block type="variables_get" id="NzRA^q(PS(^dxlh?Hz=`">
                                <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_negate" id="l#n/c,qraF+Y1Tx?C@JA">
                                <value name="BOOL">
                                  <block type="variables_get" id="_M:.mt0cg%g*o6:2k*18">
                                    <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                        <statement name="DO0">
                          <block type="controls_if" id="QywEwMFYFf*jv=~RG:hi">
                            <value name="IF0">
                              <block type="logic_operation" id="xx=Q]8#5BOXA?;HAZ|/Q">
                                <field name="OP">AND</field>
                                <value name="A">
                                  <block type="logic_negate" id="_{hS@M9pcc_|dL-|wHIe">
                                    <value name="BOOL">
                                      <block type="variables_get" id="!lSD/;w.BC6Zye$P;+qB">
                                        <field name="VAR" id="Intervall" variabletype="undefined">Intervall</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_compare" id="JbQbvT#3JW.9fVGJXtMe">
                                    <field name="OP">GTE</field>
                                    <value name="A">
                                      <block type="variables_get" id="qM,NQ2t^P6}UJ1c+OQ`P">
                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="math_number" id="U=ZFPYpxi`%vn%M4zaBe">
                                        <field name="NUM">0</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="control" id="S$_E~?+C|0xeaXoh_M8M">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="logic_boolean" id="%02%L=N?!^~efNZ}mSgv">
                                    <field name="BOOL">TRUE</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="timeouts_setinterval" id="54}UC3}t@D?RM1+Z792o">
                                    <field name="NAME">Intervall</field>
                                    <field name="INTERVAL">5</field>
                                    <field name="UNIT">sec</field>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="(~Q|}=ic+sA#`@!Ma`~L">
                                        <mutation else="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_operation" id="A46f$uvOO-y~k${W6yj6">
                                            <field name="OP">AND</field>
                                            <value name="A">
                                              <block type="logic_compare" id="bpC5nI2I}O}Z#O{kySt_">
                                                <field name="OP">GT</field>
                                                <value name="A">
                                                  <block type="variables_get" id="xk]/(@DMWUBgU#z6:]qZ">
                                                    <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="math_number" id="yO,,$wcKnI|3dJ-tuyV}">
                                                    <field name="NUM">0</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="variables_get" id="BSK6e#C8r)693?3tm_%s">
                                                <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="math_change" id="E`-ssA;X9+940MYh/jC~">
                                            <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                            <value name="DELTA">
                                              <shadow type="math_number" id="|SPdtjyTRk*g7kpbX@yh">
                                                <field name="NUM">-1</field>
                                              </shadow>
                                            </value>
                                            <next>
                                              <block type="update" id="e?4*zw6JeufCUI_A$tWA">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="math_arithmetic" id="?(V0m_KR;zq]8QN4Nnt}">
                                                    <field name="OP">MULTIPLY</field>
                                                    <value name="A">
                                                      <shadow type="math_number" id="e-o]eN1KmMjXLGYbB5*-">
                                                        <field name="NUM">2</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="B">
                                                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Jab%cXU;kqAhB|kiv+HG">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                      <block type="variables_get" id="x3#fOwJi8qvpU_aB}+Qo">
                                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                        <statement name="ELSE">
                                          <block type="control" id=";ZPsI~I3!y;|Bll.nZi]">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="GV}0dox+Wzn)9/ho1)jJ">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="timeouts_clearinterval" id=".JS+sd^HrJ:7@PT?;b1@">
                                                <field name="NAME">Intervall</field>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </statement>
                        <value name="IF1">
                          <block type="get_value" id="#Hsff,HhVj3Er3x^t0d{">
                            <field name="ATTR">val</field>
                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                          </block>
                        </value>
                        <statement name="DO1">
                          <block type="control" id="4|Vz)`RbK!({%B#^yBT@">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="(F=#.PC)sS-H0v;,Jq$U">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                          </block>
                        </statement>
                      </block>
                    </statement>
                  </block>
                </xml>
                
                AphofisA Offline
                AphofisA Offline
                Aphofis
                wrote on last edited by Aphofis
                #257

                @paul53
                Kannst du mir vllt noch mal mit dieser steuerung helfen!?
                irgendwie will keine Osmose dosieren. Seid dem ich die neuen Stable Updates installiert hatte.
                Hatte die Geräte manuell getestet das funktioniert.
                Nur Schaltet die Steuerung nicht. Das wäre sehr nett.

                const idRestzeit = 'Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit';
                
                const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
                
                const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
                
                 
                
                createState(idRestzeit, 300, {type: 'number', unit: 's'});
                
                 
                
                var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
                
                var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
                
                var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
                
                 
                
                function Magnetventil_Ein() {
                
                  if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                
                    Magnetventil_Kontrolle = setInterval(function () {
                
                      if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                
                        Restzeit--;
                
                        setState(idRestzeit, 2 * Restzeit, true);
                
                      } else {
                
                        setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                        clearInterval(Magnetventil_Kontrolle); 
                
                        Magnetventil_Kontrolle = null;
                
                      }
                
                    }, 2000);
                
                    setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
                
                  }
                
                }
                
                 
                
                // Skripstart
                
                setTimeout(function() {
                
                    Restzeit = getState(idRestzeit).val / 2;
                
                    if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                
                    else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                }, 200);
                
                var entprell = null;
                
                on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
                
                  log('Schwimmer: ' + obj.state.val)
                
                  if(entprell) {
                
                    clearTimeout(entprell);
                
                    entprell = null;
                
                  }  
                
                  entprell = setTimeout(function() {
                
                    Schwimmer = obj.state.val;
                
                    if(Schwimmer) Magnetventil_Ein();
                
                    else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                  }, 2000); // 2 s 
                
                });
                
                 
                
                schedule("0 0 * * *", function () {
                
                  Restzeit = 150;
                
                  setState(idRestzeit, 300, true);
                
                  if(Schwimmer) Magnetventil_Ein();
                
                });
                
                 
                
                on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
                
                  if (obj.state.val) {
                
                    timeout_aus = setTimeout(function () {
                
                      Osmosefreigabe = false;  
                
                      setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                
                      setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                    }, 5000);
                
                    if (timeout_ein) {
                
                        clearTimeout(timeout_ein); 
                
                        timeout_ein = null;
                
                    }
                
                  } else {
                
                    timeout_ein = setTimeout(function () {
                
                      Osmosefreigabe = true;
                
                      if(Schwimmer) Magnetventil_Ein();           
                
                      setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                
                    }, 10000);
                
                    if (timeout_aus) {
                
                        clearTimeout(timeout_aus); 
                
                        timeout_aus = null;
                
                    }
                
                  }
                
                });
                
                 
                
                on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
                
                  var txt;  
                
                  if (obj.state.val) txt = text_ein;   
                
                  else txt = text_aus;   
                
                  sendTo("telegram.4", "send", {
                
                    text: txt
                
                  });
                
                  log(txt);
                
                });
                
                

                und der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit
                wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis
                Aqua_Control erstellt wird!?

                paul53P 1 Reply Last reply
                0
                • AphofisA Aphofis

                  @paul53
                  Kannst du mir vllt noch mal mit dieser steuerung helfen!?
                  irgendwie will keine Osmose dosieren. Seid dem ich die neuen Stable Updates installiert hatte.
                  Hatte die Geräte manuell getestet das funktioniert.
                  Nur Schaltet die Steuerung nicht. Das wäre sehr nett.

                  const idRestzeit = 'Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit';
                  
                  const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
                  
                  const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
                  
                   
                  
                  createState(idRestzeit, 300, {type: 'number', unit: 's'});
                  
                   
                  
                  var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
                  
                  var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
                  
                  var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
                  
                   
                  
                  function Magnetventil_Ein() {
                  
                    if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                  
                      Magnetventil_Kontrolle = setInterval(function () {
                  
                        if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                  
                          Restzeit--;
                  
                          setState(idRestzeit, 2 * Restzeit, true);
                  
                        } else {
                  
                          setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                          clearInterval(Magnetventil_Kontrolle); 
                  
                          Magnetventil_Kontrolle = null;
                  
                        }
                  
                      }, 2000);
                  
                      setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
                  
                    }
                  
                  }
                  
                   
                  
                  // Skripstart
                  
                  setTimeout(function() {
                  
                      Restzeit = getState(idRestzeit).val / 2;
                  
                      if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                  
                      else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                  }, 200);
                  
                  var entprell = null;
                  
                  on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
                  
                    log('Schwimmer: ' + obj.state.val)
                  
                    if(entprell) {
                  
                      clearTimeout(entprell);
                  
                      entprell = null;
                  
                    }  
                  
                    entprell = setTimeout(function() {
                  
                      Schwimmer = obj.state.val;
                  
                      if(Schwimmer) Magnetventil_Ein();
                  
                      else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                    }, 2000); // 2 s 
                  
                  });
                  
                   
                  
                  schedule("0 0 * * *", function () {
                  
                    Restzeit = 150;
                  
                    setState(idRestzeit, 300, true);
                  
                    if(Schwimmer) Magnetventil_Ein();
                  
                  });
                  
                   
                  
                  on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
                  
                    if (obj.state.val) {
                  
                      timeout_aus = setTimeout(function () {
                  
                        Osmosefreigabe = false;  
                  
                        setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                  
                        setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                      }, 5000);
                  
                      if (timeout_ein) {
                  
                          clearTimeout(timeout_ein); 
                  
                          timeout_ein = null;
                  
                      }
                  
                    } else {
                  
                      timeout_ein = setTimeout(function () {
                  
                        Osmosefreigabe = true;
                  
                        if(Schwimmer) Magnetventil_Ein();           
                  
                        setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                  
                      }, 10000);
                  
                      if (timeout_aus) {
                  
                          clearTimeout(timeout_aus); 
                  
                          timeout_aus = null;
                  
                      }
                  
                    }
                  
                  });
                  
                   
                  
                  on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
                  
                    var txt;  
                  
                    if (obj.state.val) txt = text_ein;   
                  
                    else txt = text_aus;   
                  
                    sendTo("telegram.4", "send", {
                  
                      text: txt
                  
                    });
                  
                    log(txt);
                  
                  });
                  
                  

                  und der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit
                  wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis
                  Aqua_Control erstellt wird!?

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

                  @aphofis sagte: der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis Aqua_Control erstellt wird!?

                  Man kann keinen Datenpunkt unter "Aqua_Control.0" mit createState() erstellen.

                  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

                  AphofisA 1 Reply Last reply
                  0
                  • paul53P paul53

                    @aphofis sagte: der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis Aqua_Control erstellt wird!?

                    Man kann keinen Datenpunkt unter "Aqua_Control.0" mit createState() erstellen.

                    AphofisA Offline
                    AphofisA Offline
                    Aphofis
                    wrote on last edited by Aphofis
                    #259

                    @paul53
                    OK wieder auf standard gestellt.
                    Nur war das nihct der Grund warum die steuerung nicht mehr funktioniert.
                    Schwimmer steht auf true Restzeit steht auf 300 sekunden nur Magnetventil wird nicht geschaltet.
                    muss vielleicht irgendein Datenpunkt neu definiert werden !?

                    paul53P 1 Reply Last reply
                    0
                    • AphofisA Aphofis

                      @paul53
                      OK wieder auf standard gestellt.
                      Nur war das nihct der Grund warum die steuerung nicht mehr funktioniert.
                      Schwimmer steht auf true Restzeit steht auf 300 sekunden nur Magnetventil wird nicht geschaltet.
                      muss vielleicht irgendein Datenpunkt neu definiert werden !?

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

                      @aphofis sagte: muss vielleicht irgendein Datenpunkt neu definiert werden !?

                      Wie lautet jetzt die ID der Restzeit?
                      "sonoff.0.Aqua_Float.POWER4" ist auf false? (=Freigabe)

                      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

                      AphofisA 1 Reply Last reply
                      1
                      • paul53P paul53

                        @aphofis sagte: muss vielleicht irgendein Datenpunkt neu definiert werden !?

                        Wie lautet jetzt die ID der Restzeit?
                        "sonoff.0.Aqua_Float.POWER4" ist auf false? (=Freigabe)

                        AphofisA Offline
                        AphofisA Offline
                        Aphofis
                        wrote on last edited by Aphofis
                        #261

                        @paul53
                        Der Wert wurde automatisch wieder in Javascript erstellt Pfad:

                        javascript.0.Osmose.Restzeit
                        

                        "sonoff.0.Aqua_Float.POWER4" ist der Filter Niveau Max und steht auf true !!! Muss ich mal testen ob der Schwimmer korrekt ist. da der Schwimmer unten auf false stehen sollte.

                        AphofisA 1 Reply Last reply
                        0
                        • AphofisA Aphofis

                          @paul53
                          Der Wert wurde automatisch wieder in Javascript erstellt Pfad:

                          javascript.0.Osmose.Restzeit
                          

                          "sonoff.0.Aqua_Float.POWER4" ist der Filter Niveau Max und steht auf true !!! Muss ich mal testen ob der Schwimmer korrekt ist. da der Schwimmer unten auf false stehen sollte.

                          AphofisA Offline
                          AphofisA Offline
                          Aphofis
                          wrote on last edited by
                          #262

                          OK Fehler gefunden, der Schwimmer Power4 war mal wieder in der falschen Stellung. kommt beim Neustart des NodeMCU alle Jubeljahre vor, das der Schwimmerzustand verkehrt ist

                          1 Reply Last reply
                          0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          252

                          Online

                          32.8k

                          Users

                          82.7k

                          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