Navigation

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

    NEWS

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    [Vorlage] Heizungsthermostatsteuerung 2.1 - Script

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

      @Dutchman:

      scheint auf jedenfall was mit der "ausschalt SOLL" zu tun zu haben warum kann ich auch nichts Standard lassen `
      Hi Dutch,

      Ich habe das issue gefixt. Ich werde es noch ein wenig testen und am Wochenende mit weiteren Fixes hochladen. Wird dann 2.00b02

      Ich bin natürlich irgendwie darauf reingefallen, dass die alten Thermostate nicht unter 6 Grad gehen können. Blöd wenn man 5 eingestellt hat 🙂

      Habs dann irgendwann mal gemerkt.

      Generell ist aber die Empfehlung die Absenktemperatur fuer "Fenster Auf" und die Sommertemperatur (Heizperiode = false) sowie die Absenktemperaturen der Thermostate alles identisch zu halten.

      Vorteil dabei ist, dass die Thermostate keine unnötigen Thermostatfahrten vornehmen und der Funkverkehr im Sommer bei Null bleibt.

      Schont natürlich auch alles die Batterien.

      zum Thema:
      @Dutchman:

      Ich habe nur 1 problem mit de view was mich zum verzweifelen bringt :lol: `

      Hierzu habe ich ein Issue auf GitHub aufgemacht:

      https://github.com/ioBroker/ioBroker.vis/issues/152

      vG Looxer

      looxer01 created this issue in ioBroker/ioBroker.vis

      closed JQUI Widgets Changing Size / afterwards VIS View is inconsistent to VIS EDITOR #152

      1 Reply Last reply Reply Quote 0
      • P
        pxstd last edited by

        Ich muss nochmal fragen, weil ich ein Schisser bin:

        Wie ist die Vorgehensweise?

        Ich entferne meine Heizprogramme (Gruppe, Geräte) von der Homematic und installiere mir das Script?

        Gibt's da eine Art Dokumentation, die ich übersehen habe?

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

          @pxstd:

          Gibt's da eine Art Dokumentation, die ich übersehen habe? `

          Jup und stellt die Thermostate auf manuell Betrieb.

          PDF im ersten Post gesehen?

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

          Send from mobile device

          Das schöne ios hat Auto Korrektur zum k****

          Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community

          1 Reply Last reply Reply Quote 1
          • P
            pxstd last edited by

            @Dutchman:

            @pxstd:

            Gibt's da eine Art Dokumentation, die ich übersehen habe? `

            Jup und stellt die Thermostate auf manuell Betrieb.

            PDF im ersten Post gesehen?

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

            Send from mobile device

            Das schöne ios hat Auto Korrektur zum k****

            Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community `

            So nah und doch so fern 😄 Danke - ich bin mal lesen!

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

              Hi,

              ich habe eine neue Version hochgeladen. Es ist jetzt die Version 2.00b02.

              Die Version ist für alle relevant, da sich im Bereich der globalen Parameter Fehler eingeschlichen hatten.

              ChangeLog:

              //````
              // Version 2.00b02 05.01.2018 - zweite Beta
              //.............................Technische Coding Aenderungen (ueberfluessige log eintragungen und doppel coding entfernt)
              //.............................Kein Trigger bei Aenderung von An/Abwesenheit und Feiertagen gefixt
              //.............................Bei Einstellung der Duration Manuelle Temp kleiner Null wurde bei einer Thermostataenderung am Thermostat keine Rückstellung auf schedule vorgenommen
              //.............................Delay Time (notwendig für alte Thermostate) nach Fensteröffnung wieder aktiviert - 2 Minuten Verzögerung nach Fensterschliessung
              //.............................Sensorstatusermittlung fuer HM-Geraete verallgemeinert (keine Speziallogik mehr notwendig. Konfig in der Sensortypetab reicht aus) / logging Eintraege fuer Sensor Aenderungen hinzugefuegt
              //.............................Bei Einschalten der Heizperiode wurden die Temperaturen nicht sofort auf die geplanten Temperaturen gesetzt

              
              Bitte beachtet folgendes:
              
              Bei den Einstellungen haben sich 3 Aenderungen ergeben
              
              1\. Thermostatabelle für die alten Thermostate sollte ein Delay von 2 Minuten eingegeben werden
              
              2\. SensorTabelle für DrehSensorGriffe muss in Spalte 6 Verschlussstatus eine 0 eingetragen werden (Wert bei geschlossen)
              
              3\. SensorTabelle für HMIP Fenstersensor muss in Spalte 6 Verschlussstatus eine 0 eingetragen werden (Wert bei geschlossen)
              
              Ansonsten gibt es keine Aenderungen bei den Usereinstellungen. Es kann also das Coding nach den Einstellungen kopiert werden und diese drei kleinen Aenderungen manuell eingetragen werden.
              
              vG Looxer
              1 Reply Last reply Reply Quote 0
              • eric2905
                eric2905 last edited by

                Hi,

                ich hätte da evtl. noch einen Verbesserungsvorschlag:

                Du hast hm-rpc.0 für HM-Komponenten und hm-rpc.1 für HMIP-Komponenten fest verdrahtet.

                Da ich das aber anders habe (hm-rpc.2 und hm-rpc.3) muss ich jedesmal den Code mit Suchen & Ersetzen anpassen.

                Würde es da evtl. Sinn machen, dies auch über Variablen abzufangen? Dann könnte man das einfach oben im Einstellungsblock anpassen und gut ist.

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

                Nachtrag:

                Bekomme folgende Meldung ins Log (die unteren 3 Warn-Zeilen):

                4:16:16.991	[info]	javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: Routine GetDevices Devices initialisiert
                14:16:16.991	[info]	javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: registered 22 subscriptions and 0 schedules
                14:16:18.971	[info]	javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: Heizungsscript verarbeitung benutzt Trigger und Events
                14:16:18.971	[warn]	javascript.0 at SetEventGlobalParameter (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:1654:9)
                14:16:18.971	[warn]	javascript.0 at LoopRooms (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:755:5)
                14:16:18.971	[warn]	javascript.0 at Object. (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:419:9)
                

                Was sie genau bedeuten, erschließt sich mir gerade nicht

                Gruß,

                Eric

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

                  Kann mir wer sagen, welchen Datenpunkt ich in der Visu auswählen muss, dass die Boost Zeit angezeigt wird? Oder geht das nicht? Ich kann den Boost Haken setzen und das funktioniert auch und die Schrift wird auch rot. Aber die 300 Sekunden runterzählen tut er nicht.

                  Gruß

                  Markus

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

                    @eric2905:

                    Du hast hm-rpc.0 für HM-Komponenten und hm-rpc.1 für HMIP-Komponenten fest verdrahtet.

                    Da ich das aber anders habe (hm-rpc.2 und hm-rpc.3) muss ich jedesmal den Code mit Suchen & Ersetzen anpassen. `
                    Hi Eric,

                    fest verdrahtet sollte da nix sein. Die ThermostatTypeTab Spalte 0 beinhaltet je Gerät die HMPRC-Instanz und ist einstellbar.

                    Ich vermute nicht, dass jemand dieselben Gerätetypen verschiedenen Instanzen zuordnen will. Daher sollte das doch so passen ?

                    An welchen Stellen musst du denn was verändern damit es für dich passt ?

                    @eric2905:

                    Bekomme folgende Meldung ins Log (die unteren 3 Warn-Zeilen):

                    Code: Alles auswählen

                    4:16:16.991 [info] javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: Routine GetDevices Devices initialisiert

                    14:16:16.991 [info] javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: registered 22 subscriptions and 0 schedules

                    14:16:18.971 [info] javascript.0 script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02: Heizungsscript verarbeitung benutzt Trigger und Events

                    14:16:18.971 [warn] javascript.0 at SetEventGlobalParameter (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:1654:9)

                    14:16:18.971 [warn] javascript.0 at LoopRooms (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:755:5)

                    14:16:18.971 [warn] javascript.0 at Object. (script.js.Aktiv.Heizung.Heizungssteuerung_2_0b02:419:9)

                    Was sie genau bedeuten, erschließt sich mir gerade nicht `

                    Scheint was mit den globalen Events nicht zu passen. Nutzt du Events und sind die Events im ICAL Adapter eingetragen - existieren also in der Objektliste ? Checke mal bitte ob das alles so stimmt.

                    Wenn ja, dann wäre interessant zu wissen welche Coding stellen es bei dir exakt sind: Zeilen 419 - 755 - 1654.

                    Bei mir sind die Zeilen vermutlich nicht 100%ig identisch

                    vG Looxer

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

                      @Newmiraculix:

                      Kann mir wer sagen, welchen Datenpunkt ich in der Visu auswählen muss, dass die Boost Zeit angezeigt wird? Oder geht das nicht? Ich kann den Boost Haken setzen und das funktioniert auch und die Schrift wird auch rot. Aber die 300 Sekunden runterzählen tut er nicht. `
                      Hi Markus,

                      Die Datenpunkte sind BoostTime für den Zähler bei IP und Boost_State für die HM…DN Geräte.

                      und Boost Mode fuer den BoostModus.

                      Leider zählt der Zaehler nur am Gerät und wird nur sporadisch an ioBroker uebertragen. Zuverlässig sieht man anfangs nur die Länge der BoostZeit und am Ende wird es zuverlässig zurückgesetzt.

                      vG Looxer

                      1 Reply Last reply Reply Quote 0
                      • P
                        pxstd last edited by

                        Jemand ne Idee hierzu?

                        ! javascript.0 2018-01-06 22:30:30.112 error at ContextifyScript.Script.runInContext (vm.js:35:29)
                        ! javascript.0 2018-01-06 22:30:30.112 error at script.js.Heizungssteuerung.Heizungssteuerung:337:1
                        ! javascript.0 2018-01-06 22:30:30.112 error at initializeData (script.js.Heizungssteuerung.Heizungssteuerung:344:5)
                        ! javascript.0 2018-01-06 22:30:30.112 error at getDevices (script.js.Heizungssteuerung.Heizungssteuerung:576:130)
                        ! javascript.0 2018-01-06 22:30:30.112 error TypeError: $(…).each is not a function
                        ! javascript.0 2018-01-06 22:30:30.112 error ^
                        ! javascript.0 2018-01-06 22:30:30.111 error $('channel[state.id=*.' + ThermostatTypeTab[x][4] + '] (rooms=' + roomName + ') (functions=' + HeizungGewerk + ') ').each(function (id, i) {
                        ! javascript.0 2018-01-06 22:30:30.111 error script.js.Heizungssteuerung.Heizungssteuerung: script.js.Heizungssteuerung.Heizungssteuerung:576

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

                          Hi,

                          sieht für mich so aus als wäre im Einstellungsbereich irgendwas schief.

                          sende doch bitte mal deine Einstellungen - komplett

                          vG Looxer

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

                            Oder ist das Gewerk einfach nur leer?

                            Daher könnte evtl. die Meldung „each is not …“ kommen.

                            Gruß,

                            Eric

                            Von unterwegs getippert

                            1 Reply Last reply Reply Quote 0
                            • P
                              pxstd last edited by

                              @eric2905:

                              Oder ist das Gewerk einfach nur leer?

                              Daher könnte evtl. die Meldung „each is not …“ kommen.

                              Gruß,

                              Eric

                              Von unterwegs getippert `

                              Welches Gewerk? Heizung und Verschluss ist jeweils gefüllt.

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

                                War ja nur eine Idee.

                                Von unterwegs getippert

                                1 Reply Last reply Reply Quote 0
                                • P
                                  pxstd last edited by

                                  @eric2905:

                                  War ja nur eine Idee.

                                  Von unterwegs getippert `

                                  Auf jeden Fall! Danke für den Hinweis 🙂

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

                                    Und auch genau so geschrieben in ioBroker? Bitte prüf die Namen man unter Enums im ioBroker. Manchmal wenn man in der CCU die Namen Nicht anfasst heissen die nämlich anders!!

                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      pxstd last edited by

                                      @apollon77:

                                      Und auch genau so geschrieben in ioBroker? Bitte prüf die Namen man unter Enums im ioBroker. Manchmal wenn man in der CCU die Namen Nicht anfasst heissen die nämlich anders!! `

                                      Ich verstehe die Frage nicht.

                                      Die Gewerke heißen "Heizung" und "Verschluss", genau wie im Steuerungsscript.

                                      3277_bildschirmfoto_2018-01-07_um_01.03.23.png

                                      ` > var HeizungGewerk = "Heizung"; // diesem Gewerk muessen alle Thermostate zugeordnet sein.

                                      var SensorGewerk = "Verschluss"; // diesem Gewerk muessen alle Verschlusssensoren zugeordnet sein. `

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

                                        Wie heißen die Einträge in ioBroker?? Der ran heißt glaube auf englisch enums, deutsch listen? Weiß nicht grad aus dem Kopf.

                                        Dort gibt es dann enum.functions und enum.rooms. Die sind interessant.

                                        Wenn da was drinsteht wie ${whatever} dann musst du in der ccu einmalig alle Raum und gewerknamen anklicken und speichern und hm-Rega neu starten … im worst case in ioBroker umbenennen.

                                        1 Reply Last reply Reply Quote 0
                                        • P
                                          pxstd last edited by

                                          @apollon77:

                                          Wie heißen die Einträge in ioBroker?? Der ran heißt glaube auf englisch enums, deutsch listen? Weiß nicht grad aus dem Kopf.

                                          Dort gibt es dann enum.functions und enum.rooms. Die sind interessant.

                                          Wenn da was drinsteht wie ${whatever} dann musst du in der ccu einmalig alle Raum und gewerknamen anklicken und speichern und hm-Rega neu starten … im worst case in ioBroker umbenennen. `

                                          Ich finde im Rega weder Objekte mit functions, noch mit rooms, dafür aber :

                                          ! ${ruleTmpProgramName} 1 channel
                                          ! 12534 Active state ${ruleTmpProgramName} 1 enabled state state.enabled false
                                          ! ProgramExecute state ${ruleTmpProgramName} 1 execute state action.execute false
                                          ! 13682 channel ${ruleTmpProgramName} channel
                                          ! Active state ${ruleTmpProgramName} enabled state state.enabled true
                                          ! ProgramExecute state ${ruleTmpProgramName} execute state action.execute false

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

                                            Moin,

                                            @pxstd:

                                            Ich finde im Rega weder Objekte mit functions, noch mit rooms, … `
                                            die findest Du auch nicht im Rega, sondern im Reiter „Aufzählungen“ (ggf. musst Du ihn noch einblenden).

                                            Gruß,

                                            Eric

                                            Von unterwegs getippert

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            866
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            climate heating javascript template
                                            115
                                            1127
                                            309833
                                            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