Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

NEWS

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

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

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

[Vorlage] Heizungsthermostatsteuerung 2.1 - Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascripttemplateheatingclimate
1.1k Beiträge 115 Kommentatoren 396.2k Aufrufe 61 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • A Offline
    A Offline
    as15
    schrieb am zuletzt editiert von
    #643

    Mega Skript!

    Habe zwar keine HM Geräte aber läuft trotzdem sauber. Habe mich an die Anleitung gehalten und ließt sich super!

    Ich glaube ich habe jedoch einen Fehler entdeckt:

    Es heißt ja:

    Verschlussstatus true=geoeffnet - false = geschlossen

    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.

    Vielen Dank!

    1 Antwort Letzte Antwort
    0
    • AxelF1977A Offline
      AxelF1977A Offline
      AxelF1977
      schrieb am zuletzt editiert von
      #644

      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?
      4249_fehler-heizung-001.png
      4249_fehler-heizung-002.png

      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 Antwort Letzte Antwort
      0
      • K Offline
        K Offline
        kaschperle83
        schrieb am zuletzt editiert von
        #645

        @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? ` Ist das View selbst gemacht?

        Gesendet aus Hessen.

        1 Antwort Letzte Antwort
        0
        • AxelF1977A Offline
          AxelF1977A Offline
          AxelF1977
          schrieb am zuletzt editiert von
          #646

          @kaschperle83:

          Ist das View selbst gemacht?

          Gesendet aus Hessen. `

          Es basiert auf dem VIEW von looxer01. Ist aber modifiziert. Da ich mehrere Displays in verschiedenen Auflösungen habe, ist es floatent, passt sich automatisch der Auflösung an. Daher habe ich es meinen Bedürfnissen angepasst

          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 Antwort Letzte Antwort
          0
          • K Offline
            K Offline
            kaschperle83
            schrieb am zuletzt editiert von
            #647

            Wie bekommt man das hin mit floatent?

            @AxelF1977:

            @kaschperle83:

            Ist das View selbst gemacht?

            Gesendet aus Hessen. `

            Es basiert auf dem VIEW von looxer01. Ist aber modifiziert. Da ich mehrere Displays in verschiedenen Auflösungen habe, ist es floatent, passt sich automatisch der Auflösung an. Daher habe ich es meinen Bedürfnissen angepasst `

            Gesendet aus Hessen.

            1 Antwort Letzte Antwort
            0
            • AxelF1977A Offline
              AxelF1977A Offline
              AxelF1977
              schrieb am zuletzt editiert von
              #648

              @kaschperle83:

              Wie bekommt man das hin mit floatent?

              Gesendet aus Hessen. `

              Ich stelle meins hier gerne zur Verfügung, aber nicht mehr heute.

              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 Antwort Letzte Antwort
              0
              • K Offline
                K Offline
                kaschperle83
                schrieb am zuletzt editiert von
                #649

                Super vielen Dank.

                Gesendet aus Hessen.

                1 Antwort Letzte Antwort
                0
                • AxelF1977A Offline
                  AxelF1977A Offline
                  AxelF1977
                  schrieb am zuletzt editiert von
                  #650

                  Kein Problem. Anbei die Dateien für das VIEW. Die CSS muss auch eingebunden werden, sonst funktioniert es nicht. Bitte nicht wundern dass es im Editor etwas verschoben aussieht, dass liegt daran, das Bildschirm keine 100% Breite hat, durch die Werkzeugfenster links und rechts. Anbei nochmal 2 Screenshots. 1x PC mit 1920px Auflösung und 1x mein Tablett mit einer 1280px Auflösung. Gleiches VIEW.

                  @looxer01, schau mal bitte nach meiner Frage in https://forum.iobroker.net/posting.php?mode=reply&f=21&t=10096#pr190026. Danke
                  4249_card_wohnzimmerheizungautomation.txt
                  4249_card_wohnzimmerheizungautomation_css.txt
                  4249_1280-tablett.png
                  4249_1920-pc.png

                  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 Antwort Letzte Antwort
                  0
                  • ChaotC Offline
                    ChaotC Offline
                    Chaot
                    schrieb am zuletzt editiert von
                    #651

                    @looxer01: Ich habe für die DECT Thermostate durch einen Hinweis in einem anderen Tread eine Lösung gefunden.

                    Scheinbar lässt sich die Boost Funktion manuell schalten.

                    Das würde im Script eventuell unnötige Umwege ersparen.

                    Die Schaltung erfolgt direkt über einen Datenpunkt im Thermostat Objektbaum:

                    fritzdect.0.Comet_1196006xxxxx.mode
                    

                    und wird zwischen

                    0= auto

                    1= closed

                    2= open

                    geschaltet. Diese Schaltung wird weder von deinem Script noch von der Fritzbox überschrieben.

                    Der Countdown und die Funktion wird in VIS korrekt dargestellt.

                    Somit wäre nur noch die Notwendigkeit im Script die Boost Funktion direkt aufzurufen, falls du das einbauen möchtest.

                    Ansonsten funktioniert diese Lösung:

                    Boost wird ausgelöst über einen Dash Button und läuft für 60 Minuten.

                    Das dient bei mir dazu die Heizung im Bad für einige Zeit zu erhöhen und die Grundsteuerung auszuschalten (Duschen für Weicheier).

                    Trigger und Laufzeit ist im Grunde beliebig wählbar. Es würde auch über einen beliebigen Funkschalter oder einen Softbutton in VIS funktionieren.

                    Zeit ist im Script individuell einstellbar:

                    const idTaster = "amazon-dash.0.00-fc-8b-xx-xx-xx.pressed"/*pressed*/; 
                    const idBoost = "fritzdect.0.Comet_1196006xxxxx.mode";
                    const idVis = "javascript.0.Heizung.LaufzeitBad"; // Anzeige Restdauer in Minuten
                    
                    var cnt = getState(idVis).val;
                    var timer = null;
                    
                    function countDown() {
                       cnt--;
                       setState(idVis, cnt, true);
                       if(cnt <= 0) {
                          clearInterval(timer);
                          setState(idBoost, 0);
                       }   
                    }
                    
                    on({id: idTaster, val: true}, function () {
                       setState(idBoost, 2);
                       cnt = 60;
                       setState(idVis, cnt, true);
                       if(timer) clearInterval(timer);
                       timer = setInterval(countDown, 60000); // jede Minute
                    });
                    
                    

                    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 Antwort Letzte Antwort
                    0
                    • L Offline
                      L Offline
                      leo8405
                      schrieb am zuletzt editiert von
                      #652

                      Guten Abend!

                      Erstmal bedanke ich mich für die tolle Arbeit! Ich bin noch ziemlich am Anfang mit dem Script und habe da noch zwei Baustellen an denen ich gerade nicht weiter komme.

                      1. Mir gelingt es nicht ein "zweites Script" für die Einliegerwohnung zum laufen zu bekommen. Was genau muss ich alles ändern damit die Räume der Wohnung von meinen Räumen getrennt angelegt werden? (Also die Räume habe ich bereits in RoomList eingetragen und auf true gestellt).

                      2. Beim ersten "Durchlauf" (Script 1) für meine eigenen Räume sind auch die Räume der EInliegerwohnung (Datenpunkte) angelegt worden. Muss ich diese löschen, damit diese dann über das zweite Script angelegt werden?

                      Script 1 läuft soweit mit allen Einstellungen.

                      Vielen Dank und noch einen angenehmen Abend!

                      1 Antwort Letzte Antwort
                      0
                      • K Offline
                        K Offline
                        K-L-S
                        schrieb am zuletzt editiert von
                        #653

                        Hallo,

                        ich habe seit dem Wochenende das Script 201 im Einsatz.

                        Meine Umgebung: Max-Cube mit Max!-Thermostaten, Xiaomi-Fenster-Tür-Kontakte.

                        Mein Problem:

                        Wenn ich z.B. die Raumthemperatur auf 20 Grad und die Abwesenheitsabsenkung auf 5 Grad einstelle und in der View das Flag Anwesend entferne wird zunächst die Soll-Themperatur richtig auf 15 Grad gestellt. Einige Sekunden später springt die Soll-Themperatur wieder auf 20 Grad und in der View sehe ich manuell gesetzte Soll-Themperatur bei 20 Grad für 120 Minuten.

                        Da scheint irgend etwas schief zu laufen.

                        Ansonsten tolles Programm und danke für deinen Einsatz.

                        1 Antwort Letzte Antwort
                        0
                        • K Offline
                          K Offline
                          kaschperle83
                          schrieb am zuletzt editiert von
                          #654

                          Mach mal ein Reset am Maxcube @K-L-S:

                          Hallo,

                          ich habe seit dem Wochenende das Script 201 im Einsatz.

                          Meine Umgebung: Max-Cube mit Max!-Thermostaten, Xiaomi-Fenster-Tür-Kontakte.

                          Mein Problem:

                          Wenn ich z.B. die Raumthemperatur auf 20 Grad und die Abwesenheitsabsenkung auf 5 Grad einstelle und in der View das Flag Anwesend entferne wird zunächst die Soll-Themperatur richtig auf 15 Grad gestellt. Einige Sekunden später springt die Soll-Themperatur wieder auf 20 Grad und in der View sehe ich manuell gesetzte Soll-Themperatur bei 20 Grad für 120 Minuten.

                          Da scheint irgend etwas schief zu laufen.

                          Ansonsten tolles Programm und danke für deinen Einsatz. `

                          Gesendet aus Hessen.

                          1 Antwort Letzte Antwort
                          0
                          • K Offline
                            K Offline
                            K-L-S
                            schrieb am zuletzt editiert von
                            #655

                            Hatte ich schon probiert. Adapter wurde auch neu gestartet und ioBroker Neustart wurde auch durchgeführt und zu guter letzt wurde der Rechner neu gestartet. Am Ergebnis hat sich hierdurch jedoch nichts geändert weshalb ich hier auch einen Post geöffnet habe. Hast Du die 201 im Einsatz(kaschperle83) und diese Problem nicht?

                            1 Antwort Letzte Antwort
                            0
                            • O Offline
                              O Offline
                              Okidoki3009
                              schrieb am zuletzt editiert von
                              #656

                              Hallo,

                              danke erstmal für das tolle script.

                              Ich habe leider noch Probleme bei der Installation.

                              Mein Log zeigt an
                              3673_log.png

                              Ich verwende Max-Thermostate und Xiaomi Fensterkontakte

                              Was habe ich geändert…

                              var UseRoomList = true;      // Wenn testmodus werden nur die Angegebenen Raeume abgearbeitet
                              var RoomList = [];
                              RoomList[0] = ['Kinderzimmer_OG'];   // Liste der Raeume die gesteuert werden soll zum Testen
                              RoomList[1] = ['GästeWC'];
                              RoomList[2] = ['Wohnzimmer'];
                              
                              NoneHMTab[0] = ['Kinderzimmer_OG','maxcul.0','KMD3029774','desiredTemperature',12];
                              NoneHMTab[1] = ['GästeWC','maxcul.0','JMD3035215','desiredTemperature',12];
                              NoneHMTab[2] = ['Wohnzimmer','maxcul.0','KMD3029415','desiredTemperature',12];
                              
                              NoneHMSenorTab[0] = ['Kinderzimmer_OG','mihome.0.devices','magnet_158d00016c8c03' ,'state' ,false,false];
                              NoneHMSenorTab[1] = ['GästeWC',        'mihome.0.devices','magnet_158d0001b95a90' ,'state' ,'false',false];
                              

                              Räume und Funktion auch zugewiesen und auf richtige Schreibweise geachtet.

                              Jemand eine Idee?

                              Danke euch

                              1 Antwort Letzte Antwort
                              0
                              • K Offline
                                K Offline
                                K-L-S
                                schrieb am zuletzt editiert von
                                #657

                                Hallo Okidoki3009,

                                ich bin mir nicht sicher aber enums zeigt soweit ich weiß auf die Räume. Vielleicht Umlaute/Sonderzeichen?

                                Gruss K_L_S

                                1 Antwort Letzte Antwort
                                0
                                • O Offline
                                  O Offline
                                  Okidoki3009
                                  schrieb am zuletzt editiert von
                                  #658

                                  @K-L-S:

                                  Hallo Okidoki3009,

                                  ich bin mir nicht sicher aber enums zeigt soweit ich weiß auf die Räume. Vielleicht Umlaute/Sonderzeichen?

                                  Gruss K_L_S `

                                  Danke ,ich habe jetzt den Raum GästeWC umgeändert in EG_gwc .

                                  Leider noch der gleiche Fehler.

                                  1 Antwort Letzte Antwort
                                  0
                                  • K Offline
                                    K Offline
                                    kaschperle83
                                    schrieb am zuletzt editiert von
                                    #659

                                    @K-L-S:

                                    Hatte ich schon probiert. Adapter wurde auch neu gestartet und ioBroker Neustart wurde auch durchgeführt und zu guter letzt wurde der Rechner neu gestartet. Am Ergebnis hat sich hierdurch jedoch nichts geändert weshalb ich hier auch einen Post geöffnet habe. Hast Du die 201 im Einsatz(kaschperle83) und diese Problem nicht? ` Nein noch nicht. Bin noch nicht zum umstellen gekommen.

                                    Gesendet aus Hessen.

                                    1 Antwort Letzte Antwort
                                    0
                                    • M Offline
                                      M Offline
                                      mtaxer
                                      schrieb am zuletzt editiert von
                                      #660

                                      @K-L-S:

                                      Hallo,

                                      ich habe seit dem Wochenende das Script 201 im Einsatz.

                                      Meine Umgebung: Max-Cube mit Max!-Thermostaten, Xiaomi-Fenster-Tür-Kontakte.

                                      Mein Problem:

                                      Wenn ich z.B. die Raumthemperatur auf 20 Grad und die Abwesenheitsabsenkung auf 5 Grad einstelle und in der View das Flag Anwesend entferne wird zunächst die Soll-Themperatur richtig auf 15 Grad gestellt. Einige Sekunden später springt die Soll-Themperatur wieder auf 20 Grad und in der View sehe ich manuell gesetzte Soll-Themperatur bei 20 Grad für 120 Minuten.

                                      Da scheint irgend etwas schief zu laufen.

                                      Ansonsten tolles Programm und danke für deinen Einsatz. `

                                      Wie sehen denn deine Einstellungen für die Xiaomi Sensoren unter: // Tabelle der Verschlusssensoren fuer NichtHomematic Geräte

                                      aus?

                                      Danke

                                      SG

                                      Mario

                                      1 Antwort Letzte Antwort
                                      0
                                      • K Offline
                                        K Offline
                                        K-L-S
                                        schrieb am zuletzt editiert von
                                        #661

                                        Hallo,

                                        hier meine gesamten Anpassungen:

                                        https://drive.google.com/open?id=1TDJYh … bEKc7RCl7H

                                        1 Antwort Letzte Antwort
                                        0
                                        • M Offline
                                          M Offline
                                          mtaxer
                                          schrieb am zuletzt editiert von
                                          #662

                                          @K-L-S:

                                          Hallo,

                                          hier meine gesamten Anpassungen:

                                          https://drive.google.com/open?id=1TDJYh … bEKc7RCl7H `

                                          Guten Morgen,

                                          danke für den Tipp. Leider bekomme ich den Raum mit dem Xiaomi Verschluss nicht angezeigt.

                                          Ich sollte wohl etwas genauer ins Detail gehen.

                                          Zur Situation:

                                          1. Raum, die Wohnkücke, wird korrekt eingebunden. In diesem Raum ist das Heizkörperthermostat HM-CC-RT-DN und der Homematicverschluss HM-Sec-SCo verbaut.Wird eingebunden und funktioniert problemlos.

                                          2. Raum, Kinderzimmer, wird nicht eingebunden. In diesem Raum ist auch das Heizkörperthermostat HM-CC-RT-DN verbaut. Aber mit den Xiaomi Tür und Fenstersensor.

                                          Raum und Funktion (Gewerk) sind korrekt zugewiesen, Scriptversion 2.01 vom 31.10.2018

                                          // Gewerke - wichtige Einstellung, da nur die Geraete eingelesen werden, die im Gewerk vorhanden sind
                                          // Das Gewerk muss alle Thermostate bzw Sensoren enhalten
                                          var HeizungGewerk           = "Heizung";        //  diesem Gewerk muessen alle Thermostate zugeordnet sein.
                                          var SensorGewerk            = "Verschluss";     //  diesem Gewerk muessen alle Verschlusssensoren zugeordnet sein.
                                          
                                          
                                          // Raumliste -  empfohlen zu benutzen fuer kleine Systeme
                                          // UseRoomList heisst, dass die nur hier gelisteten Raeume angelegt und abgearbeitet werden - somit werden nicht sofort alle Datenpunkte aller Räume angelegt (ca. 100 pro Raum und Profil)
                                          // dies dient hauptsaechlich zur Anlage der Daten - So koennen Raum fuer Raum alle States angelegt wrden
                                          // Das sollte genutzt werden mit langsamen Rechnern wie Raspi mit SD karte
                                          var UseRoomList = true;      // Wenn testmodus werden nur die Angegebenen Raeume abgearbeitet
                                          var RoomList = [];
                                          RoomList[0] = ['Wohnkueche'];   // Liste der Raeume die gesteuert werden soll zum Testen
                                          RoomList[1] = ['Kinderzimmer'];
                                          //RoomList[2] = ['Raumx'];
                                          //RoomList[3] = ['Raum3'];
                                          //RoomList[4] = ['Raum4'];
                                          //RoomList[5] = ['Raum5'];
                                          //RoomList[6] = ['Raum6'];
                                          //RoomList[7] = ['Raum7'];
                                          //RoomList[8] = ['Raum8'];
                                          //RoomList[9] = ['Raum9'];
                                          
                                          
                                          // Tabelle der Verschlusssensoren fuer NichtHomematic Geräte
                                          // 5  = wenn script die Absenktemperatur setzen soll, dann false
                                          var NoneHMSenorTab = [];
                                          //                  0= Raum         1 = Datenpunkt vis vor Geraet 0.RPC-Pfad    2\. Datenpunkt Geraet        3\. Datenpunkt FensterstatusGeraeteType  4.Verschlussstatus bei geschlossen    5\. TempAbsenkung automatisch,
                                          NoneHMSenorTab[0] = ['initial',     'javascript.0.Heizung.Heizplan',            'Wohnzimmer' ,              'TestZusaetzlichesFenster' ,            false,                                false];
                                          NoneHMSenorTab[1] = ['initial',     'fhem.0',                                   'OG_DU_TF' ,                'state' ,                               'closed',                             false];
                                          NoneHMSenorTab[2] = ['initial',     'maxcube.0.devices',                                                    'contact_0a9d75',                       'opened',                             false,                                          true];
                                          NoneHMSenorTab[3] = ['Kinderzimmer','mihome.0.devices',                         'magnet_158d0001e4c32d' ,   'state',                                false,                                false];
                                          
                                          

                                          Die Möglichkeiten aus diesem Beitrag habe ich auch versucht: viewtopic.php?f=21&t=10096&start=440#p181466

                                          Ohne Erfolg.

                                          Jemand eine Idee?

                                          Danke

                                          SG

                                          Mario

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          394

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe