Skip to content
  • Home
  • 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

Community Forum

  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.3k

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

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

[Vorlage] Heizungsthermostatsteuerung 2.1 - Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
javascripttemplateheatingclimate
1.1k Beiträge 115 Kommentatoren 396.6k 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.
  • eric2905E Offline
    eric2905E Offline
    eric2905
    schrieb am zuletzt editiert von
    #44

    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

    Roses are red, violets are blue,

    if I listen to metal, my neighbours do too

    1 Antwort Letzte Antwort
    0
    • N Offline
      N Offline
      Newmiraculix
      schrieb am zuletzt editiert von
      #45

      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

      CCU2 mit noch nicht ganz so vielen Aktoren :D

      RaspberryPi2 für SmartHome mit ioBroker

      RaspberryPi3 für SmartHome Mit iobroker (Multihost)

      Logitech Harmony Hub

      RaspberryPi3 mit openELEC

      Amazon Echo, Echo Dot und Echo…

      1 Antwort Letzte Antwort
      0
      • L Offline
        L Offline
        looxer01
        schrieb am zuletzt editiert von
        #46

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

          @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 Antwort Letzte Antwort
          0
          • P Offline
            P Offline
            pxstd
            schrieb am zuletzt editiert von
            #48

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

              Hi,

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

              sende doch bitte mal deine Einstellungen - komplett

              vG Looxer

              1 Antwort Letzte Antwort
              0
              • eric2905E Offline
                eric2905E Offline
                eric2905
                schrieb am zuletzt editiert von
                #50

                Oder ist das Gewerk einfach nur leer?

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

                Gruß,

                Eric

                Von unterwegs getippert

                Roses are red, violets are blue,

                if I listen to metal, my neighbours do too

                1 Antwort Letzte Antwort
                0
                • P Offline
                  P Offline
                  pxstd
                  schrieb am zuletzt editiert von
                  #51

                  @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 Antwort Letzte Antwort
                  0
                  • eric2905E Offline
                    eric2905E Offline
                    eric2905
                    schrieb am zuletzt editiert von
                    #52

                    War ja nur eine Idee.

                    Von unterwegs getippert

                    Roses are red, violets are blue,

                    if I listen to metal, my neighbours do too

                    1 Antwort Letzte Antwort
                    0
                    • P Offline
                      P Offline
                      pxstd
                      schrieb am zuletzt editiert von
                      #53

                      @eric2905:

                      War ja nur eine Idee.

                      Von unterwegs getippert `

                      Auf jeden Fall! Danke für den Hinweis :)

                      1 Antwort Letzte Antwort
                      0
                      • apollon77A Offline
                        apollon77A Offline
                        apollon77
                        schrieb am zuletzt editiert von
                        #54

                        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!!

                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                        1 Antwort Letzte Antwort
                        0
                        • P Offline
                          P Offline
                          pxstd
                          schrieb am zuletzt editiert von
                          #55

                          @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 Antwort Letzte Antwort
                          0
                          • apollon77A Offline
                            apollon77A Offline
                            apollon77
                            schrieb am zuletzt editiert von
                            #56

                            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.

                            Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                            • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                            • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                            1 Antwort Letzte Antwort
                            0
                            • P Offline
                              P Offline
                              pxstd
                              schrieb am zuletzt editiert von
                              #57

                              @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 Antwort Letzte Antwort
                              0
                              • eric2905E Offline
                                eric2905E Offline
                                eric2905
                                schrieb am zuletzt editiert von
                                #58

                                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

                                Roses are red, violets are blue,

                                if I listen to metal, my neighbours do too

                                1 Antwort Letzte Antwort
                                0
                                • P Offline
                                  P Offline
                                  pxstd
                                  schrieb am zuletzt editiert von
                                  #59

                                  @eric2905:

                                  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 `

                                  Hier sind Sie:

                                  ! 3277_bildschirmfoto_2018-01-07_um_10.29.07.png

                                  1 Antwort Letzte Antwort
                                  0
                                  • apollon77A Offline
                                    apollon77A Offline
                                    apollon77
                                    schrieb am zuletzt editiert von
                                    #60

                                    Also wie vermutet. Bitte siehe mein Post von gestern Abend. Eine editiersession in der ccu bei Gewerken und räumen. Und in iobroker. Deine gewerke heißen halt faktisch anderes.

                                    Bevor die Frage kommt wo das her kommt: die ccu kann mehrere Sprachen. Also sind alle vorgefüllten Namen wie diese so genannt und werden bei der Anzeige „übersetzt“. Erst wenn man den Namen ändert stehe eigene Namen drin

                                    Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                    • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                    • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                    1 Antwort Letzte Antwort
                                    0
                                    • P Offline
                                      P Offline
                                      pxstd
                                      schrieb am zuletzt editiert von
                                      #61

                                      Und im Anschluss das Heizungsscript neu einlesen? Oder muss irgendwas resettet werden?

                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A Offline
                                        apollon77A Offline
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #62

                                        Javascript Adapter Restkarten. Neustart vom Skript passiert damit automatisch.

                                        Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

                                        • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
                                        • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
                                        1 Antwort Letzte Antwort
                                        0
                                        • eric2905E Offline
                                          eric2905E Offline
                                          eric2905
                                          schrieb am zuletzt editiert von
                                          #63

                                          Du kannst auf der CCU die Gewerke und Räume umbenennen (z.B. überall eine 1 hinten dranhängen) und sie dann wieder zurück umbenennen (die 1 wieder löschen).

                                          Dann in ioBroker die Räume und Gewerke löschen und über hm-rega einmal neu Sanchez.

                                          Gruß,

                                          Eric

                                          Von unterwegs getippert

                                          Roses are red, violets are blue,

                                          if I listen to metal, my neighbours do too

                                          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

                                          743

                                          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
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe