Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Heizungsthermostatsteuerung - Script

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Heizungsthermostatsteuerung - Script

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      looxer01 last edited by

      @mrMuppet:

      irgend eine Idee? `
      Ich glaube nicht, dass sich was verstellt. vermutlich gibt es noch Räume, die nicht auf number umgestellt waren.

      Check das bitte mal für alle Räume. Das Object …..View_Manually_Adjusted muss für alle Räume auf number stehen.

      vG Looxer

      1 Reply Last reply Reply Quote 0
      • M
        mrMuppet last edited by

        @looxer01:

        Ich glaube nicht, dass sich was verstellt. vermutlich gibt es noch Räume, die nicht auf number umgestellt waren.

        Check das bitte mal für alle Räume. Das Object …..View_Manually_Adjusted muss für alle Räume auf number stehen. `
        Ja, das wars! Ein Raum stand noch auf Logikwert. Aber wie ist es zu dieser Einstellung gekommen? Die Datenpunkte hat doch alle dein Skript angelegt… ?

        1 Reply Last reply Reply Quote 0
        • L
          looxer01 last edited by

          @mrMuppet:

          Ja, das wars! Ein Raum stand noch auf Logikwert. Aber wie ist es zu dieser Einstellung gekommen? Die Datenpunkte hat doch alle dein Skript angelegt… ? `

          korrekt, allerdings hatte das Script zu einer früheren Version einen Fehler.

          Wenn du also das Script mit einer frühreren Version laufen lassen hast, dann wurden dann schon ein paar Datenpunkte mit falschen Datentypen angelegt.

          vG Looxer

          1 Reply Last reply Reply Quote 0
          • eric2905
            eric2905 last edited by

            Hi,

            habe Dein super Script auch seit ca. 1 Woche laufen - Danke dafür.

            Heute ist mir was aufgefallen (was ich aber nochmal überprüfen möchte):

            Ich habe im Kalender "Urlaub_anwesend" hinterlegt - allerdings über 2 Tage (also über Mitternacht hinweg).

            Die Einbindung via iCal funktioniert, aber um Mitternacht wurden wieder die normalen Abläufe und Absenkungen verwendet.

            Erst als ich den Kalendereintrag gesplittet und auf die beiden Tage verteilt habe, lief es wie gewünscht.

            Ich werde das heute Abend / Nacht nochmal probieren - vielleicht habe ich auch nur einen Fehler gemacht.

            Gruß,

            Eric

            1 Reply Last reply Reply Quote 0
            • apollon77
              apollon77 last edited by

              Ich glaube dazu gibt schon ein issue beim iCal Adapter …

              1 Reply Last reply Reply Quote 0
              • L
                looxer01 last edited by

                @eric2905:

                Die Einbindung via iCal funktioniert, aber um Mitternacht wurden wieder die normalen Abläufe und Absenkungen verwendet. `

                die Frage ist was bei den Events bei den ICAL Datenpunkten passiert.

                Die subscriptions gehen ja darauf und checken, ob ein Event auf true oder false steht.

                Protokoliere doch mal die Aenderungen auf dem ICAL Event was da über Nacht passiert.

                Es wird demnächst eine überarbeitete Version geben 😉

                Allerdings gibt es an dieser Stelle keine Änderung.

                vG Looxer

                1 Reply Last reply Reply Quote 0
                • eric2905
                  eric2905 last edited by

                  Hi,

                  @looxer01:

                  die Frage ist was bei den Events bei den ICAL Datenpunkten passiert. `
                  habe jetzt mal einen neuen Kalendereintrag eingestellt (heute 15:00 Uhr bis morgen 14:00 Uhr) und die Aufzeichnung aktiviert.

                  Bin mal gespannt, was heute um Mitternacht aufgezeichnet wird.

                  Gruß,

                  Eric

                  1 Reply Last reply Reply Quote 0
                  • eric2905
                    eric2905 last edited by

                    Hi Looxer,

                    habe jetzt mal ein wenig rum getestet ….

                    Der iCal-Adapter kann anscheinend nicht mit mehrtägigen Einträgen umgehen - ab Mitternacht ist das Event auf false, obwohl der Eintrag als solches noch angezeigt wird. Habe jetzt erst mal für jeden Tag einen sep. Eintrag gemacht, damit das Script über den Urlaub sauber läuft.

                    Mache später noch ein Github-Issue zum iCal auf.

                    Dein Script ist erst mal „raus aus der Nummer“

                    Das läuft bisher sehr gut und stabil - Danke für das geile Teil (inkl. View)

                    Gruß,

                    Eric

                    Von unterwegs getippert

                    1 Reply Last reply Reply Quote 0
                    • apollon77
                      apollon77 last edited by

                      Danke für das issue. Hab den iCal auf meiner mentalen „muss ich mal reinschauen ob man da nicht Dinge fixen kann“ Liste 😉

                      1 Reply Last reply Reply Quote 0
                      • eric2905
                        eric2905 last edited by

                        @apollon77:

                        Danke für das issue `
                        Issue gab es schon ==> https://github.com/ioBroker/ioBroker.ical/issues/20

                        Gruß,

                        Eric

                        Von unterwegs getippert

                        1 Reply Last reply Reply Quote 0
                        • R
                          reinhard400 last edited by

                          Hallo zusammen !

                          Das script sieht richtig gut aus.

                          Leider funktioniert das script bei mir nicht, ich bekomme immer

                          00:16:05.764 [error] javascript.0 script.js.common.Heizung.HeizungV2: /opt/iobroker/node_modules/iobroker.javascript/javascript.js:2035

                          die Max Thermostate hab ich wie folgt eingebunden

                          NoneHMTab[0] = ['Schlafzimmer', 'maxcube.0.devices', 'thermostat_197b0b', 'setpoint', 12];

                          NoneHMTab[1] = ['Kueche', 'maxcube.0.devices', 'thermostat_1a040e', 'setpoint', 12];

                          NoneHMTab[2] = ['WohnEsszimmer', 'maxcube.0.devices', 'thermostat_1950cd', 'setpoint', 12];

                          NoneHMTab[2] = ['WohnEsszimmer', 'maxcube.0.devices', 'thermostat_1950d0', 'setpoint', 12];

                          NoneHMTab[4] = ['Claudiazimmer', 'maxcube.0.devices', 'thermostat_1950b3', 'setpoint', 12];

                          NoneHMTab[5] = ['Bad', 'maxcube.0.devices', 'thermostat_1a0412', 'setpoint', 12];

                          die Verschlusssensoren ( max und mihome )

                          NoneHMSenorTab[0] = ['Schlafzimmer', 'maxcube.0.devices', 'contact_0a9d75', 'opened', false, true];

                          NoneHMSenorTab[1] = ['Kueche', 'maxcube.0.devices', 'contact_0a9631', 'opened', false, true];

                          NoneHMSenorTab[2] = ['WohnEsszimmer', 'mihome.0.devices', 'magnet_158d00019db4aa', 'state', false, false];

                          NoneHMSenorTab[2] = ['WohnEsszimmer', 'mihome.0.devices', 'magnet_158d00019f8973', 'state', false, false];

                          NoneHMSenorTab[4] = ['Claudiazimmer', 'mihome.0.devices', 'magnet_158d00019f896b', 'state', false, false];

                          NoneHMSenorTab[5] = ['Bad', 'maxcube.0.devices', 'contact_0a9e8d', 'opened', false, true];

                          Räume und Sensoren sind soweit angelegt

                          https://drive.google.com/file/d/1t0kZV6 … sp=sharing

                          Reinhard

                          1 Reply Last reply Reply Quote 0
                          • apollon77
                            apollon77 last edited by

                            Zeig bitte mal die komplette Fehlermeldung. Da muss mehr sein als die eine Zeile.

                            Ansonsten ist in deinen konfig der Array Index 2 doppelt und die 3 fehlt. Vllt ists das auch schon.

                            1 Reply Last reply Reply Quote 0
                            • L
                              looxer01 last edited by

                              Hi Reinhard,

                              ich kann jetzt nur raten.

                              Um besser sehen zu können was passiert könntest du deine Programmversion posten.

                              Auch waere es hilfreich die variable "debug" im Programm auf "true" zu setzen.

                              Dann gibt es mehr messages.

                              Aber mal davon abgesehen versuche es erstmal Raum für Raum.

                              Möglicherweise gibt es ein Problem beim Anlegen der rooms (aufzaehlungen). z.B Sonderzeichen bei "Wohn-/Esszimmer.

                              Raumweise kannst du über die raumliste vorgehen. Die setzt du auf "true" und gibst erstmal einen Raum ein.

                              z.B. Schlafzimmer. Dann siehst du ob es generell ein Problem ist.

                              vG Looxer

                              1 Reply Last reply Reply Quote 0
                              • L
                                looxer01 last edited by

                                …überschnitten 🙂

                                1 Reply Last reply Reply Quote 0
                                • R
                                  reinhard400 last edited by

                                  Danke für die prompte Hilfe, werd ich morgen probieren / umstellen

                                  Version ist die aktuelle von heute nachmittag

                                  SG Reinhard

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    reinhard400 last edited by

                                    Hallo !

                                    Ich komme der Sache schon näher, ein Neustart des Javascript Adapters brachte einiges an Erfolg

                                    Es werden jedoch die Fensterkontakte nicht richtig ausgelesen, ich habe derzeit das Fenster im "Claudiazimmer" und im Bad offen, im Claudiazimmer erfolgt keine Reaktion, im Bad wird die Temperatur direkt über die Verknüpfung im MaxCube auf 8° geregelt, unter Objekte sind beide Datenpunkte auf true gesetzt, im Log wird aber ser Status als false angezeigt

                                    Datenpunkte hab ich nochmals überprüft bzw nochmal direkt über die Kopierfunktion im Objekte Tab übernommen, diese passen

                                    Log-Auszug

                                    ! javascript.0 2017-12-10 17:40:00.224 info script.js.HeizungV2:
                                    ! javascript.0 2017-12-10 17:40:00.224 info script.js.HeizungV2: Routine LoopRooms Ende Abarbeitung fuer Raum Claudiazimmer
                                    ! javascript.0 2017-12-10 17:40:00.223 info script.js.HeizungV2: 6b.FallManuelle Temperatur noch aktuell - warten bis 2017/12/10 19:05:00 - Temperatur ist 18
                                    ! javascript.0 2017-12-10 17:40:00.223 info script.js.HeizungV2: aktuelle Millisekunden 1512924000000
                                    ! javascript.0 2017-12-10 17:40:00.222 info script.js.HeizungV2: Routine ManAdjustments: DelayTime fuer Raum Claudiazimmer ist 0
                                    ! javascript.0 2017-12-10 17:40:00.221 info script.js.HeizungV2: Routine LoopDevices: Sensorstatus fuer raum Claudiazimmer ist false
                                    ! javascript.0 2017-12-10 17:40:00.220 info script.js.HeizungV2: Routine LoopRooms Starte Abarbeitung fuer Raum Claudiazimmer
                                    ! javascript.0 2017-12-10 17:40:00.220 info script.js.HeizungV2: Routine ChckRoom - Dem Raum Claudiazimmer ist ein Gerät zugeordnet
                                    ! javascript.0 2017-12-10 17:40:00.220 info script.js.HeizungV2:
                                    ! javascript.0 2017-12-10 17:40:00.219 info script.js.HeizungV2: Routine LoopRooms Ende Abarbeitung fuer Raum Bad
                                    ! javascript.0 2017-12-10 17:40:00.218 info script.js.HeizungV2: 6b.FallManuelle Temperatur noch aktuell - warten bis 2017/12/10 18:05:00 - Temperatur ist 8
                                    ! javascript.0 2017-12-10 17:40:00.217 info script.js.HeizungV2: aktuelle Millisekunden 1512924000000
                                    ! javascript.0 2017-12-10 17:40:00.217 info script.js.HeizungV2: Routine ManAdjustments: DelayTime fuer Raum Bad ist 0
                                    ! javascript.0 2017-12-10 17:40:00.215 info script.js.HeizungV2: Routine LoopDevices: Sensorstatus fuer raum Bad ist false
                                    ! javascript.0 2017-12-10 17:40:00.214 info script.js.HeizungV2: Routine LoopRooms Starte Abarbeitung fuer Raum Bad
                                    ! javascript.0 2017-12-10 17:40:00.213 info script.js.HeizungV2: Routine ChckRoom - Dem Raum Bad ist ein Gerät zugeordnet

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      looxer01 last edited by

                                      Hi,

                                      @reinhard400:

                                      Es werden jedoch die Fensterkontakte nicht richtig ausgelesen, `
                                      alles andere läuft ? Laufen die Temperaturregelungen ?

                                      kannst du das Programm mit den Einstellungen zur Verfügung stellen ? Gerne auch als PN.

                                      Auch die Datenpunkte würden helfen. Die kannst du übrigens aus der Objeklist als JSON downloaden.

                                      Dann kann ich die Datenpunkte hochladen und direkt testen.

                                      Im Prinzip gibt es einige wenige Stellen, die mir einfallen, die Probleme machen könnten beim Initialisieren:

                                      • Datenpunktdefinition

                                      • Raumzuordnung (Aufzaehlungen)

                                      Wenn das Programm anläuft, dann gibt es eine komplette Liste der Geräte. Ist das Thermostat dort enthalten ?

                                      @reinhard400:

                                      Bad wird die Temperatur direkt über die Verknüpfung im MaxCube auf 8° geregelt, `
                                      In diesem Fall solltest du die Temperaturabsenkungsgrenze auf 8 Grad stellen.

                                      vG Looxer

                                      1 Reply Last reply Reply Quote 0
                                      • L
                                        looxer01 last edited by

                                        Hi,

                                        alles klar, danke fürs senden.

                                        In der Tat gab es noch zwei Fixe, die für dich relevant sind, die aber nicht in der aktuellen Version enthalten sind

                                        Das sind die beiden Postings aus diesem Thread:

                                        vom 19.11.2017, 12:29 und vom 18.11.2017, 12:59

                                        Das Problem ist, dass da noch Coding fehlte für den Fall, dass die Sensorstatus einen anderen Status als true/false annehmen.

                                        In der nächsten Version sind die Fixe enthalten.

                                        vG Looxer

                                        1 Reply Last reply Reply Quote 0
                                        • L
                                          looxer01 last edited by

                                          Hi,

                                          ich habe die letzten Korrekturen für "Nicht-HM" Geräte eingebaut und das Script mit Version 1.00 im ersten Post hochgeladen.

                                          Dieses ist die letzte Version des Scriptes in diesem Thread (es sei denn es sind in der hochgeladenen Version Fehler)

                                          Allerdings hat sich zwischenzeitlich viel getan. Apollon77 und ich arbeiten fleissig an einer neuen Version und die wird Version 2.0 sein, weil

                                          es erstens viele neue Funktionen geben wird und zweitens, weil wir viel getestet haben und wir eine gute Stabilität erwarten.

                                          Ohne Apollon77 hätte ich das so weit nicht bringen können.

                                          Hier ein Ausblick - nicht vollständig

                                          • Es wurde eine Schnittstelle nach aussen geschaffen und Apollon77 hat Scripte geschrieben, die jetzt auch Fussbodenheizungen unterstützen. (mit dem Ziel mit der jeweiligen nächsten Planzeit, die Raumtemperatur bereits erreicht zu haben)

                                          • Das Script wurde auf Subscriptions umgestellt (optional). Damit läuft das Script nur noch dann, wenn es Bedarf gibt. Das ist auch viel intiutiver, weil Aenderungen sofort ersichtlich sind und nicht erst auf den nächsten Programmlauf gewartet werden muss

                                          • Es gibt Geräte Exceptions für Homematic Geräte, falls die nicht am Programmlauf teilnehmen sollen. Somit brauchen die Gewerke nicht geändert werden

                                          • Es gibt die zusätzliche Möglichkeit, eine manuelle Temperatur bis zum nächsten geplanten Wechsel zu belassen. Bisher ging das nur über die eingestellte Anzahl von Minuten (z.B. zurück zum Schedul nach 120 Minuten)

                                          • Der letzte Programmlauf ist jetzt auf Raumebene, weil das Programm ja auch nur noch bei Bedarf für einen Raum losrennt

                                          • Es gibt eine neue View 🙂 (pix hatte basierend auf die veröffentlichte View viele Anpassungen gemacht. Ich habe seine View genommen und weiter angepasst. Sieht klasse aus, finde ich - Danke an Pix

                                          usw.

                                          Das Ganze ist fast fertig. Ein paar Kleinigkeiten braucht es noch. UND die Doku 😞

                                          Wenn es so weit ist, dann wird es einen neuen Thread geben. Dieser hier ist schon etwas lang.

                                          vG Looxer

                                          1 Reply Last reply Reply Quote 0
                                          • Dutchman
                                            Dutchman Developer Most Active Administrators last edited by

                                            Cool hört sich ja super an bin gespannt und danke an euch beide !

                                            –-----------------------

                                            Send from mobile device

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            738
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            34
                                            313
                                            75407
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo