Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Boost Zeit anzeigen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Boost Zeit anzeigen

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

      Hi

      Habe gerade ein Widget gemacht, aus einem Kreis und dem einem Widget (number - bei mir relativ weit oben und blau). Nur wird der Wert (fast) nicht aktualisiert.

      Ideen oder andere Widget?

      Edit: Der Datenpunkt Boost-Time wird nicht aktualisiert.

      Also wie kann ich den Countdow realisieren?

      1 Reply Last reply Reply Quote 0
      • Jeeper.at
        Jeeper.at last edited by

        Der Countdown muss auf den Datenpunkt BOOST-STATE zeigen. Gestartet wird er über BOOST-MODE.

        Das klappt bei mir einwandfrei.

        1 Reply Last reply Reply Quote 0
        • G
          Georgius last edited by

          Irgendwie wird bei mir Boost Time nicht aktuallisiert.

          1 Reply Last reply Reply Quote 0
          • Jeeper.at
            Jeeper.at last edited by

            Nur zur Sicherheit. Du kannst die Zeit nicht extern stellen. Die Zeit wielange der BOOST läuft musst du in den Configs der Thermostate mittels der CCU einstellen. Gestartet wird der BOOST durch setzen des DP Mode auf True. Dann zeigt der DP State die verbleibende Zeit.

            1 Reply Last reply Reply Quote 0
            • G
              Georgius last edited by

              Und diese Zeit bleibt fast immer gleich. Einmal ist es bis 297 heruntergelaufen und 1x von 300 auf 12 gesprungen.

              1 Reply Last reply Reply Quote 0
              • Jeeper.at
                Jeeper.at last edited by

                Hm, ich verwende dazu das Basic-Number Widget. Ansonsten habe ich auch keine Idee mehr.

                1 Reply Last reply Reply Quote 0
                • K
                  Karl_999 last edited by

                  @Georgius:

                  Und diese Zeit bleibt fast immer gleich. Einmal ist es bis 297 heruntergelaufen und 1x von 300 auf 12 gesprungen. `
                  Ich gehe zunächst einmal davon aus, dass du über ein Homematic-Thermostat (HKT) mit CCU sprichst (da wurde nichts genaues dazu gesagt).

                  Hier ist es so, dass das HKT nicht permanent sendet. Dies ist zum einen der 1%-Regelung (nein, keine 5% wie im Wahlrecht) geschuldet. Auf den genutzten Frequenzen dürfen Geräte maximal 1% der Zeit pro Stunde senden (das sind 36 Sekunden). Zum anderen dient es natürlich auch dazu, die Batterien des HKT zu schonen.

                  Durch die mehr oder weniger getaktete Übertragung ändert sich natürlich auch der Wert immer nur sporadisch (nach einer Übertragung).

                  Wann das passiert ist völlig undefiniert.

                  Das kannst du direkt in den ioBroker-Objekten überprüfen: Auch dort wird sich der Wert der Restzeit nur sporadisch ändern.

                  Schön sehen kann man das auch in Aufzeichnungen der CCU selbst (wenn man z.B. die Ventilstellung mitschreibt).

                  1 Reply Last reply Reply Quote 0
                  • bahnuhr
                    bahnuhr Forum Testing Most Active last edited by

                    Guten Abend,

                    ich benutze dazu den üblichen "Counter-Script".

                    Folgender On startet den Counter:

                    on({id: 'javascript.0.Status.Heizung.Boost_Mode.Bad_EG', change: "ne"}, function(obj) { 
                        if (obj.state.val) {
                            setState('hm-rpc.0.KEQ0576469.4.BOOST_MODE', true);
                            setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', true);    // Countdown starten
                        } else {
                            setState('hm-rpc.0.KEQ0576469.4.BOOST_MODE', false);
                            setState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE', getState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE').val);
                            setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', false);    // Countdown stoppen
                        }
                    }); 
                    

                    Folgendes Script ändert den Count:

                    // Countdown Heizung_Boost - Bad_EG
                    
                    var count,timer;
                    
                    function countdown(){
                        count--;
                        if(count > 0) setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', count);
                        else {
                            setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', false );
                            setState('javascript.0.Status.Heizung.Boost_Mode.Bad_EG', false);
                        }
                    }
                    
                    on({id: "javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger", change: "ne"}, function(obj){
                        if(obj.state.val) { 
                            count = 300;  // in Sekunden
                            setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', count);
                            timer = setInterval(countdown, 1000);   // 1000 = 1 Sek. ;  60000 = 60 Sek.
                        } else {
                            clearInterval(timer);
                            setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', 0 );
                        }
                    });
                    
                    

                    Die Objekte musst du manuell erzeugen.

                    Auf der View benutze ich

                    a) basic bulb on/off -> um Boost anzuschalten (dann auf true)

                    b) basic number -> um die Zahl (count) darzustellen.

                    Sieht dann so in vis aus:
                    1540_bild1.jpg

                    mfg

                    Dieter

                    1 Reply Last reply Reply Quote 0
                    • Jeeper.at
                      Jeeper.at last edited by

                      @Karl_999:

                      Hier ist es so, dass das HKT nicht permanent sendet. `

                      Der Thermostat sendet ziemlich genau alle drei Minuten.

                      1 Reply Last reply Reply Quote 0
                      • K
                        Karl_999 last edited by

                        @Jeeper.at:

                        Der Thermostat sendet ziemlich genau alle drei Minuten. `
                        Und dazwischen gibt's keine Aktualisierung im ioBroker …

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

                          @Karl_999:

                          Und dazwischen gibt's keine Aktualisierung im ioBroker … `
                          Nein, für die Raumtemperatur ist das ausreichend. Nur bei Tasten-/Sollwertstellerbetätigung wird auch zwischendurch gesendet.

                          1 Reply Last reply Reply Quote 0
                          • G
                            Georgius last edited by

                            @bahnuhr:

                            Guten Abend,

                            ich benutze dazu den üblichen "Counter-Script".

                            Folgender On startet den Counter:

                            on({id: 'javascript.0.Status.Heizung.Boost_Mode.Bad_EG', change: "ne"}, function(obj) { 
                                if (obj.state.val) {
                                    setState('hm-rpc.0.KEQ0576469.4.BOOST_MODE', true);
                                    setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', true);    // Countdown starten
                                } else {
                                    setState('hm-rpc.0.KEQ0576469.4.BOOST_MODE', false);
                                    setState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE', getState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE').val);
                                    setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', false);    // Countdown stoppen
                                }
                            }); 
                            

                            Folgendes Script ändert den Count:

                            // Countdown Heizung_Boost - Bad_EG
                            
                            var count,timer;
                            
                            function countdown(){
                                count--;
                                if(count > 0) setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', count);
                                else {
                                    setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger', false );
                                    setState('javascript.0.Status.Heizung.Boost_Mode.Bad_EG', false);
                                }
                            }
                            
                            on({id: "javascript.0.Countdown.Heizung_Boost.Bad_EG.countTrigger", change: "ne"}, function(obj){
                                if(obj.state.val) { 
                                    count = 300;  // in Sekunden
                                    setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', count);
                                    timer = setInterval(countdown, 1000);   // 1000 = 1 Sek. ;  60000 = 60 Sek.
                                } else {
                                    clearInterval(timer);
                                    setState('javascript.0.Countdown.Heizung_Boost.Bad_EG.countdown', 0 );
                                }
                            });
                            
                            ```` `  
                            

                            Also ich sehe da Verbesserungsmöglichkeiten. (allerdings spreche ich nicht JS, lesen geht aber)

                            Das Skript funktioniert nur wenn man den boost in der VIS startet, am Gerät wird es ignoriert. Und wozu diese Zeile da ist ist mir unklar

                            setState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE', getState('hm-rpc.0.KEQ0576469.4.SET_TEMPERATURE').val);
                            

                            Da wird doch nur der Wert auf den selben Platz zurückgeschrieben.

                            1 Reply Last reply Reply Quote 0
                            • bahnuhr
                              bahnuhr Forum Testing Most Active last edited by

                              Musst das script ja nicht nehmen.

                              Funktioniert bei mir aber einwandfrei.

                              Und ja, die von dir genannten Zeile ist unlogisch.

                              mfg

                              1 Reply Last reply Reply Quote 0
                              • G
                                Georgius last edited by

                                Bitte nicht eingeschnappt sein, wollte ja nur eine Verbesserung anbringen

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                611
                                Online

                                32.0k
                                Users

                                80.5k
                                Topics

                                1.3m
                                Posts

                                5
                                14
                                812
                                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