(gelöst) Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Fragen zum Skripten mit ioBroker.javascript
Antworten
meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

(gelöst) Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 14:13

Hallo Community.

Irgendwie werde ich mit Blocky noch nicht so richtig warm oder ich bin zu blöd dazu. Letzteres stimmt wohl :)

Ich möchte ein echt lautes MAX! Thermostat gegen ein Homematic Thermostat tauschen und den MAX! Fenstersensor weiter nutzen. Da ich die beiden Komponenten nicht direkt verknüpfen kann dachte ich mir dass Blocky das doch sicher erledigen kann.

Fenster auf --> Thermostat Mode auf Manuel und Temperatur auf 12° setzen
Fenster zu --> Thermostat Mode auf Auto setzen

Ich scheitere schon daran den Modus des Thermostat zu wechseln. Das mit dem setzen der Temperatur kommt wenn Schritt eins (Modusänderung) funktioniert. Die Erkennung ob das Fenster zu oder auf ist funktioniert soweit.
Bildschirmfoto 2018-01-22 um 14.10.24.png
Spoiler: Show hidden text
on({id: 'maxcube.0.devices.contact_0d5c46.opened', val: true}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setState("hm-rpc.0.OEQ0667911.4.CONTROL_MODE", 1, true);
console.log('Fenster geöffnet');
});
on({id: 'maxcube.0.devices.contact_0d5c46.opened', val: false}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setState("hm-rpc.0.OEQ0667911.4.CONTROL_MODE", 0, true);
console.log('Fenster geschlossen');
});
Kann mir bitte jemand unter die Arme greifen?
Zuletzt geändert von meikel am 23.01.2018, 13:58, insgesamt 2-mal geändert.

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 14:43

CONTROL_MODE ist read only, d.h. dient nur zum Abfragen des aktuell gesetzten Modus. Zum Setzen des Modus gibt es die Datenpunkte AUTO_MODE (true) und MANU_MODE (Sollwert).
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 15:08

paul53 hat geschrieben:CONTROL_MODE ist read only, d.h. dient nur zum Abfragen des aktuell gesetzten Modus. Zum Setzen des Modus gibt es die Datenpunkte AUTO_MODE (true) und MANU_MODE (Sollwert).
Danke für den Tipp, habe ich gerade durch fummeln auch rausbekommen und hat sofort funktioniert.

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 15:25

meikel hat geschrieben:hat sofort funktioniert.
Dann markiere bitte das Thema als gelöst (im ersten Beitrag).
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 15:47

paul53 hat geschrieben:
meikel hat geschrieben:hat sofort funktioniert.
Dann markiere bitte das Thema als gelöst (im ersten Beitrag).
Läuft doch noch nicht so ganz rund, möglich dass ich noch Unterstützung brauche

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 16:07

Leider toggelt das Thermostat momentan immer zwischen Auto und Manu Mode hinundher.

Hier der zusammengeschwartete Blocky:
Bildschirmfoto 2018-01-22 um 16.04.57.png
Ist sicherlich vom Ansatz her falsch, aber ich weiß es leider nicht besser :).
Spoiler: Show hidden text
on({id: 'maxcube.0.devices.contact_0d5c46.opened', val: true}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setState("hm-rpc.0.OEQ0664559.4.AUTO_MODE", false);
setStateDelayed("hm-rpc.0.OEQ0664559.4.MANU_MODE", 12, 2000, false);
console.log('Fenster geöffnet');
});
on({id: 'maxcube.0.devices.contact_0d5c46.opened', val: false}, function (obj) {
var value = obj.state.val;
var oldValue = obj.oldState.val;
setState("hm-rpc.0.OEQ0664559.4.AUTO_MODE", true);
setStateDelayed("hm-rpc.0.OEQ0664559.4.MANU_MODE", 20, 2000, false);
console.log('Fenster geschlossen');
});

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 16:42

Das Setzen eines Modus schaltet um.
Fenster auf: MANU_MODE auf 12
Fenster zu: AUTO_MODE auf true
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 17:29

Beispiel, das funktionieren sollte (nicht getestet):
Blockly_HKT_Mode.JPG
Blockly_HKT_Mode.JPG (46.02 KiB) 290 mal betrachtet
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 17:31

Das ganze scheint echt zu tricky für mich zu sein. So wie es jetzt ist passiert folgendens:
Fenster ist zu, alles ist bestens und das Thermostat steht auf permanent "Auto".

Wird das Fenster geöffnet, ändert sich nach ein paar Sekunden der Mode auf "Manuell" und die Temperatur geht auf 12°. Nach 30 Sekunden wechselt kurz der Modus auf "Auto" um dann direkt auf "Manuell" zu gehen. Also jedes Update des Fenstersensor löst das Toggeln aus. Das Ganze passiert so lange bis das Fenster geschlossen wird und das Thermostat dauerhaft in den Modus Auto geht.

Ich warte jetzt erst mal bis sich das alles beruhigt hat und tüftel dann weiter.

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 17:33

paul53 hat geschrieben:Beispiel, das funktionieren sollte (nicht getestet):

Blockly_HKT_Mode.JPG
Besten Dank, werde ich später mal testen. Ich muss mich noch mit dem Verschachteln der einzelnen Blöcke beschäftigen, Das ist mir alles noch nicht ganz so einleuchtend, aber an solchen Beispielen lernt man ja :).

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 17:42

meikel hat geschrieben:Also jedes Update des Fenstersensor löst das Toggeln aus.
Das kommt daher, dass mit Test auf "wahr" beim Trigger nicht nur auf Änderung, sondern auf Aktualisierung getriggert wird, d.h. der Befehl MANU_MODE wird erneut gesendet. Das mag der Thermostat offenbar nicht ? Oder sendest Du weiterhin bei offenem Fenster erst AUTO_MODE false und 2 s später MANU_MODE 12 ?

In meinem Beispiel wird auf Änderung getriggert; also dürfte dieses erneute Senden nicht passieren.

EDIT: Hier noch der Export meines Beispiels:
Spoiler: Show hidden text

Code: Alles auswählen

<xml xmlns="http://www.w3.org/1999/xhtml">
  <block type="on_ext" id="+RQ8Qq0zRoKc`WNlgJ/b" x="-737" y="-312">
    <mutation items="1"></mutation>
    <field name="CONDITION">ne</field>
    <field name="ACK_CONDITION"></field>
    <value name="OID0">
      <shadow type="field_oid" id="NGh|JL4P5(YSX|MvxQ~;">
        <field name="oid">hm-rpc.0.NEQ1234567.1.Fenster_offen</field>
      </shadow>
    </value>
    <statement name="STATEMENT">
      <block type="controls_if" id="#uw[Q0.4.zhVfek`_};=">
        <mutation else="1"></mutation>
        <value name="IF0">
          <block type="variables_get" id="bOYtI-m/Vq]=@cugU2=a">
            <field name="VAR">value</field>
          </block>
        </value>
        <statement name="DO0">
          <block type="control" id="}lqa}Vi)?:H[0SYr.xmy">
            <mutation delay_input="false"></mutation>
            <field name="OID">hm-rpc.0.NEQ1234567.1.MANU_MODE</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
              <block type="math_number" id="E1xi[_fv|8BODs.DhP^h">
                <field name="NUM">12</field>
              </block>
            </value>
          </block>
        </statement>
        <statement name="ELSE">
          <block type="control" id="kE-be#;kr*TTz_{,7!ab">
            <mutation delay_input="false"></mutation>
            <field name="OID">hm-rpc.0.NEQ1234567.1.AUTO_MODE</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
              <block type="logic_boolean" id="CIy,=pM=-a~{=V%|kMAd">
                <field name="BOOL">TRUE</field>
              </block>
            </value>
          </block>
        </statement>
      </block>
    </statement>
    <next>
      <block type="on_ext" id="aw%bg0k{Gmrg6l3BMOiX">
        <mutation items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="V~jFO:b!buQ;(s[`2R{3">
            <field name="oid">hm-rpc.0.NEQ1234567.1.CONTROL_MODE</field>
          </shadow>
        </value>
        <statement name="STATEMENT">
          <block type="debug" id="?60+I7Wp`qL{YZ*ddtbU">
            <field name="Severity">log</field>
            <value name="TEXT">
              <shadow type="text" id="{feYHS_bV5qC_LdZBB;m">
                <field name="TEXT">test</field>
              </shadow>
              <block type="text_join" id="U+vXGEc@8*NbqOI7}]53">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="text" id=".A9p22)X8)fO/I`}I0^9">
                    <field name="TEXT">HKT Modus: </field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="variables_get" id="Cw!Il;eD~2qRIz%X0tI4">
                    <field name="VAR">value</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </statement>
      </block>
    </next>
  </block>
</xml>
Zuletzt geändert von paul53 am 22.01.2018, 17:57, insgesamt 2-mal geändert.
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: RE: Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 17:47

paul53 hat geschrieben:
meikel hat geschrieben:Also jedes Update des Fenstersensor löst das Toggeln aus.
Das kommt daher, dass mit Test auf "wahr" beim Trigger nicht nur auf Änderung, sondern auf Aktualisierung getriggert wird, d.h. der Befehl MANU_MODE wird erneut gesendet. Das mag der Thermostat offenbar nicht ?
In meinem Beispiel wird auf Änderung getriggert; also dürfte dieses erneute Senden nicht passieren.
Schau ich mir morgen an, muss mich erstmal um die defekte Waschmaschine kümmern. Ansonsten gibt's Ärger von der Regierung

Gesendet von meinem ONEPLUS A5010 mit Tapatalk

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 18:54

paul53 hat geschrieben:
meikel hat geschrieben:Also jedes Update des Fenstersensor löst das Toggeln aus.
Das kommt daher, dass mit Test auf "wahr" beim Trigger nicht nur auf Änderung, sondern auf Aktualisierung getriggert wird, d.h. der Befehl MANU_MODE wird erneut gesendet. Das mag der Thermostat offenbar nicht ? Oder sendest Du weiterhin bei offenem Fenster erst AUTO_MODE false und 2 s später MANU_MODE 12 ?

In meinem Beispiel wird auf Änderung getriggert; also dürfte dieses erneute Senden nicht passieren.

EDIT: Hier noch der Export meines Beispiels:
Spoiler: Show hidden text

Code: Alles auswählen

<xml xmlns="http://www.w3.org/1999/xhtml">
  <block type="on_ext" id="+RQ8Qq0zRoKc`WNlgJ/b" x="-737" y="-312">
    <mutation items="1"></mutation>
    <field name="CONDITION">ne</field>
    <field name="ACK_CONDITION"></field>
    <value name="OID0">
      <shadow type="field_oid" id="NGh|JL4P5(YSX|MvxQ~;">
        <field name="oid">hm-rpc.0.NEQ1234567.1.Fenster_offen</field>
      </shadow>
    </value>
    <statement name="STATEMENT">
      <block type="controls_if" id="#uw[Q0.4.zhVfek`_};=">
        <mutation else="1"></mutation>
        <value name="IF0">
          <block type="variables_get" id="bOYtI-m/Vq]=@cugU2=a">
            <field name="VAR">value</field>
          </block>
        </value>
        <statement name="DO0">
          <block type="control" id="}lqa}Vi)?:H[0SYr.xmy">
            <mutation delay_input="false"></mutation>
            <field name="OID">hm-rpc.0.NEQ1234567.1.MANU_MODE</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
              <block type="math_number" id="E1xi[_fv|8BODs.DhP^h">
                <field name="NUM">12</field>
              </block>
            </value>
          </block>
        </statement>
        <statement name="ELSE">
          <block type="control" id="kE-be#;kr*TTz_{,7!ab">
            <mutation delay_input="false"></mutation>
            <field name="OID">hm-rpc.0.NEQ1234567.1.AUTO_MODE</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE">
              <block type="logic_boolean" id="CIy,=pM=-a~{=V%|kMAd">
                <field name="BOOL">TRUE</field>
              </block>
            </value>
          </block>
        </statement>
      </block>
    </statement>
    <next>
      <block type="on_ext" id="aw%bg0k{Gmrg6l3BMOiX">
        <mutation items="1"></mutation>
        <field name="CONDITION">ne</field>
        <field name="ACK_CONDITION"></field>
        <value name="OID0">
          <shadow type="field_oid" id="V~jFO:b!buQ;(s[`2R{3">
            <field name="oid">hm-rpc.0.NEQ1234567.1.CONTROL_MODE</field>
          </shadow>
        </value>
        <statement name="STATEMENT">
          <block type="debug" id="?60+I7Wp`qL{YZ*ddtbU">
            <field name="Severity">log</field>
            <value name="TEXT">
              <shadow type="text" id="{feYHS_bV5qC_LdZBB;m">
                <field name="TEXT">test</field>
              </shadow>
              <block type="text_join" id="U+vXGEc@8*NbqOI7}]53">
                <mutation items="2"></mutation>
                <value name="ADD0">
                  <block type="text" id=".A9p22)X8)fO/I`}I0^9">
                    <field name="TEXT">HKT Modus: </field>
                  </block>
                </value>
                <value name="ADD1">
                  <block type="variables_get" id="Cw!Il;eD~2qRIz%X0tI4">
                    <field name="VAR">value</field>
                  </block>
                </value>
              </block>
            </value>
          </block>
        </statement>
      </block>
    </next>
  </block>
</xml>
Waschmaschine ist zerlegt und die Kohlen sind wohl hinüber......

Vielen Dank für die Erklärungen, aber was hat der kleine Block "Value" zu bewirken. Das verstehe ich leider nicht.

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 19:06

meikel hat geschrieben:was hat der kleine Block "Value" zu bewirken
Die Skriptvariable "value" wird in jedem Triggerbaustein per (internem) Standard als lokale Variable (Gültigkeit innerhalb der Funktion) erzeugt und mit dem Wert des auslösenden Datenpunktes befüllt. Das kann man sehen, wenn man rechts oben mal auf "Zeige Code" klickt. Mein Beispiel als Javascript Code:

Code: Alles auswählen

on({id: 'hm-rpc.0.NEQ1234567.1.Fenster_offen', change: "ne"}, function (obj) {
  var value = obj.state.val;
  var oldValue = obj.oldState.val;
  if (value) {
    setState("hm-rpc.0.NEQ1234567.1.MANU_MODE"/*MANU_MODE*/, 12);
  } else {
    setState("hm-rpc.0.NEQ1234567.1.AUTO_MODE"/*AUTO_MODE*/, true);
  }
});
on({id: 'hm-rpc.0.NEQ1234567.1.CONTROL_MODE', change: "ne"}, function (obj) {
  var value = obj.state.val;
  var oldValue = obj.oldState.val;
  console.log((String('HKT Modus: ') + String(value)));
});
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 19:21

Aber müsste es dann nicht heißen

falls value =wahr (Fenster offen) mache "manu Mode" mit 12°
sonst "auto Mode" mit wahr

Ich weiß, ist doof ausgedrückt aber mit fehlt noch der Bezug zum offenen Fenster :?:
Bildschirmfoto 2018-01-22 um 19.19.46.png

paul53
guru
Beiträge: 2668
Registriert: 09.06.2015, 16:03
Wohnort: Berlin

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von paul53 » 22.01.2018, 19:31

meikel hat geschrieben:aber mit fehlt noch der Bezug zum offenen Fenster

Code: Alles auswählen

on({id: 'hm-rpc.0.NEQ1234567.1.Fenster_offen', change: "ne"}, function (obj) {
  var value = obj.state.val;  // Hier wird der Wert des Datenpunktes "Fenster_offen" an value übergeben (true = Fenster offen)
meikel hat geschrieben:Aber müsste es dann nicht heißen

falls value =wahr (Fenster offen) mache
Ein Vergleich liefert als Ergebnis true oder false. Die Skriptvariable value enthält schon true oder false, deshalb muss man nicht noch mit true vergleichen, was eine verkürzte Schreibweise erlaubt.

Code: Alles auswählen

if(value)
entspricht

Code: Alles auswählen

if(value == true)
Versionen für RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs:
Jessie lite, Kernel 4.4.13-v7+, hmcon 0.18, node 6.11.1, Host 1.2.3, Admin 2.0.9, Javascript 3.6.4, HM-RPC 1.6.0, Email 1.0.2, History 1.7.2, Flot 1.7.7, Vis 1.0.4, Web 2.1.9

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 22.01.2018, 19:46

Das ist ja mega pfiffig und somit für faule Leute :D
Die Gedanken die ich habe sind für euch vermutlich total krude, aber ich habe vom Programmieren so viel Ahnung wie eine Kuh vom Eislaufen.

Hier wird man aber permanent schlauer....DANKE

meikel
starter
Beiträge: 51
Registriert: 03.01.2018, 09:38

Re: Blocky für Fenstersensor (MAX!) und Thermostat (Homematic)

Beitrag von meikel » 23.01.2018, 13:53

Jetzt funktioniert es so wie gewünscht. Vielen Dank an @paul53. Es gab wohl irgendwie noch Stress mit der Variable "value", die wurde nicht ausgewertet oder passte nicht zu dem Block, jedenfalls wurden die Statusänderungen des Fenstersensors nicht vom Skript erkannt. Nachdem ich den kleinen Block entfernt und neu angelegt hatte da fluppte es wie es soll.

Daher für alle die das gerne nachbauen wollen:
Spoiler: Show hidden text
<xml xmlns="http://www.w3.org/1999/xhtml">
<block type="on_ext" id="E;zsSlF|`Wq:}1G^F;0q" x="63" y="63">
<mutation items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="(sxO/REdna0^OVt6DeUp">
<field name="oid">maxcube.0.devices.contact_0d5c46.opened</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="controls_if" id="+gUM?%8ubybNMqlhjD_*">
<mutation else="1"></mutation>
<value name="IF0">
<block type="variables_get" id="3ZAY1A0v)_!p9D(-ZYW-">
<field name="VAR">value</field>
</block>
</value>
<statement name="DO0">
<block type="control" id="a*0{4@}gVK[9|4OSx0P+">
<mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.0.OEQ0664559.4.MANU_MODE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id="g(u(_F0I6F7:VB1,J*It">
<field name="NUM">12</field>
</block>
</value>
</block>
</statement>
<statement name="ELSE">
<block type="control" id="u);Y.B7MQpHh,#z_TX/,">
<mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.0.OEQ0664559.4.AUTO_MODE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="8iM,,OYn-Lvc(HuDAS09">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
<next>
<block type="on_ext" id="vfMUu2c^cxVBgv4YO%Ie">
<mutation items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="hILF9#alzhQgZ{!X]]F`">
<field name="oid">hm-rpc.0.OEQ0664559.4.CONTROL_MODE</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="debug" id="o-;;Q|%W2pFWqC~IXEQ@">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="fs3T.rGHz`HkSR(oL_#z">
<field name="TEXT">Modeänderung</field>
</shadow>
<block type="text_join" id="kWRnmjATh4TKlM;lkcCN">
<mutation items="2"></mutation>
<value name="ADD0">
<block type="text" id="j.s6K?|f!g1cYODN[D|E">
<field name="TEXT">HKT Mode:</field>
</block>
</value>
<value name="ADD1">
<block type="variables_get" id="s};j7yMuZGuOlcB[rEaD">
<field name="VAR">value</field>
</block>
</value>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</xml>
Bildschirmfoto 2018-01-23 um 13.51.48.png

Antworten