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 goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Vorlage] Heizungsthermostatsteuerung - Script

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

      Version 0.72 ist hochgeladen.

      Fixes:

      // Version 0.72 14.04.2017 - Feiertag wurde nicht korrekt erkannt

      // ….......................Datumsformat für die Anzeige "letzter Programmlauf im View" wurde auf DDMMYYYY umgestellt

      // ..........................Das Feiertagsflag vom Feiertagsadapter wird synchronisiert mit dem Feiertagsflag der Heizungssteuerung

      //...........................Das Anwesenheitsflag von der Anwesenheitsfunktion wird synchronisiert mit dem Feiertagsflag der Heizungssteuerung

      vG Looxer

      1 Reply Last reply Reply Quote 0
      • N
        nobse last edited by

        Vielen Dank!

        Jetzt klappt es Super.

        1 Reply Last reply Reply Quote 0
        • S
          Superdad last edited by

          @nobse:

          So Problem ist gelöst.

          Die Gewerke waren auf der CCU richtig angelegt. Im ioBroker aber fehlerhaft Importiert. Hier waren falsche Namen vorhanden. Ist wohl ein alter Fehler den ich bis jetzt nicht korigiert hatte.

          Nun werden erstmal alle Variablen angelegt.

          Dann kann ich jetzt weiter testen. `

          Hallo,

          wie hast du diesen Fehler korrigiert?

          Bei mir steht immer dieses $-Zeichen davor. Wenn ich es lösche, kommt es nach einer Weile wieder.

          Bekomme dann immer eine Fehlermeldung vom Script.

          javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: $(…).each is not a function at getDevices (script.js.Haus.Heizungsthermostatsteuerung:296:114) at script.js.Haus.Heizungsthermostatsteuerung:249:1

          Frohe Ostern!

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

            @Superdad:

            wie hast du diesen Fehler korrigiert?

            Bei mir steht immer dieses $-Zeichen davor. Wenn ich es lösche, kommt es nach einer Weile wieder.

            Bekomme dann immer eine Fehlermeldung vom Script. `

            Hi,

            hast du denn die letzte Version aus dem ersten post hochgeladen ?

            Der Code nach den Einstellungen sollte nicht geändert werden.

            vG Looxer

            1 Reply Last reply Reply Quote 0
            • N
              nobse last edited by

              Hallo Superdad

              ich bin wie folgt vorgegangen

              • in der CCU habe ich die Gewerke Editiert und dann mit gleichem Namen abgespeichert

              • in ioBroker dann HM-REGA einmal aktualisiert

              • danach waren die Gewerke mit dem richtiegen Namen vorhanden

              • dann die alten löschen

              So hat es bei mir funktioniert.

              Gruß Norbert

              1 Reply Last reply Reply Quote 0
              • S
                Superdad last edited by

                Habe es auch so gemacht.

                In der CCU gibt es z.Bsp. das Gewerk Heizung und Verschluss.

                In IoBroker heisst das aber ${funcHeating}.

                Habe das per Hand umbenannt.

                Dann kommt im Script die Meldung:

                javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: Cannot read property 'common' of undefined at sandbox.getEnums (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1871:56) at script.js.Haus.Heizungsthermostatsteuerung:246:9

                Also IoBroker neu starten und die Fehlermeldung ist weg.

                Aber unter enum.functions steht dann wieder ${funcHeating}, zusätzlich zum Gewerk Heizung.

                Das Gleiche gilt für Räume.

                Und dann kommt wieder die Fehlermeldung:

                javascript.0 script.js.Haus.Heizungsthermostatsteuerung: TypeError: $(…).each is not a function at getDevices (script.js.Haus.Heizungsthermostatsteuerung:296:114) at script.js.Haus.Heizungsthermostatsteuerung:249:1

                Was meinst du mit Gewerke editiert?

                Frohe Ostern!

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

                  @Superdad:

                  In der CCU gibt es z.Bsp. das Gewerk Heizung und Verschluss.

                  In IoBroker heisst das aber ${funcHeating}.

                  Habe das per Hand umbenannt. `

                  Hi,

                  falls du keine eigenen Gewerke/Räume in IoBroker eingerichet hast, dann empfehle ich dir einen Neusynch.

                  Lösche die Funktionen und Räume aus den Aufzählungen und restarte den REGA Adapter. (knopf "neuladen")

                  Dann sollte alles gut sein.

                  vG Looxer

                  1 Reply Last reply Reply Quote 0
                  • S
                    Superdad last edited by

                    Räume und Funktionen habe ich auch schon alle gelöscht und neu geladen.

                    Da passiert das Gleiche.

                    Habe dann ${funcHeating} und Heizung als Gewerk.

                    Und dann geht das Spiel von vorne los.

                    1 Reply Last reply Reply Quote 0
                    • N
                      nobse last edited by

                      Hallo

                      also melde dich an der CCU an

                      • gehe auf Einstellungen -> Gewerke

                      • unten rechts Gewerkeliste Bearbeiten klicken

                      • ändere von einem Gewerk einfach mal den Namen auf der linken Seite der Tabelle und schliessen

                      • dann gehst du in den ioBroker Asdmin -> Instanzen

                      • hier klickst du bei hm-rega auf neu Laden

                      • jetzt sollte unter Aufzählungen -> enum.functions das geänderte Gewerk auch angezeigt werden

                      Versuche das mal abzuarbeiten.

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

                        so sieht es bei mir aus:
                        305_gewerke.jpg

                        1 Reply Last reply Reply Quote 0
                        • S
                          Superdad last edited by

                          Das funktioniert auch so.

                          Habe dann das geänderte Gewerk drin.

                          Aber die Gewerke mit $ bleiben auch drin. Wo kommen die her?

                          @looxer01

                          Bei mir sieht es auch so aus, plus der engl. Bezeichnung mit $.

                          1 Reply Last reply Reply Quote 0
                          • N
                            nobse last edited by

                            Das kannst du jetzt für alle Gewerke und Räume in der CCU machen.

                            Und das aktualisieren im ioBroker nicht vergessen.

                            Dann kannst du im ioBroker alle Gewerke und Räume die mit $ anfangen löschen. Die kommen dann nicht wieder.

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

                              … es gibt eine neue Version (aktuell ist 0.72 - neu ist 0.74)

                              changelog:

                              // Version 0.73 14.04.2017 - Ueberfluessige LogEintraege entfernt

                              // Version 0.74 15.04.2017 - Voreinstellung geaendert - annahme ist, dass mit direkten Verknuepfungen gearbeitet wird. Wenn nicht, dann muss die ThermostatTypeTab angepasst werden (Flag zentrale Steuerung)

                              • Aenderung ist nur eine Einstellung in der ThermostabTypeTab

                              Ich hatte die Voreinstellungen in der ThermostabTypeTab gewählt, dass keine Direktverknuepfungen vorausgesetzt wurden (zentrale Steuerung für die neuen Thermostate war auf false). Das kann aber zu Konflikten führen, wenn doch mit Direktverknuepfungen gearbeitet wird.

                              Also wird jetzt beispielsweise immer ein vorhandenes Wandthermostat eingelesen nicht aber die direkt Heizkoerperthermostate.

                              Falls es mehrere (neue) Heizkoerperthermostate gibt, dann wird immer nur ein Thermostat eingelesen.

                              vG Looxer

                              1 Reply Last reply Reply Quote 0
                              • W
                                webseb79 last edited by

                                Hallo looxer01,

                                bin gerade dabei dein Script zu probieren.

                                muß bei "var ThermostatTypeTab = [0];" eine Auswahl getroffen werden z.B. 0 eingetragen, weil bei mir das Wandthermostat die Befehle durch Direktverknüpfungen an alle anderen im Raum verteilt ?

                                Und bei "var RoomList = [0];" habe ich jetzt auch eine 0 stehen weil ich als erstes mal das Schlafzimmer allein probieren möchte.

                                Danke für Dein großartiges Engagement und das teilen Deines Wissens.

                                Sebastian

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

                                  Hi,

                                  Im Grunde muss fast nichts konfiguriert werden. Auch nichts an der Thermostagtypetab - verwende die version 0.74

                                  Die Gewerke sind wichtig und ja die roomlist, wenn du raum für raum vorgehen möchtest

                                  Die Roomlist sieht so aus für dich:

                                  var UseRoomList = true;

                                  var RoomList = [];

                                  RoomList[0] = ['Schlafzimmer'];

                                  vG Looxer

                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    webseb79 last edited by

                                    Und die anderen RoomList mit // auskommentieren?

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

                                      Ja genau

                                      Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

                                      1 Reply Last reply Reply Quote 0
                                      • W
                                        webseb79 last edited by

                                        Eine Bitte habe ich noch was gerade aufgefallen ist.

                                        Ich habe andere Fenstersensoren verbaut, die nicht in der Liste auftauchen.

                                        HM-Sec-RHS

                                        HM-Sec-SC-2

                                        kannst du die noch nachpflegen im Script?

                                        Sebastian

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          Superdad last edited by

                                          @looxer01

                                          Erstmal vielen Dank für dein Programm und deine Hilfe.

                                          Habe es jetzt mit den Räumen und Gewerken hinbekommen.

                                          Bekomme aber folgende Fehlermeldung:

                                          javascript.0 TypeError: Cannot read property 'toString' of undefined at writelog (script.js.Haus.Heizungsthermostatsteuerung:1457:60) at LoopDevices (script.js.Haus.Heizungsthermostatsteuerung:507:17) at SensorChange (script.js.Haus.Heizungsthermostatsteuerung:603:5) at Object. (script.js.Haus.Heizungsthermostatsteuerung:373:25) at Object.subs.callback (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:1325:48) at /volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:585:48 at getObjectEnums (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:3237:17) at getObjectEnums (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:3256:28) at getObjectEnums (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:3256:28) at checkPatterns (/volume2/homes/admin/opt/iobroker/node_modules/iobroker.javascript/javascript.js:581:17)

                                          Desweiteren habe ich vier Ausrufezeichen am Rand bei Skripte.

                                          Zweimal Don´t make functions within a loop Zeile 319 und Zeile 372

                                          Einmal ì is already defined Zeile 351

                                          Einmal x is already defined Zeile 353

                                          Und bei Zeile 401 too many errors 26% scanned

                                          Frohe Ostern!

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

                                            @Superdad:

                                            Erstmal vielen Dank für dein Programm und deine Hilfe.

                                            Habe es jetzt mit den Räumen und Gewerken hinbekommen.

                                            Bekomme aber folgende Fehlermeldung: `

                                            ok, erstmal gut.

                                            Die Fehlermeldung ist mal nicht so gut. Hast du den Parameter var LogFlag auf true ?

                                            wenn ja, dann stelle ihn bitte mal auf false und teste nochmal.

                                            Die untenstehenden Meldungen kannst du ignorieren.

                                            Zweimal Don´t make functions within a loop Zeile 319 und Zeile 372

                                            Einmal ì is already defined Zeile 351

                                            Einmal x is already defined Zeile 353

                                            Und bei Zeile 401 too many errors 26% scanned

                                            vG Looxer

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            525
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            34
                                            313
                                            75284
                                            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