Skip to content
  • 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
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adaper Tado v0.1.x

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Test Adaper Tado v0.1.x

Test Adaper Tado v0.1.x

Scheduled Pinned Locked Moved Tester
tadoadaptertesting team
868 Posts 62 Posters 247.1k Views 59 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.
  • CKMartensC CKMartens

    @hilde0407 Habe es gerade mit Blockly versucht. Funktioniert auch.
    c018a830-c8c9-4cad-9978-a81f6eb304b2-grafik.png

    H Offline
    H Offline
    hilde0407
    wrote on last edited by
    #164

    @CKMartens Stimmt! Funktioniert... habe wohl noch Fehler in meiner Logik!

    CKMartensC 1 Reply Last reply
    0
    • H hilde0407

      @CKMartens Stimmt! Funktioniert... habe wohl noch Fehler in meiner Logik!

      CKMartensC Offline
      CKMartensC Offline
      CKMartens
      wrote on last edited by
      #165

      @hilde0407 du must auf jeden Fall steuern nehmen. Dann sollte es funktionieren.

      1 Reply Last reply
      0
      • CKMartensC CKMartens

        @hilde0407 ich mache es genauso in einem Script.

        on({id: 'scene.FensterBüroZu', change: "ne"}, function (obj) {
          if (getState("scene.FensterBüroZu").val == false) {
            setState("tado.0.96374.Rooms.11.setting.power"/*Power*/, 'off');
            clearInterval(checkBuero);
            checkBuero = null;          
            var checkBuero = setInterval(function () { 
              if (getState('scene.FensterBüroZu'/*FensterBüroZu*/).val == false) {
                if (getState('mihome.0.devices.weather_v1_158d00027466c7.temperature'/*Temperatur Klima Buero*/).val <= 18 && getState('mihome.0.devices.weather_v1_158d000274655a.temperature'/*Temperatur Klima Outdoor*/).val <= 15) {
                    let BueroTemp = getState('mihome.0.devices.weather_v1_158d000274655a.temperature').val;
                    sendTo('telegram.0', {
                        text:   'Das Bürofenster ist noch geöffnet. Im Raum sind es '+BueroTemp+' °C. Der Raum droht auszukühlen!'
                    });
                }
              } else {
                clearInterval(checkBuero);
                checkBuero = null;          
              }
            },600000); 
          } else {
            setState("tado.0.96374.Rooms.11.setting.power"/*Power*/, 'on');
            setStateDelayed('tado.0.96374.Rooms.11.overlay.clearZoneOverlay'/*Clear Zone Overlay*/, true, 5000, false);
            clearInterval(checkBuero);
            checkBuero = null;
          }
        });
        
        H Offline
        H Offline
        hilde0407
        wrote on last edited by
        #166

        @CKMartens Dank Deines Skripts bin ich auf die Lösung gekommen. Wenn man zuvor den ...setting.power State auf Off gesetzt hat und dann wieder einschaltet, muss man zwingend bei Auslösen des clearZoneOverlay Datenpunktes eine Verzögerung einbauen. Ich habe Deinen 5 Sekunden benutzt, was dann den gewünschten Erfolg brachte! Vielen Dank

        CKMartensC HappyTeaFriendH 2 Replies Last reply
        0
        • H hilde0407

          @CKMartens Dank Deines Skripts bin ich auf die Lösung gekommen. Wenn man zuvor den ...setting.power State auf Off gesetzt hat und dann wieder einschaltet, muss man zwingend bei Auslösen des clearZoneOverlay Datenpunktes eine Verzögerung einbauen. Ich habe Deinen 5 Sekunden benutzt, was dann den gewünschten Erfolg brachte! Vielen Dank

          CKMartensC Offline
          CKMartensC Offline
          CKMartens
          wrote on last edited by
          #167

          @hilde0407 stimmt da muss ein paar Sekunden verzögert werden sonst wird der Befehl von der API "geschluckt"

          H 1 Reply Last reply
          0
          • CKMartensC CKMartens

            @hilde0407 stimmt da muss ein paar Sekunden verzögert werden sonst wird der Befehl von der API "geschluckt"

            H Offline
            H Offline
            hilde0407
            wrote on last edited by
            #168

            @CKMartens Dennoch benötigt der Datenpunkt clearZoneOverlay eigentlich eine Zahl, so ist er definiert...

            Zahl.png

            Im Log kommt auch eine Warnung:

            javascript.0	2019-11-07 21:07:33.474	warn	(17300) You are assigning a boolean to the state "tado.0.371509.Rooms.2.overlay.clearZoneOverlay" which expects a number. Please fix your code to use a number or change the state type to boolean. This
            

            Vieleicht sollte der Datenpunkt in einer weiteren Version des Adapters lieber als Logikwert definiert werden. (Geht ja auch händisch).

            CKMartensC 1 Reply Last reply
            0
            • H hilde0407

              @CKMartens Dennoch benötigt der Datenpunkt clearZoneOverlay eigentlich eine Zahl, so ist er definiert...

              Zahl.png

              Im Log kommt auch eine Warnung:

              javascript.0	2019-11-07 21:07:33.474	warn	(17300) You are assigning a boolean to the state "tado.0.371509.Rooms.2.overlay.clearZoneOverlay" which expects a number. Please fix your code to use a number or change the state type to boolean. This
              

              Vieleicht sollte der Datenpunkt in einer weiteren Version des Adapters lieber als Logikwert definiert werden. (Geht ja auch händisch).

              CKMartensC Offline
              CKMartensC Offline
              CKMartens
              wrote on last edited by
              #169

              @hilde0407 tatsächlich, habe gerade mal geschaut.

              @Dutchman kann das State von clearOverlayZone von der API her als Logikwert definiert werden?

              DutchmanD 1 Reply Last reply
              0
              • CKMartensC CKMartens

                @hilde0407 tatsächlich, habe gerade mal geschaut.

                @Dutchman kann das State von clearOverlayZone von der API her als Logikwert definiert werden?

                DutchmanD Online
                DutchmanD Online
                Dutchman
                Developer Most Active Administrators
                wrote on last edited by
                #170

                @CKMartens sagte in Test Adaper Tado v0.1.x:

                @Dutchman kann das State von clearOverlayZone von der API her als Logikwert definiert werden?

                euh moment unnötig den den hast du als Button... steht bei dir im overleg reset kein knöpf im iobroker admin den du drücken kannst ?

                CKMartensC 1 Reply Last reply
                0
                • DutchmanD Dutchman

                  @CKMartens sagte in Test Adaper Tado v0.1.x:

                  @Dutchman kann das State von clearOverlayZone von der API her als Logikwert definiert werden?

                  euh moment unnötig den den hast du als Button... steht bei dir im overleg reset kein knöpf im iobroker admin den du drücken kannst ?

                  CKMartensC Offline
                  CKMartensC Offline
                  CKMartens
                  wrote on last edited by
                  #171

                  @Dutchman doch bei mir funktioniert es ja... Ein paar Nachrichten weiter hatte da wohl jemand Probleme

                  DutchmanD 1 Reply Last reply
                  0
                  • CKMartensC CKMartens

                    @Dutchman doch bei mir funktioniert es ja... Ein paar Nachrichten weiter hatte da wohl jemand Probleme

                    DutchmanD Online
                    DutchmanD Online
                    Dutchman
                    Developer Most Active Administrators
                    wrote on last edited by
                    #172

                    @CKMartens sagte in Test Adaper Tado v0.1.x:

                    @Dutchman doch bei mir funktioniert es ja... Ein paar Nachrichten weiter hatte da wohl jemand Probleme

                    ah ok, dan muss das ne frustre version sein die letzte online hat das alles drin

                    C H 2 Replies Last reply
                    1
                    • DutchmanD Dutchman

                      @CKMartens sagte in Test Adaper Tado v0.1.x:

                      @Dutchman doch bei mir funktioniert es ja... Ein paar Nachrichten weiter hatte da wohl jemand Probleme

                      ah ok, dan muss das ne frustre version sein die letzte online hat das alles drin

                      C Offline
                      C Offline
                      Coffeelover
                      wrote on last edited by
                      #173

                      @Dutchman sagte in Test Adaper Tado v0.1.x:

                      @CKMartens sagte in Test Adaper Tado v0.1.x:

                      @Dutchman doch bei mir funktioniert es ja... Ein paar Nachrichten weiter hatte da wohl jemand Probleme

                      ah ok, dan muss das ne frustre version sein die letzte online hat das alles drin

                      Und falls jemand den Taster per Node Red ansprechen will: command (nicht value) senden. Daran hing ich die Tage.

                      1 Reply Last reply
                      0
                      • H hilde0407

                        @CKMartens Dank Deines Skripts bin ich auf die Lösung gekommen. Wenn man zuvor den ...setting.power State auf Off gesetzt hat und dann wieder einschaltet, muss man zwingend bei Auslösen des clearZoneOverlay Datenpunktes eine Verzögerung einbauen. Ich habe Deinen 5 Sekunden benutzt, was dann den gewünschten Erfolg brachte! Vielen Dank

                        HappyTeaFriendH Offline
                        HappyTeaFriendH Offline
                        HappyTeaFriend
                        Forum Testing
                        wrote on last edited by
                        #174

                        @hilde0407 Ich habe gerade herausgefunden, dass man den setting.power State gar nicht manuell wieder auf On setzen muss. Wenn power State Off ist, kann man direkt einmal clearZoneOverlay ohne Delay ansteuern und zack er schaltet wieder zurück auf normalen Zeitplan Betrieb.

                        1 Reply Last reply
                        0
                        • H Offline
                          H Offline
                          hilde0407
                          wrote on last edited by
                          #175

                          So erledige ich es auch in meinem Skript. Das funktioniert auch soweit gut. Ich habe einen Xiaomi Button, den ich dazu benutze, ein Art Boost Modus auszulösen. Ich schalte damit die Zieltemperatur auf 25 Grad, die Heizung läuft dann mit 100 %. Beim Erreichen der definierten Zieltemperatur (Xiaomi Temperatursensor in der Mitte des Raumes), lösche ich das ZoneOverlay. Funktioniert prima. Außerdem benutze ich Xiaomi Fenstersensoren, um die Heizung auszuschalten, wenn ein Fenster im Raum geöffnet wird, beim Schließen wird die Heizung wieder eingeschaltet. Da die automatischen Funktionen der Thermostate mitunter die Heizung wieder einschalten (Zeitplan), obwohl ich die Fenster offen habe, habe ich ein weiteres Skript, mit einem Trigger auf Setting.power State, dass die Heizung wieder ausschaltet, wenn das Fenster immer noch offen ist. Funktioniert auch prima. Dennoch finde ich den Datenpunkt clearZoneOverlay nicht sauber definiert, da er als Number definiert ist. Nach meinem Verständnis wäre eine Definition als Logikwert passender. Dies habe ich einfach manuell in dem Datenpunkt geändert. Nun kommt auch keine Warnung mehr im Log, wenn ich den Datenpunkt per Skript steuere. Wie gesagt, es funktioniert auch so. In meiner Variante aber sauberer, da keine Warnung im Log. Ich bin aber sehr froh, dass es diesen Adapter gibt, da man nun nahezu unerschöpfliche Möglichkeiten über den IOBroker hat. Realisiert habe ich bereits, dass die Heizung ab einer definierten Außentemperatur komplett abgeschaltet wird. Etwas weiter oben wird eine Möglichkeit beschrieben, die Away Funktion, die man ja per Abo eigentlich bezahlen muss, per Skript nachbilden kann - auch noch ganz reizvoll.
                          Ich bin besonders dankbar darüber, dass ich nun sämtliche Sensoren und Geräte, die ich im ioBroker habe, nun mit meinen Tado frei kombinieren kann und das auch noch ohne zeitliche Verzögerungen (ich hatte davor die Fritz!Dect 301 Thermostate, da hat es bis zu 30 Minuten gedauert, bis die Befehle an die Thermostate übermittelt wurden).
                          Also vielen Dank noch einmal an die Entwickler des Adapters!

                          HappyTeaFriendH S 2 Replies Last reply
                          1
                          • H hilde0407

                            So erledige ich es auch in meinem Skript. Das funktioniert auch soweit gut. Ich habe einen Xiaomi Button, den ich dazu benutze, ein Art Boost Modus auszulösen. Ich schalte damit die Zieltemperatur auf 25 Grad, die Heizung läuft dann mit 100 %. Beim Erreichen der definierten Zieltemperatur (Xiaomi Temperatursensor in der Mitte des Raumes), lösche ich das ZoneOverlay. Funktioniert prima. Außerdem benutze ich Xiaomi Fenstersensoren, um die Heizung auszuschalten, wenn ein Fenster im Raum geöffnet wird, beim Schließen wird die Heizung wieder eingeschaltet. Da die automatischen Funktionen der Thermostate mitunter die Heizung wieder einschalten (Zeitplan), obwohl ich die Fenster offen habe, habe ich ein weiteres Skript, mit einem Trigger auf Setting.power State, dass die Heizung wieder ausschaltet, wenn das Fenster immer noch offen ist. Funktioniert auch prima. Dennoch finde ich den Datenpunkt clearZoneOverlay nicht sauber definiert, da er als Number definiert ist. Nach meinem Verständnis wäre eine Definition als Logikwert passender. Dies habe ich einfach manuell in dem Datenpunkt geändert. Nun kommt auch keine Warnung mehr im Log, wenn ich den Datenpunkt per Skript steuere. Wie gesagt, es funktioniert auch so. In meiner Variante aber sauberer, da keine Warnung im Log. Ich bin aber sehr froh, dass es diesen Adapter gibt, da man nun nahezu unerschöpfliche Möglichkeiten über den IOBroker hat. Realisiert habe ich bereits, dass die Heizung ab einer definierten Außentemperatur komplett abgeschaltet wird. Etwas weiter oben wird eine Möglichkeit beschrieben, die Away Funktion, die man ja per Abo eigentlich bezahlen muss, per Skript nachbilden kann - auch noch ganz reizvoll.
                            Ich bin besonders dankbar darüber, dass ich nun sämtliche Sensoren und Geräte, die ich im ioBroker habe, nun mit meinen Tado frei kombinieren kann und das auch noch ohne zeitliche Verzögerungen (ich hatte davor die Fritz!Dect 301 Thermostate, da hat es bis zu 30 Minuten gedauert, bis die Befehle an die Thermostate übermittelt wurden).
                            Also vielen Dank noch einmal an die Entwickler des Adapters!

                            HappyTeaFriendH Offline
                            HappyTeaFriendH Offline
                            HappyTeaFriend
                            Forum Testing
                            wrote on last edited by
                            #176

                            @hilde0407 habe ich ähnlich auch realisiert und bin bisher echt mega zufrieden.
                            Eine Frage: welche Funktionen schalten bei dir denn die Thermostate automatisch wieder an, was du oben beschrieben hast? Ist bei mir bisher noch nicht passiert, aber wäre interessant zu wissen, so dass ich eventuell auch noch ein Script realisieren muss, um dies bei offenen Fenstern zu verhindern.

                            H 2 Replies Last reply
                            0
                            • H hilde0407

                              So erledige ich es auch in meinem Skript. Das funktioniert auch soweit gut. Ich habe einen Xiaomi Button, den ich dazu benutze, ein Art Boost Modus auszulösen. Ich schalte damit die Zieltemperatur auf 25 Grad, die Heizung läuft dann mit 100 %. Beim Erreichen der definierten Zieltemperatur (Xiaomi Temperatursensor in der Mitte des Raumes), lösche ich das ZoneOverlay. Funktioniert prima. Außerdem benutze ich Xiaomi Fenstersensoren, um die Heizung auszuschalten, wenn ein Fenster im Raum geöffnet wird, beim Schließen wird die Heizung wieder eingeschaltet. Da die automatischen Funktionen der Thermostate mitunter die Heizung wieder einschalten (Zeitplan), obwohl ich die Fenster offen habe, habe ich ein weiteres Skript, mit einem Trigger auf Setting.power State, dass die Heizung wieder ausschaltet, wenn das Fenster immer noch offen ist. Funktioniert auch prima. Dennoch finde ich den Datenpunkt clearZoneOverlay nicht sauber definiert, da er als Number definiert ist. Nach meinem Verständnis wäre eine Definition als Logikwert passender. Dies habe ich einfach manuell in dem Datenpunkt geändert. Nun kommt auch keine Warnung mehr im Log, wenn ich den Datenpunkt per Skript steuere. Wie gesagt, es funktioniert auch so. In meiner Variante aber sauberer, da keine Warnung im Log. Ich bin aber sehr froh, dass es diesen Adapter gibt, da man nun nahezu unerschöpfliche Möglichkeiten über den IOBroker hat. Realisiert habe ich bereits, dass die Heizung ab einer definierten Außentemperatur komplett abgeschaltet wird. Etwas weiter oben wird eine Möglichkeit beschrieben, die Away Funktion, die man ja per Abo eigentlich bezahlen muss, per Skript nachbilden kann - auch noch ganz reizvoll.
                              Ich bin besonders dankbar darüber, dass ich nun sämtliche Sensoren und Geräte, die ich im ioBroker habe, nun mit meinen Tado frei kombinieren kann und das auch noch ohne zeitliche Verzögerungen (ich hatte davor die Fritz!Dect 301 Thermostate, da hat es bis zu 30 Minuten gedauert, bis die Befehle an die Thermostate übermittelt wurden).
                              Also vielen Dank noch einmal an die Entwickler des Adapters!

                              S Offline
                              S Offline
                              Stormbringer
                              wrote on last edited by
                              #177

                              @hilde0407 Bin noch auf dem HAM Adapter, weil ich auf die Modus Ansteuerung noch warten würde... Aber irgendwie klingt das mt dem clearZoneOverlay, Zoneoverlay ect. so wie wenn mans darüber indirekt auch realisieren könnte. Was machen denn die Datenpunkte? Modus wechseln?

                              Angaben zur Installation: JS Controller 5.0.12, npm 9.6.7, node 18.17.1, auf einem Intel NUC mit Ubuntu 22.04

                              H 1 Reply Last reply
                              0
                              • S Stormbringer

                                @hilde0407 Bin noch auf dem HAM Adapter, weil ich auf die Modus Ansteuerung noch warten würde... Aber irgendwie klingt das mt dem clearZoneOverlay, Zoneoverlay ect. so wie wenn mans darüber indirekt auch realisieren könnte. Was machen denn die Datenpunkte? Modus wechseln?

                                H Offline
                                H Offline
                                hilde0407
                                wrote on last edited by
                                #178

                                @Stormbringer Genau so ist es! Man steuert es auf diese Art und Weise vollumfänglich indirekt! Ich hatte zuvor auch den HAM Adapter und war damit auch ganz zufrieden. Dies ist dann aber die direktere Variante und funktioniert bisher in allen Belangen genau so, wie ich es haben möchte. Eine direkte Modus Ansteuerung gibt es tatsächlich nicht (noch nicht einmal den Datenpunkt), ist aber auch nicht nötig. Komfortabel ist auch, dass beim Auslösen von ClearZoneOverlay die zuvor eingestellte Temperatur automatisch wieder aktiviert wird.

                                S 2 Replies Last reply
                                0
                                • HappyTeaFriendH HappyTeaFriend

                                  @hilde0407 habe ich ähnlich auch realisiert und bin bisher echt mega zufrieden.
                                  Eine Frage: welche Funktionen schalten bei dir denn die Thermostate automatisch wieder an, was du oben beschrieben hast? Ist bei mir bisher noch nicht passiert, aber wäre interessant zu wissen, so dass ich eventuell auch noch ein Script realisieren muss, um dies bei offenen Fenstern zu verhindern.

                                  H Offline
                                  H Offline
                                  hilde0407
                                  wrote on last edited by hilde0407
                                  #179

                                  @HappyTeaFriend Das Schalten von ClearZoneOverlay schaltet die Heizung auch wieder mit an!

                                  Anbei ein Beispielsblocky für die Fenster offen Steuerung (Xiaomi Fenster Sensoren):

                                  <xml xmlns="http://www.w3.org/1999/xhtml">
                                    <variables>
                                      <variable type="" id="Efy@y-rOPU4?3%#Wlr(}">Fensterstatus</variable>
                                      <variable type="undefined" id="Wohnzimmer_Tür_offen_TimeOut">Wohnzimmer_Tür_offen_TimeOut</variable>
                                    </variables>
                                    <block type="comment" id="=3!jd`1|Hy3cqO)+jsgy" x="-688" y="-787">
                                      <field name="COMMENT">Datenpunkt Fensterstatus_Wohnzimmer nach offenen Fenstern steuern</field>
                                      <next>
                                        <block type="on_ext" id="^bQq#li?YG^xQ3v8d:^j">
                                          <mutation items="2"></mutation>
                                          <field name="CONDITION">ne</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="[c.rI$s!M-LAXx~V/L5s">
                                              <field name="oid">mihome.0.devices.magnet_158d0002750ce5.state</field>
                                            </shadow>
                                          </value>
                                          <value name="OID1">
                                            <shadow type="field_oid" id="??3!`$OGv6Z41YQ6]3Xn">
                                              <field name="oid">mihome.0.devices.magnet_158d000277b44f.state</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="variables_set" id="#OgJ{jU-g]Iz*GB~AtrN">
                                              <field name="VAR" id="Efy@y-rOPU4?3%#Wlr(}" variabletype="">Fensterstatus</field>
                                              <value name="VALUE">
                                                <block type="math_number" id=")m+~Eyxbu0AZY%,T%Dur">
                                                  <field name="NUM">0</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="controls_if" id="62hjlw]D77L#[X=X_q%L">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="=y,-Az2HI3*SL{sn%pkp">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="-z{owY$^VF+`o%I^7qMx">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">mihome.0.devices.magnet_158d0002750ce5.state</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_boolean" id="k6)iLIIOB=T!|FF,r2;r">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="math_change" id="8Vr*!@!Z4{;hMzsi9JV~">
                                                      <field name="VAR" id="Efy@y-rOPU4?3%#Wlr(}" variabletype="">Fensterstatus</field>
                                                      <value name="DELTA">
                                                        <shadow type="math_number" id="I*~Q{(QK8Z]S~.Hh3];)">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                      </value>
                                                    </block>
                                                  </statement>
                                                  <next>
                                                    <block type="controls_if" id="sfm=qXTY^-QieP(u9ob%">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="aI/5Qi2po=l@i-eW*l-+">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="get_value" id="vcwI;f}I8Zf|iN3m_`r@">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">mihome.0.devices.magnet_158d000277b44f.state</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="logic_boolean" id="YEWb~b)mL}r;+-@KAw%o">
                                                              <field name="BOOL">TRUE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="math_change" id="pDnvp8iTF$m5]b(*{Ze_">
                                                          <field name="VAR" id="Efy@y-rOPU4?3%#Wlr(}" variabletype="">Fensterstatus</field>
                                                          <value name="DELTA">
                                                            <shadow type="math_number" id="LGBsTsA9}}7K2eiPB8{*">
                                                              <field name="NUM">1</field>
                                                            </shadow>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="update" id="bQx5X}CtO6=UZU:IS{Ny">
                                                          <mutation delay_input="false"></mutation>
                                                          <field name="OID">javascript.0.Xiaomi.Fensterstatus_Wohnzimmer</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="variables_get" id="3T7#K+hW]_2giP8oo81r">
                                                              <field name="VAR" id="Efy@y-rOPU4?3%#Wlr(}" variabletype="">Fensterstatus</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                          <next>
                                            <block type="comment" id="s9:JqZL~z]@.QK}P%N5|">
                                              <field name="COMMENT">Heizung ein oder ausschalten, wenn Fenster offen oder zu</field>
                                              <next>
                                                <block type="on_ext" id="_|5{4AEHysftVafeW~ol">
                                                  <mutation items="1"></mutation>
                                                  <field name="CONDITION">ne</field>
                                                  <field name="ACK_CONDITION"></field>
                                                  <value name="OID0">
                                                    <shadow type="field_oid" id="hYI,BpxN,~A019[:cO;T">
                                                      <field name="oid">javascript.0.Xiaomi.Fensterstatus_Wohnzimmer</field>
                                                    </shadow>
                                                  </value>
                                                  <statement name="STATEMENT">
                                                    <block type="controls_if" id="P9]U*,pX[SeAMt}c3)Z%">
                                                      <mutation else="1"></mutation>
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="N^/iO*[FVDA]QDqr%iJW">
                                                          <field name="OP">GT</field>
                                                          <value name="A">
                                                            <block type="get_value" id="~iLcTPAqZp[O]ES:`Hor">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">javascript.0.Xiaomi.Fensterstatus_Wohnzimmer</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id=".~jb;8n(+EYN8eWl[TSI">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="controls_if" id="_Or7EB:($CN8ok!#RPW$">
                                                          <value name="IF0">
                                                            <block type="logic_compare" id="I3b5T-+Xu*7lLSNHk::1">
                                                              <field name="OP">EQ</field>
                                                              <value name="A">
                                                                <block type="get_value" id=")I[wYw@!hv+~Y}ab{5;0">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">tado.0.371509.Rooms.2.setting.power</field>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <block type="text" id="/|=n/Qt)XO32P8_#mEA5">
                                                                  <field name="TEXT">ON</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <statement name="DO0">
                                                            <block type="control" id="w;YL4EXO55MGL|p;6rW]">
                                                              <mutation delay_input="false"></mutation>
                                                              <field name="OID">tado.0.371509.Rooms.2.setting.power</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="text" id="gl@m)m*tby#sEx~*(7|Z">
                                                                  <field name="TEXT">OFF</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </statement>
                                                      <statement name="ELSE">
                                                        <block type="controls_if" id="d1;7:_Dk.l*Jd8|3h|_G">
                                                          <value name="IF0">
                                                            <block type="logic_compare" id="79#9`.M`r^b##6%Pw-K|">
                                                              <field name="OP">EQ</field>
                                                              <value name="A">
                                                                <block type="get_value" id="HT)W|?2cda9J:_eZ*s.l">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">tado.0.371509.Rooms.2.setting.power</field>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <block type="text" id="}+4PBOmzR.|d-G3Uxua9">
                                                                  <field name="TEXT">OFF</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <statement name="DO0">
                                                            <block type="control" id="z3_@J=Un`)L_:-2CCg0^">
                                                              <mutation delay_input="false"></mutation>
                                                              <field name="OID">tado.0.371509.Rooms.2.overlay.clearZoneOverlay</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="logic_boolean" id="xb7=0yRu`oyYKPC4rsQF">
                                                                  <field name="BOOL">TRUE</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </statement>
                                                  <next>
                                                    <block type="comment" id="c{*^*)M6YG*I^|e|SXkF">
                                                      <field name="COMMENT">Boost Modus ausschalten, wenn Wohnzimmertür 5 Minuten offen steht</field>
                                                      <next>
                                                        <block type="on_ext" id="~ByS[MJXmarnf`REiOL[">
                                                          <mutation items="1"></mutation>
                                                          <field name="CONDITION">ne</field>
                                                          <field name="ACK_CONDITION"></field>
                                                          <value name="OID0">
                                                            <shadow type="field_oid" id="QxvxguLqEw.bEKJ15r~W">
                                                              <field name="oid">mihome.0.devices.magnet_158d000273da4e.state</field>
                                                            </shadow>
                                                          </value>
                                                          <statement name="STATEMENT">
                                                            <block type="controls_if" id="5`049RAShcj2ZMP|A_s,">
                                                              <mutation elseif="1"></mutation>
                                                              <value name="IF0">
                                                                <block type="logic_compare" id="=0_2*0DgpRh`E3T|~zBB">
                                                                  <field name="OP">EQ</field>
                                                                  <value name="A">
                                                                    <block type="on_source" id="H.1zG%y*d+nbq$VQLHC3">
                                                                      <field name="ATTR">state.val</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="logic_boolean" id="%*RVD2qSgK0[2LXE4g5@">
                                                                      <field name="BOOL">TRUE</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO0">
                                                                <block type="timeouts_settimeout" id="C;mn0L/lQzv+h~@zu3=Q">
                                                                  <field name="NAME">Wohnzimmer_Tür_offen_TimeOut</field>
                                                                  <field name="DELAY">10</field>
                                                                  <field name="UNIT">sec</field>
                                                                  <statement name="STATEMENT">
                                                                    <block type="controls_if" id="X_|!-{zaH?padLX8*8EX">
                                                                      <value name="IF0">
                                                                        <block type="logic_compare" id="5tfs;4gRb|`6v1bxjw2C">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="get_value" id="`E7Hf10Wqy+6_5p:ZVB*">
                                                                              <field name="ATTR">val</field>
                                                                              <field name="OID">javascript.0.Xiaomi.Schalter_Heizung</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="logic_boolean" id="3m5k(yWr{M2Qz7qp1:(o">
                                                                              <field name="BOOL">TRUE</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO0">
                                                                        <block type="control" id="Z[a8.`i@ylba|0Ctq=Rb">
                                                                          <mutation delay_input="false"></mutation>
                                                                          <field name="OID">javascript.0.Xiaomi.Schalter_Heizung</field>
                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                          <value name="VALUE">
                                                                            <block type="logic_boolean" id="{T+%YTbN::?=UQHq$tc0">
                                                                              <field name="BOOL">FALSE</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </statement>
                                                                    </block>
                                                                  </statement>
                                                                </block>
                                                              </statement>
                                                              <value name="IF1">
                                                                <block type="logic_compare" id="}NT]FTqx!JHW7*_Q.P![">
                                                                  <field name="OP">EQ</field>
                                                                  <value name="A">
                                                                    <block type="on_source" id="jgRW;_%J_jn.eYVtrvef">
                                                                      <field name="ATTR">state.val</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="logic_boolean" id="4Qm15j]Gl~/e@9:AWfO/">
                                                                      <field name="BOOL">FALSE</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO1">
                                                                <block type="timeouts_cleartimeout" id="}riwxHoGLjq$XyACbQp!">
                                                                  <field name="NAME">Wohnzimmer_Tür_offen_TimeOut</field>
                                                                </block>
                                                              </statement>
                                                            </block>
                                                          </statement>
                                                          <next>
                                                            <block type="comment" id="o#^:cur]Ep0d%^M3oY!x">
                                                              <field name="COMMENT">Wenn Heizung über Tado eingeschaltet wird, obwohl Fenster offen, dann wieder ausschalten</field>
                                                              <next>
                                                                <block type="on_ext" id="%1n?jrlPaIOu06zxXw-3">
                                                                  <mutation items="1"></mutation>
                                                                  <field name="CONDITION">ne</field>
                                                                  <field name="ACK_CONDITION"></field>
                                                                  <value name="OID0">
                                                                    <shadow type="field_oid" id="DNHasW|%3hq=}/Bty@=}">
                                                                      <field name="oid">tado.0.371509.Rooms.2.setting.power</field>
                                                                    </shadow>
                                                                  </value>
                                                                  <statement name="STATEMENT">
                                                                    <block type="controls_if" id="8_mT-vWL9UIDM,d!1`=P">
                                                                      <value name="IF0">
                                                                        <block type="logic_compare" id="ioLeA}E]@`.}6a-zY:BL">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="on_source" id="ZpXsuQ6_RhO2quwc`eSf">
                                                                              <field name="ATTR">state.val</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="text" id="zsit@u5j!]h*3b9HQevw">
                                                                              <field name="TEXT">ON</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <statement name="DO0">
                                                                        <block type="controls_if" id="I)*pOL8cCGpO=|x4y`rT">
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="O@TKFIDN_Rtraip}7p1X">
                                                                              <field name="OP">GT</field>
                                                                              <value name="A">
                                                                                <block type="get_value" id="sS$f|y{Z{}|2N%=4++M4">
                                                                                  <field name="ATTR">val</field>
                                                                                  <field name="OID">javascript.0.Xiaomi.Fensterstatus_Wohnzimmer</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="math_number" id="7AEwG0!A(zX-VeQ+nh)/">
                                                                                  <field name="NUM">0</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="control" id="T?Pvq|!4,+YE_`pB:/Q3">
                                                                              <mutation delay_input="false"></mutation>
                                                                              <field name="OID">tado.0.371509.Rooms.2.setting.power</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE">
                                                                                <block type="text" id="_PS#Xh}suf6E1^B]Hld2">
                                                                                  <field name="TEXT">OFF</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                        </block>
                                                                      </statement>
                                                                    </block>
                                                                  </statement>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </xml>
                                  
                                  1 Reply Last reply
                                  0
                                  • HappyTeaFriendH HappyTeaFriend

                                    @hilde0407 habe ich ähnlich auch realisiert und bin bisher echt mega zufrieden.
                                    Eine Frage: welche Funktionen schalten bei dir denn die Thermostate automatisch wieder an, was du oben beschrieben hast? Ist bei mir bisher noch nicht passiert, aber wäre interessant zu wissen, so dass ich eventuell auch noch ein Script realisieren muss, um dies bei offenen Fenstern zu verhindern.

                                    H Offline
                                    H Offline
                                    hilde0407
                                    wrote on last edited by
                                    #180

                                    @HappyTeaFriend Die Termostate werden beispielsweise wieder eingeschaltet, wenn Du in der Tado App einen Zeitplan hinterlegt hast.

                                    1 Reply Last reply
                                    0
                                    • H hilde0407

                                      @Stormbringer Genau so ist es! Man steuert es auf diese Art und Weise vollumfänglich indirekt! Ich hatte zuvor auch den HAM Adapter und war damit auch ganz zufrieden. Dies ist dann aber die direktere Variante und funktioniert bisher in allen Belangen genau so, wie ich es haben möchte. Eine direkte Modus Ansteuerung gibt es tatsächlich nicht (noch nicht einmal den Datenpunkt), ist aber auch nicht nötig. Komfortabel ist auch, dass beim Auslösen von ClearZoneOverlay die zuvor eingestellte Temperatur automatisch wieder aktiviert wird.

                                      S Offline
                                      S Offline
                                      Stormbringer
                                      wrote on last edited by
                                      #181

                                      @hilde0407 Danke klingt vielversprechend, dann wird das bald mein nächstes Projekt, wenn man ihn schon produktiv nutzen kann 😉 @Dutchman sollte mal seinen PayPal Account reinstellen, dass er danke nicht nur als Wörter bekommt sondern auch in 🍻😉😜

                                      Angaben zur Installation: JS Controller 5.0.12, npm 9.6.7, node 18.17.1, auf einem Intel NUC mit Ubuntu 22.04

                                      1 Reply Last reply
                                      1
                                      • H hilde0407

                                        @Stormbringer Genau so ist es! Man steuert es auf diese Art und Weise vollumfänglich indirekt! Ich hatte zuvor auch den HAM Adapter und war damit auch ganz zufrieden. Dies ist dann aber die direktere Variante und funktioniert bisher in allen Belangen genau so, wie ich es haben möchte. Eine direkte Modus Ansteuerung gibt es tatsächlich nicht (noch nicht einmal den Datenpunkt), ist aber auch nicht nötig. Komfortabel ist auch, dass beim Auslösen von ClearZoneOverlay die zuvor eingestellte Temperatur automatisch wieder aktiviert wird.

                                        S Offline
                                        S Offline
                                        Stormbringer
                                        wrote on last edited by Stormbringer
                                        #182

                                        @hilde0407 Test grad n bisschen rum. Aber wie machst du das ohne Modusangabe mit dem Boost? Dann kann man ja nicht abbilden ob vor den 25 Grad Manuell oder Auto war. Bzw. bei Nachtansenkung hätte ich dann das gleiche Problem mit Rückkehr zu auto oder manuell.

                                        Oder hast du dafür und für die Batterieanzeige in % den HAM Adapter noch laufen?

                                        Aber der Rest wär glaub ich absolut primitiv einfach zu steuern. Da muss man sich nach dem HAM Plugin erst mal wieder dran gewöhnen, dass es ioBroker typisch leicht ist. Absolut genialer Adapter. Top Arbeit bisher 😉👍🏻

                                        Angaben zur Installation: JS Controller 5.0.12, npm 9.6.7, node 18.17.1, auf einem Intel NUC mit Ubuntu 22.04

                                        H 1 Reply Last reply
                                        0
                                        • J Offline
                                          J Offline
                                          j_o_e
                                          wrote on last edited by
                                          #183

                                          Moin,

                                          vielen Dank für die Arbeit. Bin iobroker-Neuling, habe es aber mit Hilfe des Beispielblocky von @hilde0407 wunderbar hinbekommen.

                                          Eine Frage: Wie ließe sich das Einschalten der Heizung in einem Raum verzögern, wenn die Fenster mindestens X Minuten auf waren? Hintergrund ist, dass ich bspw. nach dem richtigen Durchlüften morgens vermeiden will, dass die Heizung sofort anschließend Vollgas gibt.

                                          Häufig normalisiert sich die Temperatur ja innerhalb von 15-20 Minuten schon wieder, so dass die Heizungen erst dann anspringen sollten.

                                          Jemand eine Idee?

                                          Beste Grüße!

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          614

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe