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] Ventilsteuerung PWM-Ansatz für FBH/IR-Panele o.ä.

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] Ventilsteuerung PWM-Ansatz für FBH/IR-Panele o.ä.

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
83 Beiträge 22 Kommentatoren 19.2k Aufrufe 9 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.
  • etvE Offline
    etvE Offline
    etv
    schrieb am zuletzt editiert von
    #32

    …spitze, danke dir!

    Liebe Grüße

    tom

    …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

    1 Antwort Letzte Antwort
    0
    • etvE Offline
      etvE Offline
      etv
      schrieb am zuletzt editiert von
      #33

      Servus Apollon77,

      ich hab dein Script nun im Einsatz und es scheint mal ganz gut zu klappen. Ich hab es noch dahingehend modifiziert (bzw. meinen Teil in einem eigenen Script zusammengefasst). dass ich die Heizung erst starte, wenn auch ein Ventil auf geht und wieder stoppe, wenn alle Ventile geschlossen sind. Unsere Heizung, bzw. die Pumpe schaltet sich leider nicht ab, wenn kein Ventil offen ist…so läuft die Pumpe immer gehen geschlossene Ventile.

      Das wirft jedoch das Problem auf, dass in der Übergangszeit die vom Script berechneten Heizzeiten natürlich zu gering sind und keine nennenswerten Auswirkungen auf die Temperatur haben, muss doch die Heizung erst "Fahrt aufnehmen".

      Nun möchte ich in diesem Fall (Heizung eigentlich aus) die Heizzeiten verlängern, finde jedoch die Stelle nicht wirklich im Script.

      Kannst du mir bitte sagen, wo in etwa die errechnete Heizzeit "fertig" ist und wo ich sie dann ggfls verlängern kann?

      Liebe Grüße

      Tom

      PS: das Programm mit seinen, ich sag mal "verschachtelten Variablen" ist für mich einfach zu hoch :D

      …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

      1 Antwort Letzte Antwort
      0
      • apollon77A Online
        apollon77A Online
        apollon77
        schrieb am zuletzt editiert von
        #34

        Puuhhh .. da bin auch ich etwas überfragt. Ich habe ja das Skript auch "Nur" weitestgehend von einem Homematic-Skript (siehe Link) übernommen und in JavaScript umgewandelt.

        Von daher wäre @Twoxx wohl der bessere Ansprechpartner dazu. chreib Ihm doch mal hier e PN oder poste deine Frage in dem HM Thread.

        Alternativ ist die Frage ob das überhaupt nötig ist. Das Skript hier betrachtet die zurückliegende Temperaturentwicklung und projiziert die Zukunft. Von daher sollte es egal sein weil sich das ganze dann wieder relativiert über die Zeit bzw. alles eh davon abhängt wie gross dein Temperaturunterschied ist den Du ausgleichen musst.

        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
        • etvE Offline
          etvE Offline
          etv
          schrieb am zuletzt editiert von
          #35

          @apollon77:

          Puuhhh .. da bin auch ich etwas überfragt. Ich habe ja das Skript auch "Nur" weitestgehend von einem Homematic-Skript (siehe Link) übernommen und in JavaScript umgewandelt.

          Von daher wäre @Twoxx wohl der bessere Ansprechpartner dazu. chreib Ihm doch mal hier e PN oder poste deine Frage in dem HM Thread.

          Alternativ ist die Frage ob das überhaupt nötig ist. Das Skript hier betrachtet die zurückliegende Temperaturentwicklung und projiziert die Zukunft. Von daher sollte es egal sein weil sich das ganze dann wieder relativiert über die Zeit bzw. alles eh davon abhängt wie gross dein Temperaturunterschied ist den Du ausgleichen musst. `

          …OK, danke dir!

          Liebe Grüße

          Tom

          …ist schon sehr lange begeisterter ioBroker Nutzer! 1x zu Hause und 1x auf der Alm. ioBroker ist das 'Hirn' des Smarthome und steuert HomeMatic und Shellys, loggt was so passiert, zeigt es auf Tabletts schön an und ermöglicht mir via Cloud Adapter den Fernzugriff...

          1 Antwort Letzte Antwort
          0
          • D Offline
            D Offline
            DenniskKo
            schrieb am zuletzt editiert von
            #36

            Hallo,

            kann mir mal bitte jemand erklären (bin leider Homematic unkundig :oops: )

            um was für Werte es sich hier handelt?

            	stateIdHeizungAktor: "hm-rpc.0.LEQ0282183.3.STATE",
                    stateIdHeizungAktorOnTime: "hm-rpc.0.LEQ0282183.3.ON_TIME",
                    stateIdSollTemperatur: "hm-rpc.0.NEQ0072178.2.SET_TEMPERATURE",
                    stateIdIstTemperatur: "hm-rpc.0.NEQ0072178.1.TEMPERATURE"
            

            stateIdHeizungAktor: -> Aktor = Stellmotor Heizung

            stateIdHeizungAktorOnTime: -> ?

            stateIdSollTemperatur: -> gewünschte Raumtemperatur

            stateIdIstTemperatur: -> aktuelle (gemessene) Temperatur

            Liege ich da richtig? Für einen kleinen Schubs in die richtige Richtung wäre ich dankbar.

            Grüße, Dennis

            1 Antwort Letzte Antwort
            0
            • apollon77A Online
              apollon77A Online
              apollon77
              schrieb am zuletzt editiert von
              #37

              Fast korrekt:
              > stateIdHeizungAktorOnTime: -> ?

              HM-Geräte haben einen "ON_TIME" Datenpunkt der angibt wie lange an bleiben soll. Dann macht der Akttor nach Ablauf der Zeit automatisch aus. Also quasi die "Zeitsteuerung für den Aktor". Das Skript schreibt da die Anzahl Sekunden rein nachdem aus gehen soll

              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
              • T Offline
                T Offline
                thobastian
                schrieb am zuletzt editiert von
                #38

                Hallo !

                Ich möchte dies Script verwenden und möchte nur sicherstellen, dass meine Hardware auch so angesteuert wird, wie gedacht.

                Ich habe einen Stellantrieb, der mit HM-4er-Funkschlataktor gesteuert wird, also nur an oder aus.

                Außerdem habe ich einen Thermostatregler und Fenstersensor von HM.

                Jetzt ist der Fenstersensor direkt mit dem Thermostat von HM verknüpft. Der Thermostat gibt die Temperaturen in der Woche vor.

                Wie werden die Temperaturen aus dem Thermostat verwendet um meinen Stellantrieb zu steuern ? Kann das Script hier helfen?

                HW: Homematic CCU2, Amazon Echo, diverse NodeMCU's mit Sensoren,

                SW: IOBroker: immer neueste Version mit ESPEasy auf den NodeMCU's

                1 Antwort Letzte Antwort
                0
                • apollon77A Online
                  apollon77A Online
                  apollon77
                  schrieb am zuletzt editiert von
                  #39

                  Das Skript hier arbeitet ausschliesslich auf den "Ist"-Werten und dem Soll-Wert und steuert in die Zukunft und versucht hierbei nicht zu "übersteuern".

                  Wie im ersten Post beschrieben die States entsprechend definieren und setzen und fertig. Diesem Skript sind Fenstersensoren erstmal egal, bzw eine Absenkung der gewünschten Soll-Temperatur wird im nächsten Laufzyklus dann berücksichtigt.

                  Versuchs aus dann siehst Du wie es tut.

                  Wegen dem Ansatz musst Du bei deiner Steuerung der "Wann soll es wie warm sein" aber die übliche Aufheizzeit berücksichtigen weil das Wochen/Tagesprogramm im Thermostat gespeichert ist und so für das Skript nicht verfügbar ist.

                  Für eine "Zukunftssteuerung" (also früh genug schonmal die Heizung einschalten) gibt es die Erweiterung aus dem ersten Post die aber darauf aufsetzt das die Steuerung nicht mit den Daten aus dem Thermostat läuft sondern über ein cooles Skript.

                  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
                  • E Offline
                    E Offline
                    e-i-k-e
                    schrieb am zuletzt editiert von
                    #40

                    Guten Abend,

                    habe das Skript wie folgt angepasst.

                    var rooms= {
                        'Fernsehzimmer': {
                            stateIdHeizungAktor: "hm-rpc.0.PEQ0508369.1.STATE",
                            stateIdHeizungAktorOnTime: "hm-rpc.0.PEQ0508369.1.ON_TIME",
                            stateIdSollTemperatur: "hm-rpc.0.PEQ0508369.1.SOLLTEMP",
                            stateIdIstTemperatur: "hm-rpc.0.LEQ0420645.4.ACTUAL_TEMPERATURE"
                        },
                        'Flur_unten': {
                            stateIdHeizungAktor: "hm-rpc.0.PEQ0508369.5.STATE",
                            stateIdHeizungAktorOnTime: "hm-hm-rpc.0.PEQ0508369.5.ON_TIME",
                            stateIdSollTemperatur: "hm-rpc.0.PEQ0508369.5.SOLLTEMP",
                            stateIdIstTemperatur: "mihome.0.devices.weather_v1_158d00023a7f01.temperature"
                        },
                        'Kueche': {
                            stateIdHeizungAktor: "hm-rpc.0.PEQ0508369.6.STATE",
                            stateIdHeizungAktorOnTime: "hm-rpc.0.PEQ0508369.6.ON_TIME",
                            stateIdSollTemperatur: "hm-rpc.0.PEQ0508369.6.SOLLTEMP",
                            stateIdIstTemperatur: "mihome.0.devices.weather_v1_158d0002478275.temperature"
                        },
                        'Wohnzimmer': {
                            stateIdHeizungAktor: "hm-rpc.0.PEQ0508369.3.STATE", 
                            stateIdHeizungAktorOnTime: "hm-rpc.0.PEQ0508369.3.ON_TIME",
                            stateIdHeizungUnterstuetzungAktor: "hm-rpc.0.PEQ0508369.4.STATE",
                            stateIdHeizungUnterstuetzungAktorOnTime: "hm-rpc.0.PEQ0508369.4.ON_TIME",
                            stateIdSollTemperatur: "hm-rpc.0.PEQ0508369.3.SOLLTEMP",
                            stateIdIstTemperatur: "mihome.0.devices.weather_v1_158d0002325c93.temperature"
                        }
                    
                    

                    Im Raum "Flur_unten" sind zwei und im Raum "Wohnzimmer" sind drei Heizkreise vorhanden.

                    Wie füge ich ich diese zu den Räumen hinzu?

                    Würde es wie folgt funktionieren?

                       'Wohnzimmer': {
                            stateIdHeizungAktor: "1", 
                            stateIdHeizungAktorOnTime: "1",
                            stateIdHeizungAktor: "2", 
                            stateIdHeizungAktorOnTime: "2",
                            stateIdHeizungAktor: "3", 
                            stateIdHeizungAktorOnTime: "3",
                            stateIdSollTemperatur: "hm-rpc.0.PEQ0508369.3.SOLLTEMP",
                            stateIdIstTemperatur: "mihome.0.devices.weather_v1_158d0002325c93.temperature"
                    
                    
                    1 Antwort Letzte Antwort
                    0
                    • apollon77A Online
                      apollon77A Online
                      apollon77
                      schrieb am zuletzt editiert von
                      #41

                      ne ein Key kann nur einmal vorkommen. Mehrere Schaltaktoren dann solltest Du ein Javascript-State anlegen wo du das "wegkapselst" bzw über Scenen Adapter

                      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
                      • E Offline
                        E Offline
                        e-i-k-e
                        schrieb am zuletzt editiert von
                        #42

                        Danke für den Ansatz!

                        Ich werde es mal versuchen :)

                        1 Antwort Letzte Antwort
                        0
                        • E Offline
                          E Offline
                          e-i-k-e
                          schrieb am zuletzt editiert von
                          #43

                          Guten Abend,

                          der weg über den Scenen Adapter hat funktioniert.

                          Das Skript lief bis gestern super.

                          Ich musste ein Neustart meiner CCU (Raspberry) durchführen und habe seit dem folgendes im ioBroker log.

                          8064_1.jpg
                          8064_2.jpg

                          1 Antwort Letzte Antwort
                          0
                          • apollon77A Online
                            apollon77A Online
                            apollon77
                            schrieb am zuletzt editiert von
                            #44

                            Restarte mal die hm-* Adapter

                            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
                            • E Offline
                              E Offline
                              e-i-k-e
                              schrieb am zuletzt editiert von
                              #45

                              Das war es schon! :lol:

                              Danke!!

                              Folgende Wahrung erscheint weiterhin.

                              Was bedeutet diese?

                              javascript.0 2018-11-11 23:12:12.271 warn at Object. <anonymous>(script.js.Fußbodenheizung:368:9)

                              javascript.0 2018-11-11 23:12:12.270 warn at ventilLogik (script.js.Fußbodenheizung:248:25)

                              javascript.0 2018-11-11 23:12:12.270 warn at controlFBHAktor (script.js.Fußbodenheizung:387:9)

                              javascript.0 2018-11-11 23:12:12.270 warn Wrong type of scene.Fußboden_Flur_OnTime: "number". Please fix, while deprecated and will not work in next versions.</anonymous>

                              1 Antwort Letzte Antwort
                              0
                              • apollon77A Online
                                apollon77A Online
                                apollon77
                                schrieb am zuletzt editiert von
                                #46

                                Was hat der Scene Datenpunkt denn für einen Datentyp? Das Skript schreibt eine zahl rein. Das heisst der sollte "number" oder "Mixed" haben, sonst kommt diese Meldung

                                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
                                • E Offline
                                  E Offline
                                  e-i-k-e
                                  schrieb am zuletzt editiert von
                                  #47

                                  Kurze Rückmeldung, funktioniert nun alles wie gewollt.

                                  Vielen Dank für deine super arbeit und den guten Support :!:

                                  1 Antwort Letzte Antwort
                                  0
                                  • jedoJ Offline
                                    jedoJ Offline
                                    jedo
                                    schrieb am zuletzt editiert von
                                    #48

                                    Hallo in die Runde,

                                    da wir hier nur Wand- und Fussbodenheizung mit allen bekannten Vor- und Nachteilen haben,

                                    gefällt mir das Script eigentlich ganz gut. :)

                                    Der einzige Haken für mich ist ich möchte das gern mit "Non" HM-Hardware verwenden da ich nun mal keine HM-Hardware habe. ;)

                                    Abhilfe soll folgendes Konstrukt in der Funktion "controlFBHAktor" bringen.

                                    function controlFBHAktor(roomName, enabled, time) {
                                        var useSupport = false;
                                        if (rooms[roomName].stateIdHeizungUnterstuetzungAktor) {
                                            var isttemperatur = getState(rooms[roomName].stateIdIstTemperatur).val;
                                            var solltemperatur = getState(rooms[roomName].stateIdSollTemperatur).val;
                                            if (enabled && solltemperatur - isttemperatur > rooms[roomName].heizunterstuetzungKelvin) {
                                                if (debug) {console.log('    Steuern UnterstützungsAktor FBH ' + roomName + ' --> ' + enabled + ' (time=' + time + ')');}
                                                useSupport = true;
                                            }
                                            else if (!enabled || getState(rooms[roomName].stateIdHeizungUnterstuetzungAktor).val) useSupport = true;
                                        }
                                    
                                        if (enabled && time) {
                                            time = Math.round(time);
                                            setState(rooms[roomName].stateIdHeizungAktorOnTime, time, false, function() {
                                                if (debug) {console.log('  *  Steuern Aktor FBH ' + roomName + ' --> ' + enabled + ' (time=' + time + ')');}
                                                setState(rooms[roomName].stateIdHeizungAktor, true, false);
                                    
                                    // ************************************************************************
                                    // **************************  AB HIER ! ********************************
                                    
                                                let startTime = new Date(Date.now() + time * 1000);
                                                console.log(roomName + '.Aktor aus um: ' + startTime);
                                                let endTime = new Date(startTime.getTime() + 1000);
                                                //console.log(endTime);
                                                clearSchedule(rooms[roomName].sch);
                                                 rooms[roomName].sch = schedule({ start: startTime, end: endTime, rule: '*/1 * * * * *' }, function () {
                                                    setState(rooms[roomName].stateIdHeizungAktor, false );
                                                    setState(rooms[roomName].stateIdHeizungAktorOnTime,0 );
                                                clearSchedule(rooms[roomName].sch);
                                                });
                                    
                                     // **************************  BIS HIER ! ********************************
                                     // ************************************************************************      
                                    
                                                if (useSupport) {
                                                    setState(rooms[roomName].stateIdHeizungUnterstuetzungAktorOnTime, time, false, function() {
                                                        if (debug) {console.log('    Steuern UnterstützungsAktor FBH ' + roomName + ' --> ' + enabled + ' (time=' + time + ', tempDiff=' + (solltemperatur - isttemperatur) + ')');}
                                                        setState(rooms[roomName].stateIdHeizungUnterstuetzungAktor, true, false);
                                                    });
                                                }
                                            });
                                        }
                                        else {
                                            if (debug) {console.log('    Steuern Aktor FBH ' + roomName + '--> ' + enabled);}
                                            setState(rooms[roomName].stateIdHeizungAktor, enabled, false);
                                            if (useSupport) {
                                                if (debug) {console.log('    Steuern UnterstützungsAktor FBH ' + roomName + '--> ' + enabled);}
                                                setState(rooms[roomName].stateIdHeizungUnterstuetzungAktor, enabled, false);
                                            }
                                        }
                                    

                                    Ich lass da einfach für jeden Schaltvorgang ein "Schedulereintrag" erstellen welcher nach der errechneten Zeit den "Aktor" auf "false" und die "Zeit" auf "0" setzt und sich danach selbst löscht.

                                    Im "Trockentest" mit 4 Räumen klappt das schon mal wie gewünscht.

                                    Bevor ich das aber in die Praxis umsetze,

                                    was sagt ihr dazu?

                                    Kann man das so machen oder gibt es eine bessere (elegantere) Lösung?

                                    Viele Grüße,

                                    Jens

                                    1 Antwort Letzte Antwort
                                    0
                                    • D Offline
                                      D Offline
                                      DavidFD
                                      schrieb am zuletzt editiert von
                                      #49

                                      Hab mir das vorhin aucb für sonoff 4ch umgeschrieben.

                                      Ich nehme einfach ein settimeout von JS.

                                      Im Livetest hatte ich vorhin die schönste Kurve bisher. Besser als meine PI - Regler Versuche

                                      so siehts grad aus: Hab etwas abgespeckt mit den Supportaktoren.

                                      function controlFBHAktor(roomName, enabled, time) {
                                          var useSupport = false;
                                      
                                          if (enabled && time) {
                                              time = Math.round(time);
                                              if(debug) { console.log("switchoff timer: "+ time+""); }
                                              clearTimeout(rooms[roomName].timeout)
                                              setState(rooms[roomName].stateIdHeizungAktor, enabled, false);
                                              rooms[roomName].timeout =  setTimeout(function() {switchOff(rooms[roomName].stateIdHeizungAktor); }, time * 1000);
                                          } else {
                                              console.log("enabled = "+enabled);
                                              if (debug) {console.log('    Steuern Aktor FBH ' + roomName + '--> ' + enabled);}
                                              setState(rooms[roomName].stateIdHeizungAktor, enabled, false);
                                          }
                                      }
                                      
                                      function switchOff(id) {
                                         console.log("Ausschalten");
                                         setState(id, false);
                                      }
                                      
                                      

                                      2 Raspis als Multihost, Homematic, Xiaomi und Hue.

                                      Bastelprojekte auf www.derfrickler.de zu finden.

                                      Aktuell:

                                      1 Antwort Letzte Antwort
                                      0
                                      • apollon77A Online
                                        apollon77A Online
                                        apollon77
                                        schrieb am zuletzt editiert von
                                        #50

                                        Hi, effektiv sind die Lösungen valide so.

                                        Meine Idee wäre es über eigene Javascript-States wegzukapseln. Also einen "virtuellen" "on-time" und "state" Datenpunkt anlegen der dann gekapselt in einem eigenen Skript das ganze Schaltet.

                                        Im Skript hier wäre es dann keine änderung sondern nurdie Nutzung dieser virtuellen State-IDs im Skript. Das ist das flexibelste um bei Skriptänderungen schnell updaten zu können … sonst müsst Ihr immer alle Eure Änderungen wieder mühselig einbauen.

                                        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
                                        • jedoJ Offline
                                          jedoJ Offline
                                          jedo
                                          schrieb am zuletzt editiert von
                                          #51

                                          @apollon77:

                                          Meine Idee wäre es über eigene Javascript-States wegzukapseln. Also einen "virtuellen" "on-time" und "state" Datenpunkt anlegen der dann gekapselt in einem eigenen Skript das ganze Schaltet. `

                                          ..ich hatte ja nicht umsonst nach einer eleganteren Lösung gefragt. :D :D :D

                                          Der Ansatz gefällt mir recht gut, vor allen das man nichts am eigentlichen Script ändern muss klingt gut.

                                          Zum testen verwende ich ja aktuell "virtuelle" Datenpunkte, beste Basis also um das mal mit einem eigenen Script umzusetzen! :roll:

                                          Vielen Dank für den Denkanstoss! :D

                                          Danke auch an David für die Vorstellung seiner Lösung.

                                          Viele Grüße,

                                          Jens

                                          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

                                          745

                                          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