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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Skript Heizung - Homematic Geräte

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.2k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.6k

Skript Heizung - Homematic Geräte

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
heatingblockly
12 Beiträge 2 Kommentatoren 722 Aufrufe 1 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.
  • Wieger DanielW Wieger Daniel

    hallo, leider stehe ich komplett an un benötige Hilfe.... :(

    2 Wandthermostate sollen einen Schaltaktor (für Pumpe) schalten.

    in verwendung: Adapter Heatingcontroll

    2xHomematic Funk-Wandthermostat HM-TC-IT-WM-W-EU
    4x Funk-Heizkörperthermostat HM-CC-RT-DN (2 pro Raumthermostat!)
    1x Homematic Funk-Schaltaktor 2fach, Unterputzmontage HM-LC-Sw2-FM (je Schaltausgang 1 Pumpe) <-- 1 Pumpe Haus, 1 Pumpe Zubau (Zubau: 2 Wandthermostate 4HK Thermostate!)


    über Heatingcontroll werden 2 Datenpunkte angesteuert - Heizung Aromastudio und Heizung Wohnzimmer

    nun schaffe ich es zwar über ein Skript den Aktor der Pumpe einzuschalten, aber nicht mehr aus.
    Oder es funktioniert einfach beides nicht :(

    Auf Facebook habe ich bereits gefragt, daher erlaube ich mir dies zu verlinken.. da ist auch ein kleiner Kriesen verlauf.
    [https://www.facebook.com/groups/440499112958264/permalink/1377388715935961/](link url)

    Achja... trage ich den pumpenaktor im Heatingcontrol Adapter bei beiden Räumen ein, wird immer nur bei einem Raum geschalten, wenn Raum 2 schalten möchte, bleibt der Aktor aus :(

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    @Wieger-Daniel
    Ich würde die Pumpen abhängig von der maximalen Ventilstellung der HM-CC-RT-DN schalten:

    // Pumpen abhängig von Ventilstellung schalten
    
    const idV1 = 'hm-rpc...';
    const idV2 = 'hm-rpc...';
    const idV3 = 'hm-rpc...';
    const idV4 = 'hm-rpc...';
    const idP1 = 'hm-rpc...';
    const idP2 = 'hm-rpc...';
    
    var v1 = getState(idV1).val;
    var v2 = getState(idV2).val;
    var v3 = getState(idV3).val;
    var v4 = getState(idV4).val;
    var p1 = getState(idP1).val;
    
    function pumpen() {
        let maxV = Math.max(v1, v2, v3, v4);
        if(maxV > 15) p1 = true;
        else if (maxV < 10) p1 = false;
        if(getState(idP1).val != p1) setState(idP1, p1)
        if(getState(idP2).val != p1) setState(idP2, p1)
    }
    
    pumpen(); // Script start
    
    on(idV1, function(dp) {
        v1 = dp.state.val;
        pumpen();
    });
    on(idV2, function(dp) {
        v2 = dp.state.val;
        pumpen();
    });
    on(idV3, function(dp) {
        v3 = dp.state.val;
        pumpen();
    });
    on(idV4, function(dp) {
        v4 = dp.state.val;
        pumpen();
    });
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    Wieger DanielW 1 Antwort Letzte Antwort
    0
    • paul53P paul53

      @Wieger-Daniel
      Ich würde die Pumpen abhängig von der maximalen Ventilstellung der HM-CC-RT-DN schalten:

      // Pumpen abhängig von Ventilstellung schalten
      
      const idV1 = 'hm-rpc...';
      const idV2 = 'hm-rpc...';
      const idV3 = 'hm-rpc...';
      const idV4 = 'hm-rpc...';
      const idP1 = 'hm-rpc...';
      const idP2 = 'hm-rpc...';
      
      var v1 = getState(idV1).val;
      var v2 = getState(idV2).val;
      var v3 = getState(idV3).val;
      var v4 = getState(idV4).val;
      var p1 = getState(idP1).val;
      
      function pumpen() {
          let maxV = Math.max(v1, v2, v3, v4);
          if(maxV > 15) p1 = true;
          else if (maxV < 10) p1 = false;
          if(getState(idP1).val != p1) setState(idP1, p1)
          if(getState(idP2).val != p1) setState(idP2, p1)
      }
      
      pumpen(); // Script start
      
      on(idV1, function(dp) {
          v1 = dp.state.val;
          pumpen();
      });
      on(idV2, function(dp) {
          v2 = dp.state.val;
          pumpen();
      });
      on(idV3, function(dp) {
          v3 = dp.state.val;
          pumpen();
      });
      on(idV4, function(dp) {
          v4 = dp.state.val;
          pumpen();
      });
      
      Wieger DanielW Offline
      Wieger DanielW Offline
      Wieger Daniel
      schrieb am zuletzt editiert von
      #3

      @paul53
      Vielen Dank

      Habe dies über ein Homematic Script bereits versucht und bin gescheitert :(

      Irgendwie sind die ventile scheinbar länger offen als notwendig und daher schaltet die heizung auch ned richtig :(

      Darf ich dein skript versuchen?

      Muss ich nur die grünen Werte anpassen oder?

      Also V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

      Sollte ich alle 4 Ventile eintragen, oder nur 2(sind ja 2 pro Raumthermostat).

      Vielen dank

      paul53P 1 Antwort Letzte Antwort
      0
      • Wieger DanielW Wieger Daniel

        @paul53
        Vielen Dank

        Habe dies über ein Homematic Script bereits versucht und bin gescheitert :(

        Irgendwie sind die ventile scheinbar länger offen als notwendig und daher schaltet die heizung auch ned richtig :(

        Darf ich dein skript versuchen?

        Muss ich nur die grünen Werte anpassen oder?

        Also V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

        Sollte ich alle 4 Ventile eintragen, oder nur 2(sind ja 2 pro Raumthermostat).

        Vielen dank

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von paul53
        #4

        @Wieger-Daniel sagte:

        Muss ich nur die grünen Werte anpassen oder?

        Ja, die IDs müssen eingetragen werden.

        @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

        V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

        Ja.

        @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

        Sollte ich alle 4 Ventile eintragen

        Ja. Die Ventilstellungen können trotz gemeinsamem Raumthermostat unterschiedlich sein (I-Anteil des Reglers). Der Raumthermostat regelt nicht, sondern gibt nur Temperatur-Istwert und -Sollwert vor.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        Wieger DanielW 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @Wieger-Daniel sagte:

          Muss ich nur die grünen Werte anpassen oder?

          Ja, die IDs müssen eingetragen werden.

          @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

          V1, V2, V3, V4 sind die HK Ventile. P1 der Pumpenaktor.

          Ja.

          @Wieger-Daniel sagte in Skript Heizung - Homematic Geräte:

          Sollte ich alle 4 Ventile eintragen

          Ja. Die Ventilstellungen können trotz gemeinsamem Raumthermostat unterschiedlich sein (I-Anteil des Reglers). Der Raumthermostat regelt nicht, sondern gibt nur Temperatur-Istwert und -Sollwert vor.

          Wieger DanielW Offline
          Wieger DanielW Offline
          Wieger Daniel
          schrieb am zuletzt editiert von
          #5

          @paul53
          hab das nun übernommen, die Datenpunkte angepasst..

          Pumpe schaltet nicht aus. :(
          alle Ventile sind auf 0% Pumpe läuft frohlockend weiter.!!
          broker0.png

          paul53P 1 Antwort Letzte Antwort
          0
          • Wieger DanielW Wieger Daniel

            @paul53
            hab das nun übernommen, die Datenpunkte angepasst..

            Pumpe schaltet nicht aus. :(
            alle Ventile sind auf 0% Pumpe läuft frohlockend weiter.!!
            broker0.png

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von paul53
            #6

            @Wieger-Daniel sagte:

            die Datenpunkte angepasst..

            idP1 und idP2 sind identisch. Wenn nur eine Pumpe gesteuert werden soll, dann lösche alles, was idP2 enthält.

            Du verwendest eine negative Hysterese. Ändere in

                if(maxV > 22) p1 = true;
                else if (maxV < 20) p1 = false;
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            Wieger DanielW 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @Wieger-Daniel sagte:

              die Datenpunkte angepasst..

              idP1 und idP2 sind identisch. Wenn nur eine Pumpe gesteuert werden soll, dann lösche alles, was idP2 enthält.

              Du verwendest eine negative Hysterese. Ändere in

                  if(maxV > 22) p1 = true;
                  else if (maxV < 20) p1 = false;
              
              Wieger DanielW Offline
              Wieger DanielW Offline
              Wieger Daniel
              schrieb am zuletzt editiert von
              #7

              @paul53
              ok fast alle angepasst :O

              hatte den 2. Datenpunkt mit idP2 zuerst nicht rausgelöscht (übersehen) und ne fehlermeldung erhalten... daher hab ich einfach mal den gleichen wie bei P1 genommen :'D

              uff die zwei maxV hab ich vertauscht :/

              dann kanns ja gar nicht funktionieren, wenn ich hier so pfusche...

              Danke, Danke Danke :)
              Ich hoffe jetzt hab ichs und es funktioniert. ich glaub ich muss mich nun echt mal in Javascripte einlesen/einlernen...

              // Pumpen abhängig von Ventilstellung schalten
              
               
              
              const idV1 = 'hm-rpc.0.REQ0840934.4.VALVE_STATE'/*Wohzimmer2 3 VALVE STATE*/;
              
              const idV2 = 'hm-rpc.0.REQ0840963.4.VALVE_STATE'/*Wohnzimmer HK 3 VALVE STATE*/;
              
              const idV3 = 'hm-rpc.0.REQ0841103.4.VALVE_STATE'/*Aromastudio HK 3 VALVE STATE*/;
              
              const idV4 = 'hm-rpc.0.REQ0841104.4.VALVE_STATE'/*Aromastudio HK 2 4 VALVE STATE*/;
              
              const idP1 = 'hm-rpc.0.QEQ0022408.1.STATE'/*Heizpumpe unten STATE*/;
              
               
              
              var v1 = getState(idV1).val;
              
              var v2 = getState(idV2).val;
              
              var v3 = getState(idV3).val;
              
              var v4 = getState(idV4).val;
              
              var p1 = getState(idP1).val;
              
               
              
              function pumpen() {
              
                  let maxV = Math.max(v1, v2, v3, v4);
              
                  if(maxV > 22) p1 = true;
              
                  else if (maxV < 20) p1 = false;
              
                  if(getState(idP1).val != p1) setState(idP1, p1)
              
              }
              
               
              
              pumpen(); // Script start
              
               
              
              on(idV1, function(dp) {
              
                  v1 = dp.state.val;
              
                  pumpen();
              
              });
              
              on(idV2, function(dp) {
              
                  v2 = dp.state.val;
              
                  pumpen();
              
              });
              
              on(idV3, function(dp) {
              
                  v3 = dp.state.val;
              
                  pumpen();
              
              });
              
              on(idV4, function(dp) {
              
                  v4 = dp.state.val;
              
                  pumpen();
              
              });
              
              

              so hab ichs nun gespeichert :)

              paul53P 1 Antwort Letzte Antwort
              0
              • Wieger DanielW Wieger Daniel

                @paul53
                ok fast alle angepasst :O

                hatte den 2. Datenpunkt mit idP2 zuerst nicht rausgelöscht (übersehen) und ne fehlermeldung erhalten... daher hab ich einfach mal den gleichen wie bei P1 genommen :'D

                uff die zwei maxV hab ich vertauscht :/

                dann kanns ja gar nicht funktionieren, wenn ich hier so pfusche...

                Danke, Danke Danke :)
                Ich hoffe jetzt hab ichs und es funktioniert. ich glaub ich muss mich nun echt mal in Javascripte einlesen/einlernen...

                // Pumpen abhängig von Ventilstellung schalten
                
                 
                
                const idV1 = 'hm-rpc.0.REQ0840934.4.VALVE_STATE'/*Wohzimmer2 3 VALVE STATE*/;
                
                const idV2 = 'hm-rpc.0.REQ0840963.4.VALVE_STATE'/*Wohnzimmer HK 3 VALVE STATE*/;
                
                const idV3 = 'hm-rpc.0.REQ0841103.4.VALVE_STATE'/*Aromastudio HK 3 VALVE STATE*/;
                
                const idV4 = 'hm-rpc.0.REQ0841104.4.VALVE_STATE'/*Aromastudio HK 2 4 VALVE STATE*/;
                
                const idP1 = 'hm-rpc.0.QEQ0022408.1.STATE'/*Heizpumpe unten STATE*/;
                
                 
                
                var v1 = getState(idV1).val;
                
                var v2 = getState(idV2).val;
                
                var v3 = getState(idV3).val;
                
                var v4 = getState(idV4).val;
                
                var p1 = getState(idP1).val;
                
                 
                
                function pumpen() {
                
                    let maxV = Math.max(v1, v2, v3, v4);
                
                    if(maxV > 22) p1 = true;
                
                    else if (maxV < 20) p1 = false;
                
                    if(getState(idP1).val != p1) setState(idP1, p1)
                
                }
                
                 
                
                pumpen(); // Script start
                
                 
                
                on(idV1, function(dp) {
                
                    v1 = dp.state.val;
                
                    pumpen();
                
                });
                
                on(idV2, function(dp) {
                
                    v2 = dp.state.val;
                
                    pumpen();
                
                });
                
                on(idV3, function(dp) {
                
                    v3 = dp.state.val;
                
                    pumpen();
                
                });
                
                on(idV4, function(dp) {
                
                    v4 = dp.state.val;
                
                    pumpen();
                
                });
                
                

                so hab ichs nun gespeichert :)

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #8

                @Wieger-Daniel sagte:

                so hab ichs nun gespeichert

                Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                Wieger DanielW 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @Wieger-Daniel sagte:

                  so hab ichs nun gespeichert

                  Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

                  Wieger DanielW Offline
                  Wieger DanielW Offline
                  Wieger Daniel
                  schrieb am zuletzt editiert von
                  #9

                  @paul53 sagte in Skript Heizung - Homematic Geräte:

                  @Wieger-Daniel sagte:

                  so hab ichs nun gespeichert

                  Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

                  ja mit Firefox kopiert..

                  So einschalten hat nun schon mal funktioniert. :)
                  So Ausschalten funktioniert auch.

                  nochmals vielen Dank :)
                  Aber die Übertragung der Ventilöffnung an die WEBUI ist echt sehr träge :/ die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • Wieger DanielW Wieger Daniel

                    @paul53 sagte in Skript Heizung - Homematic Geräte:

                    @Wieger-Daniel sagte:

                    so hab ichs nun gespeichert

                    Mit Firefox aus dem Forum kopiert ? Darauf deuten die vielen Leerzeilen hin.

                    ja mit Firefox kopiert..

                    So einschalten hat nun schon mal funktioniert. :)
                    So Ausschalten funktioniert auch.

                    nochmals vielen Dank :)
                    Aber die Übertragung der Ventilöffnung an die WEBUI ist echt sehr träge :/ die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #10

                    @Wieger-Daniel sagte:

                    die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

                    Die Thermostate senden nur alle ca. 2,5 Minuten.

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    Wieger DanielW 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @Wieger-Daniel sagte:

                      die Ventile sind teils schon sicherlich fast ne Minute zu, kommt erst die Anzeige von 0% in der Webui

                      Die Thermostate senden nur alle ca. 2,5 Minuten.

                      Wieger DanielW Offline
                      Wieger DanielW Offline
                      Wieger Daniel
                      schrieb am zuletzt editiert von
                      #11

                      @paul53 manchmal wäre mir etwas kürzere Sendeintervalle lieber :)

                      Aber egal. Kann man damit leben.
                      Hauptsache es läuft nun.

                      paul53P 1 Antwort Letzte Antwort
                      0
                      • Wieger DanielW Wieger Daniel

                        @paul53 manchmal wäre mir etwas kürzere Sendeintervalle lieber :)

                        Aber egal. Kann man damit leben.
                        Hauptsache es läuft nun.

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #12

                        @Wieger-Daniel sagte:

                        manchmal wäre mir etwas kürzere Sendeintervalle lieber

                        Dann müssten die Batterien öfter gewechselt werden.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        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

                        427

                        Online

                        32.7k

                        Benutzer

                        82.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