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. [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    21
    1
    835

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

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

[Vorlage] Heizungsthermostatsteuerung 2.1 - Script

Scheduled Pinned Locked Moved Skripten / Logik
javascripttemplateheatingclimate
1.1k Posts 115 Posters 400.5k Views 61 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.
  • T Offline
    T Offline
    thomasmazik
    wrote on last edited by
    #682

    Hi,

    erstmal GW zum, dass dein fehler weg ist. Was hast Du denn gemacht, dass das Scripz jetzt läuft? Ich hae nämlich genau den gleichen Zeileninhalt bei 2207 und den gleichen Fehler.

    Gruß Tomek

    1 Reply Last reply
    0
    • T Offline
      T Offline
      torti0111
      wrote on last edited by
      #683

      Ich hatte beim enum.rooms noch mehrere Räume drin, denen die gleichen Geräte zugeordet waren ( der Cube hat sich mal verabschiedet, da habe ich die Raumnamen wohl geändert. dadurch hatte ich jedes Thermostat 2 Räumen zugeordet)

      Jedoch läuft das Script immernoch nicht. Siehe den Post oben.

      1 Reply Last reply
      0
      • L Offline
        L Offline
        looxer01
        wrote on last edited by
        #684

        Hi,

        aufgrund der letzten Meldungen habe ich mal ein paar FAQs zusammengetragen.

        Bitte um Feedback zur Ergänzung. Ich werde diese dann im ersten Post hochladen, wenn komplett.

        vG Looxer

        FAQs
        305_heizungsscript_faq.docx

        1 Reply Last reply
        0
        • F Offline
          F Offline
          frostnatt
          wrote on last edited by
          #685

          @dav71701:

          Hallo Max,

          hast Du eine Lösung für das Delay Problem gefunden? Bei mir ist es genauso, habe auch die HM-CC-RT-DN in Verbindung mit den Xiaomi Aqara Sensoren im Einsatz, was auch bis auf das "Delay nach Verschluss" alles super funktioniert (auch von mir ein großes Dankeschön in die Entwickler!).

          Wäre so wie Du auch sehr an eine Lösung interessiert. `

          Hallo,

          leider habe ich aktuell keine Lösung dafür. Mir fehlt momentan die Zeit für das Debugging…

          Ich wollte hier noch ein anderes Problem ansprechen, und zwar geht bei mir die Umschaltung der Profile über iCal nicht. Globale Events wie Gäste, Party, Urlaub_Anwesend/Abwesend etc. werden vom Script korrekt verarbeitet. Wird im Kalender "Global_Profil_2" angelegt, erfolgt keine Triggerung wenn das Ereignis eintritt. Erst wenn im View eine beliebige Änderung vorgenommen wird (z.B. "Gültigkeit in Min" wird geändert) wird ein iCal-Event erkannt und die Solltemperatur angepasst.

          2 Profile sind aktiviert.

          // Anzahl der Profile. i.d.R. sollten maximal 3 Profile genuegen - Profile werden z.B. fuer Events aus ICAL verwendet
          var MaxProfile = 2;   // Maximal genutzte Profile pro Raum (gering halten ) Zahl zwischen 1 und 9
          
          

          Globale Umschaltung der Profile ist aktiviert.

          var UseEventsGlobalParameter = true;            // mit diesen Events koennen Urlaub Party etc geplant werden - Empfehlung erst im zweiten Schritt aktivieren
          var UseEventsGlobalProfilSelect = true;         // Events mit denen das Profil umgeschaltet werden kann - fuer alle Raeume  - Empfehlung erst im zweiten Schritt aktivieren
          var UseEventsRaumProfilSelect = false;           // Events mit denen das Profil fuer einzelne Raeume umgeschaltet werden kann - Empfehlung erst im zweiten Schritt aktivieren
          var EventG_UrlaubAbwesend = "Urlaub_Abwesend";   // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          var EventG_UrlaubAnwesend = "Urlaub_Anwesend";   // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          var EventG_Party          = "Party";             // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          var EventG_Gaeste         = "Gaeste";            // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          var EventG_Abwesend       =  "Keiner_DA";        // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          var EventG_Feiertag       =  "Feiertag";         // dieses Event muss in ICAL angelegt werden wenn UseEventsGlobalParameter = true ist
          
          // Die folgenden EVENT Texte muessen in ICAL angelegt werden. Sobald die Texte im google Kalender
          // aktiv sind wird das Event fuer die Heizungsthermostatsteuerung ausgewertet.
          // Achtung die Zeichen <> und der Text innerhalb dieser Klammer duerfen nicht geaendert werden
          // siehe Dokumentation fuer mehr infos
          var UseEventG_Profil     = "Global_Profil_<profilnummer>";       // Events mit denen das Profil umgeschaltet werden kann -  muss in ICAL angelegt werden wenn UseEventP_Profil = true ist
          var UseEventR_Profil     = "<raumname>_Profil_<profilnummer>";   // Events mit denen das Raumprofil umgeschaltet werden kann -  muss in ICAL angelegt werden wenn UseEventsRaumProfilSelect = true ist</profilnummer></raumname></profilnummer> 
          

          iCal setzt den entsprechenden Datenpunkt wie erwartet auf true, es wird aber nicht getriggert…

          Weiß jemand Rat?

          1 Reply Last reply
          0
          • L Offline
            L Offline
            looxer01
            wrote on last edited by
            #686

            @frostnatt:

            Ich wollte hier noch ein anderes Problem ansprechen, und zwar geht bei mir die Umschaltung der Profile über iCal nicht. Globale Events wie Gäste, Party, Urlaub_Anwesend/Abwesend etc. werden vom Script korrekt verarbeitet. Wird im Kalender "Global_Profil_2" angelegt, erfolgt keine Triggerung wenn das Ereignis eintritt. Erst wenn im View eine beliebige Änderung vorgenommen wird (z.B. "Gültigkeit in Min" wird geändert) wird ein iCal-Event erkannt und die Solltemperatur angepasst. `

            Hi,

            melde mich wieder nach einem unfreiwilligen shut down meinerseits.

            das kann eigentlich keine grosse sache sein. Schau ich mir an.

            vG Looxer

            1 Reply Last reply
            0
            • L Offline
              L Offline
              looxer01
              wrote on last edited by
              #687

              @frostnatt:

              lobale Events wie Gäste, Party, Urlaub_Anwesend/Abwesend etc. werden vom Script korrekt verarbeitet. Wird im Kalender "Global_Profil_2" angelegt, erfolgt keine Triggerung wenn das Ereignis eintritt. `
              Kurze Frage:

              hast du die Variable in den Einstellungen "UseEventsRaumProfilSelect" auf true gesetzt ?

              EDIT

              sorry vergiss es. Ich sehe, dass du eine Globale Umschaltung nutzen willst.

              vG Looxer

              1 Reply Last reply
              0
              • L Offline
                L Offline
                looxer01
                wrote on last edited by
                #688

                @frostnatt:

                Globale Events wie Gäste, Party, Urlaub_Anwesend/Abwesend etc. werden vom Script korrekt verarbeitet. Wird im Kalender "Global_Profil_2" angelegt, erfolgt keine Triggerung wenn das Ereignis eintritt. `
                Hi kannst du mal bitte folgendes Coding austauschen

                   // Globales Profil ist prio2
                    if (UseEventsGlobalProfilSelect === true) {
                      for (i = 1; i <= MaxProfile; i++) {
                        ProfilName = UseEventG_Profil;
                        ProfilName = UseEventG_Profil.replace("<profilnummer>", i);
                        if (getState(ICALPath + "." + ProfilName).val) {
                            setOwnState(pathprofile+".AktivesEventProfil", i);
                            Source_Profil = i;
                            Source_ICALEvent = ProfilName;
                            return i;
                        }
                      } // ende for i
                    } // ende if globalProfilSelect</profilnummer> 
                

                und zwar mit:

                   // Globales Profil ist prio2
                    if (UseEventsGlobalProfilSelect === true) {
                      for (i = 1; i <= MaxProfile; i++) {
                        ProfilName = UseEventG_Profil;
                        ProfilName = UseEventG_Profil.replace("<profilnummer>", i);
                        if (getState(ICALPath + "." + ProfilName).val) {
                            setState(pathprofile+".AktivesEventProfil", i);
                            Source_Profil = i;
                            Source_ICALEvent = ProfilName;
                            return i;
                        }
                      } // ende for i
                    } // ende if globalProfilSelect</profilnummer> 
                

                das löst wahrscheinlich das Problem. Ist für mich aber eine Trockenübung, da ich kein System im Zugriff habe.

                Sollte das die Lösung sein muss das gleiche für die Raumprofile gemacht werden.

                Mache ich am WE.

                vG Looxer

                1 Reply Last reply
                0
                • L Offline
                  L Offline
                  looxer01
                  wrote on last edited by
                  #689

                  @AxelF1977:

                  Gab es denn eine Lösung für mein geschildertes Problem? `
                  Hi Axel,

                  hast du dein Problem gelöst ?

                  Hab mir deine View angesehen - sieht super aus.

                  Dort ist mir aufgefallen, dass du einen NaN Wert hast.

                  Sieht so aus, dass da das mapping vom View zu den Datenpunkten nicht korrekt ist.

                  vG Looxer

                  1 Reply Last reply
                  0
                  • L Offline
                    L Offline
                    looxer01
                    wrote on last edited by
                    #690

                    @as15:

                    In dem NoneHMSenorTab muss man an der 4. Stelle sagen welcher Zustand bei geschlossenem Fenster sein soll. Ich habe einen Sensor, da ist dieser Zustand "true". Trage ich jedoch true ein, wird bei offenem Fenster der "Verschlussstatus" mit false eingetragen und bei geschlossenem Fenster ein true. (Also falsch herum). Komischerweise kann ich das System nicht austricksen, wenn ich an der 4. Stelle ein false eintrage… Es muss also i-wo anders noch ein Fehler sein.

                    Wäre cool wenn du das Problem lösen könntest. `

                    Hi,

                    die betreffende Stelle im Coding ist hier:

                         if (SensorStatus === true || SensorStatus === false ) {
                             if ( debug ) { log("Routine SensorStatCalc: Sensorstatus ist "+ SensorStatus + " fuer devtype = " + devtype + " und id "+ id); }
                            return SensorStatus;
                        }
                    
                    

                    Da habe ich true und false fest verdrahtet. Du vermutest aber zurecht, dass es auch andersherum gehen müsste, weil ja so eingestellt.

                    Wahrscheinlich reicht es diese Stelle einfach auszukommentieren.

                    Das muss aber mit verschiedenen Konstellationen getestet werden.

                    Für deinen Fall sollte es aber gehen. Kannst du das mal checken ?

                    vG Looxer

                    1 Reply Last reply
                    0
                    • L Offline
                      L Offline
                      looxer01
                      wrote on last edited by
                      #691

                      Hi,

                      falls es noch offene Probleme gibt um die ich mich kümmern sollte, dann postet diese bitte hier nochmal.

                      Ist ein wenig muehsam die Historie aufzuarbeiten.

                      vG Looxer

                      1 Reply Last reply
                      0
                      • AxelF1977A Offline
                        AxelF1977A Offline
                        AxelF1977
                        wrote on last edited by
                        #692

                        @looxer01:

                        Hi,

                        falls es noch offene Probleme gibt um die ich mich kümmern sollte, dann postet diese bitte hier nochmal.

                        Ist ein wenig muehsam die Historie aufzuarbeiten.

                        vG Looxer `

                        Hi looxer01,

                        danke, gerne hier nochmal mein Problem.

                        @AxelF1977:

                        Hallo looxer01,

                        vielen Dank an dieser Stelle für das Script. Der Wahnsinn. So muss ich nicht jedes Mal in die CCU, um was anzupassen. Allerdings habe ich auch das Problem, das die manuellen Werte leider auf 4,5°C gesetzt werden. Ich weiß das Thema gab es schon, ich habe es in den vielen Beiträgen aber nicht mehr gefunden. Siehe Screenshots. Gab es hier schon eine Lösung? `

                        Screenshots in Beitrag viewtopic.php?f=21&t=10096&start=640#p190026

                        ASROCK Deskmini Intel I3 8100 16GB mit Proxmox VM ioBroker VM DIYHue| CCU piVCCU + FHEM auf Raspberry | Maria DB mit Grafana und Prometheus auf Tinker Board

                        1 Reply Last reply
                        0
                        • ChaotC Offline
                          ChaotC Offline
                          Chaot
                          wrote on last edited by
                          #693

                          Du wolltest (24.10.) noch was an der Boost Funktion ändern.

                          Hattest du inzwischen Gelegenheit dazu oder habe ich das irgendwie übersehen?

                          Ich komme zwar mit meiner Krückenlösung (4.11.) zurecht, aber schöner wäre es doch wenn alles zusammen laufen würde.

                          Ist es bei der angekündigten Lösung dann auch möglich bei "Fenster auf" den Thermostaten ganz auf "aus" zu stellen anstatt auf eine Absenktemperatur?

                          ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

                          1 Reply Last reply
                          0
                          • L Offline
                            L Offline
                            looxer01
                            wrote on last edited by
                            #694

                            @Chaot:

                            Du wolltest (24.10.) noch was an der Boost Funktion ändern.

                            Hattest du inzwischen Gelegenheit dazu oder habe ich das irgendwie übersehen? `

                            Ich hoffe, dass ich nächste Woche dazu komme. Leider war es mir die letzten 4 Wochen nicht möglich daran zu arbeiten.

                            @Chaot:

                            Ist es bei der angekündigten Lösung dann auch möglich bei "Fenster auf" den Thermostaten ganz auf "aus" zu stellen anstatt auf eine Absenktemperatur? `

                            Die Boost-Funktion sollte für eine einstellbare Zeit das Thermostat auf eine BoostTemp stellen. Bei Fenster Auf soll dann aber trotzdem auf die Absenktemp gestellt werden. Eine Änderung der Vorgehensweise hatte ich nicht im Sinn.

                            Wenn du aber weniger als 12 Grad einstellen möchtest, dann kannst du das ja machen. - möglichst Synchron mit den Einstellungen in der CCU.

                            Allerdings gebe ich zu bedenken, dass ein Raum nicht zu stark abkühlen sollte. Das gibt auf Dauer Feuchtigkeitsprobleme.

                            vG Looxer

                            1 Reply Last reply
                            0
                            • D Offline
                              D Offline
                              dav71701
                              wrote on last edited by
                              #695

                              @dav71701:

                              Hallo Max,

                              hast Du eine Lösung für das Delay Problem gefunden? Bei mir ist es genauso, habe auch die HM-CC-RT-DN in Verbindung mit den Xiaomi Aqara Sensoren im Einsatz, was auch bis auf das "Delay nach Verschluss" alles super funktioniert (auch von mir ein großes Dankeschön in die Entwickler!).

                              Wäre so wie Du auch sehr an eine Lösung interessiert. `

                              Hi,

                              habe heute das aktuelle Skript "heizungsscript_201_Published" übernommen und folgenden Kommentar gelesen:

                              ` > // Naechste Version moegliche Erweiterungen/Aenderungen

                              //…..........................Delay fuer Nicht-HM-Geräaete (kann auf Nachfrage implementiert werden. `

                              Das wäre sehr toll.

                              1 Reply Last reply
                              0
                              • T Offline
                                T Offline
                                torti0111
                                wrote on last edited by
                                #696

                                Cool wäre, wenn in deinen FAQ's stehen würde, wie man die Manuelle Verstellung mittels Alexa hinbekommt.

                                Wenn ich den Temperaturwert der manuellen Verstellung mit Alexa verändere wird er direkt wieder überschrieben.

                                1 Reply Last reply
                                0
                                • L Offline
                                  L Offline
                                  looxer01
                                  wrote on last edited by
                                  #697

                                  @dav71701:

                                  abe heute das aktuelle Skript "heizungsscript_201_Published" übernommen und folgenden Kommentar gelesen:

                                  // Naechste Version moegliche Erweiterungen/Aenderungen

                                  //…..........................Delay fuer Nicht-HM-Geräaete (kann auf Nachfrage implementiert werden.

                                  Das wäre sehr toll. `

                                  ok, nehme ich mit auf.

                                  vG looxer

                                  1 Reply Last reply
                                  0
                                  • L Offline
                                    L Offline
                                    looxer01
                                    wrote on last edited by
                                    #698

                                    @torti0111:

                                    Cool wäre, wenn in deinen FAQ's stehen würde, wie man die Manuelle Verstellung mittels Alexa hinbekommt.

                                    Wenn ich den Temperaturwert der manuellen Verstellung mit Alexa verändere wird er direkt wieder überschrieben. `

                                    Eine Alexa-Verstellung sollte doch keinen Unterschied zu einer beliebigen anderen manuellen Verstellung machen.

                                    Hast du einen Wert im View für die manuelle Dauer eingegeben ?

                                    vG Looxer

                                    1 Reply Last reply
                                    0
                                    • D Offline
                                      D Offline
                                      dav71701
                                      wrote on last edited by
                                      #699

                                      @looxer01:

                                      @dav71701:

                                      abe heute das aktuelle Skript "heizungsscript_201_Published" übernommen und folgenden Kommentar gelesen:

                                      // Naechste Version moegliche Erweiterungen/Aenderungen

                                      //…..........................Delay fuer Nicht-HM-Geräaete (kann auf Nachfrage implementiert werden.

                                      Das wäre sehr toll. `

                                      ok, nehme ich mit auf.

                                      vG looxer `

                                      super, vielen dank!

                                      1 Reply Last reply
                                      0
                                      • T Offline
                                        T Offline
                                        torti0111
                                        wrote on last edited by
                                        #700

                                        @looxer01:

                                        @torti0111:

                                        Cool wäre, wenn in deinen FAQ's stehen würde, wie man die Manuelle Verstellung mittels Alexa hinbekommt.

                                        Wenn ich den Temperaturwert der manuellen Verstellung mit Alexa verändere wird er direkt wieder überschrieben. `

                                        Eine Alexa-Verstellung sollte doch keinen Unterschied zu einer beliebigen anderen manuellen Verstellung machen.

                                        Hast du einen Wert im View für die manuelle Dauer eingegeben ?

                                        vG Looxer `

                                        Ich habe meinen Fehler gerade entdeckt ;-)

                                        Ich habe auf den Datenpunkt in der View geschrieben also den :

                                        javascript.0.Heizung.Heizplan.Bad.View_Manually_Adjusted ###Im View manuell eingestellte Temperatur - 0=reset###

                                        Wenn ich das auf den Wert vom Wandthermostat schreibe mittels alexa sollte es klappen xD

                                        Edit: einfach auf den Setpoint des Thermostats geschrieben und läuft ohne Probleme ;-)

                                        1 Reply Last reply
                                        0
                                        • K Offline
                                          K Offline
                                          Kugelkopf
                                          wrote on last edited by
                                          #701

                                          Moin!!

                                          Erstmal großes Lob an die Macher des Scripts!

                                          Ich hätte da noch eine Frage:

                                          Wenn ich in VIS ein 2. Profil auswähle, dann Fehlen die Einstellmöglichkeiten der Uhrzeit und Temperatur im unteren Feld.

                                          Anscheinend ist es nicht vorgesehen, dass es diese so ohne weiteres gibt. Sehe ich das richtig?

                                          Ich habe mir nun so geholfen, dass ich Alle Knöpfe die mit dem Profil zu tun haben, Dupliziert habe und statt Profil_1 Profil_2 eingetragen habe. Diese übereinander gelegt und blende je nach Einstellung des Profils die einen oder die anderen Knöpfe und Auswahlmöglichkeiten aus.

                                          Das funktioniert soweit ganz gut. Wäre dennoch schön wenn es von vorne rein mit in dem VIS Script versehen wäre oder ist das irgendwie anders gedacht?

                                          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

                                          509

                                          Online

                                          32.5k

                                          Users

                                          81.6k

                                          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