Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Wiedermal die fertigmeldung für die Waschmaschine

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wiedermal die fertigmeldung für die Waschmaschine

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

      @paul53

      Hallo Paul53,

      ich freue mich ja das die Blocklys so schön funktionieren.
      Aber was ich immer noch nicht verstanden habe ist das mit den Timeouts, ich würde es aber gerne verstehen.

      Könntest du mir bitte erklären was in dem rot umrandeten Bereich passiert?

      f9683df7-7a6d-4fb0-af34-7dc2c30adc97-grafik.png

      Ich hatte auch schon zum Thema Timeouts gegoogelt, auch nachvollziehbare Beispiele gefunden aber so etwas habe ich nicht gefunden.

      VG Duffy

      Codierknecht paul53 2 Replies Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Duffy last edited by Codierknecht

        @duffy
        Ich springe da mal ein ...

        Es passiert folgendes:
        Wenn die WM mehr als 21 W verbrät, wird ein evtl. laufender timeout gestoppt. Könne ja sein, dass die Maschine beim Wechsel der Programme mal kurz weniger als 21 W braucht.

        Verbraucht sie <= 21 W, wird zunächst geschaut, ob vielleicht schon ein timeout läuft, denn es muss ja kein weiterer gestartet werden. Du willst die Meldung ja nur 1x erhalten.
        Läuft kein timeout, wird einer gestartet, der nach 50 Sekunden eine Meldung ausgibt.

        Soweit verständlich?

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

          @duffy sagte: was in dem rot umrandeten Bereich passiert?

          Das hat @Codierknecht gut erklärt. Nur leider funktioniert es seit JS-Version 7.0.5 so nicht mehr, da nun Blockly bei Ablauf der Verzögerung die Timer-Variable fertig automatisch auf null setzt. Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet.

          Codierknecht Duffy 2 Replies Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @paul53 last edited by

            @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

            Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet

            Dann müsste man das selbst über eine Statusvariable verwalten.

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

              @codierknecht sagte: über eine Statusvariable verwalten.

              Es genügt, "nicht Verzögerung timeout" durch "vorheriger Wert > Grenzwert" zu ersetzen.

              M 1 Reply Last reply Reply Quote 0
              • Duffy
                Duffy @paul53 last edited by Duffy

                @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                @duffy sagte: was in dem rot umrandeten Bereich passiert?
                Das hat @Codierknecht gut erklärt. Nur leider funktioniert es seit JS-Version 7.0.5 so nicht mehr, da nun Blockly bei Ablauf der Verzögerung die Timer-Variable fertig automatisch auf null setzt. Bei schwankender Leistung <= 21 wird der Timeout erneut gestartet.

                Ja das hattest du geschrieben, das habe ich bei dem aktiven Blockly auch geändert und es läuft. Mir ging es bei dem Screenshot eher um das grundsätzliche beim Timeout.

                @Codierknecht Danke für deine Mühe, leider ist der Groschen noch nicht gefallen, vermutlich bin ich zu doof, werde es mir aber morgen noch einmal in Ruhe ansehen. Also sagen wir so, ich verstehe die Erklärung bekomme sie aber nicht mit den Blocklybausteinen zusammen.

                VG Duffy

                Edit: das ist das aktive Blockly nur hätte ich es da ja noch weniger verstanden.

                1b926441-49ea-49f7-aa44-cb4b7124b358-grafik.png

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

                  @duffy sagte: leider ist der Groschen noch nicht gefallen

                  Vielleicht, wenn ich die Aussage von @Codierknecht ergänze?

                  @codierknecht sagte: Wenn die WM mehr als 21 W verbrät, wird ein evtl. laufender timeout gestoppt
                  ... und die Timer-Variable auf null gesetzt.

                  Codierknecht 1 Reply Last reply Reply Quote 0
                  • Codierknecht
                    Codierknecht Developer Most Active @paul53 last edited by

                    @Duffy
                    Vielleicht muss man zum Verständnis auch noch etwas weiter ausholen.

                    Wenn man so einen timeout startet, tritt man ja nicht einfach etwas los, was dann nach Ablauf der Zeitspanne irgendwelche Dinge tut.
                    timeout kann man auch abfragen - wie jede andere Variable auch.

                    Damit kann man dann sowohl einen laufenden timeout abbrechen
                    b204be26-8b07-4c98-8e86-6df63a5452d0-grafik.png
                    aber auch abfragen, ob timeout gerade läuft (existiert) oder nicht.
                    f1e7af90-0ff5-4827-887c-1954d727dfe5-grafik.png
                    Aber wie @paul53 schon schreibt: Wenn das mit JS > 7.0.5 nicht mehr funktioniert, muss man auf anderem Wege herausfinden, ob der Wert (Power) gerade von > 21 auf < 21 gewechselt hat.
                    Wenn er bei der letzten Änderung bereits unter 21 war, wurde ja der timeout bereits angeschubst.

                    Vielleicht wäre mein Vorschlag mit der Statusvariablen einfacher?
                    Man setzt bei < 21 mit dem Start des timeout eine Variable timerLaeuft auf true.
                    Wenn beim Auslösen des Triggers der Wert erneut < 21 und diese Variable true ist, wurde der timeout bereits gestartet und man muss ihn nicht erneut anschubsen.
                    Wechselt der Wert vor Ablauf auf > 21, stoppt man den timeout und setzt die Variable wieder auf false.
                    Ist etwas umständlicher als @paul53's Vorschlag, aber evtl. einfacher zu verstehen.

                    Duffy 1 Reply Last reply Reply Quote 1
                    • M
                      mibr85 @paul53 last edited by

                      @paul53
                      heisst das, das im schlimmsten Fall hunderte Timer getriggert werden?

                      1 Reply Last reply Reply Quote 0
                      • Duffy
                        Duffy @Codierknecht last edited by

                        @codierknecht

                        Guten Morgen codierknecht.
                        Danke für deine Mühe und die Erklärung. Ja in der Tat ich habe mir das etwas einfacher vorgestellt ich dachte ich trete etwas los und irgendwann passiert was.
                        Aber nun ist mir das schon klarer geworden.

                        Dein Vorschlag mit der Statusvariablen hört sich interessant an und ich würde es gerne einmal testen nur denke ich, es scheitert bei mir wieder an der Umsetzung.
                        Könntest du mir bitte einmal die Blocklyblöcke zusammenfügen die ich benötige? Dann könnte ich es einmal probieren.

                        Zweifelsohne funktionieren @paul53's Vorschäge immer super aber um die richtig zu verstehen fehlen mir glaub die Grundlagen ;-(

                        Euch beiden auf jeden Fall vieeelen Dank und einen schönen 2. Advent.

                        VG Duffy

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

                          @paul53

                          Guten Morgen Paul und alle anderen in der Komunity,

                          ich benötige bitte noch mal Deine / Eure Hilfe.
                          Ich habe das Blockly für die Waschmaschine nun auch für die Kaffeemaschine in abgeänderter Form übernommen.

                          182d8cbf-92cf-4289-b353-ae45b401e077-grafik.png

                          Der Verbrauch sieht eigentlich nicht spektakulär aus und sollte doch eigentlich so funktionieren, meist funktioniert das abschakten auch.

                          f5dacc86-518c-439f-923e-88bc1e5f4ea4-grafik.png

                          Ich habe nun nur das Problem das , wenn die Steckdose für die Kaffeemaschine vom Blockly abgeschaltet wird Alexa und Telegram mir trotzdem noch andauernd sagen das der Kaffee fertig ist. Mir würde es eigentlich einmal reichen 😉

                          Wenn die Steckdose aus ist, weis ich nur nicht woher der Trigger für Telegram und Alexa kommen kann.
                          Kann mir da bitte jemand helfen?

                          VG Duffy

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

                            @duffy sagte: andauernd sagen das der Kaffee fertig ist.

                            Mache es besser so:

                            Blockly_temp.JPG

                            Die Version mit "nicht Verzögerung fertig" funktioniert seit JS-Version 7.0.5 nicht mehr.

                            Duffy 1 Reply Last reply Reply Quote 1
                            • Duffy
                              Duffy @paul53 last edited by

                              @paul53

                              Danke für deine schnelle Antwort.
                              Meinst du alsoso?

                              cd3f7b2f-e503-459a-848c-9b04b018da03-grafik.png

                              VG Duffy

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

                                @duffy sagte: alsoso?

                                Ja.

                                Duffy 1 Reply Last reply Reply Quote 1
                                • Duffy
                                  Duffy @paul53 last edited by

                                  @paul53

                                  Herzlichen Dank.

                                  Duffy 1 Reply Last reply Reply Quote 0
                                  • Duffy
                                    Duffy @Duffy last edited by

                                    @paul53

                                    Hi Paul53,

                                    für mich seltsame Dinge geschehen plötzlich in meinem sonst so gut funktionierenden Blockly für die Waschmaschiene.

                                    9d137408-7d85-49aa-845c-b45067247405-grafik.png

                                    Seit einiger Zeit kommt nach dem abschalten der Waschmaschine die Info durch Telegram "Waschmaschione fertsch" aber sofort danach** "Waschmaschine gestartet" obwohl die Steckdose abgeschaltet ist.
                                    Also es klappt im Grunde alles bis auf die Falschmeldung.

                                    Kann das durch ein Update des javascript Adapters passiert sein?
                                    Was kann ich tun um die "Falschmeldung" zu unterbinden?
                                    Vielleicht bei Waschmaschine ENERGY Power von wurde geändert auf grösser als letztes umstellen?

                                    VG Duffy

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

                                      @duffy sagte: sofort danach** "Waschmaschine gestartet" obwohl die Steckdose abgeschaltet ist.

                                      Ist sie wirklich schon abgeschaltet oder liefert sie nochmal einen Wert > 10 W? Bau mal Debug-Blöcke ein.

                                      @duffy sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                      Kann das Verhalten durch ein Update des javascript Adapters passiert sein?

                                      Nein, das Verhalten sollte durch ein Update nicht verändert worden sein.

                                      @duffy sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                      Vielleicht bei Waschmaschine ENERGY Power von wurde geändert auf grösser als letztes umstellen?

                                      Dann kann "fertig" nicht mehr erkannt werden.

                                      @duffy sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                      Was kann ich tun um die "Falschmeldung" zu unterbinden?

                                      Verzögere mal die Startfreigabe:

                                      Blockly_temp.JPG

                                      Wird bei "nur" 40 s die WM nicht vorzeitig ausgeschaltet?

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

                                        Danke paul53 für deinen Vorschlag den habe ich mal ins Blockly eingebaut und werde es bei der nächsten Wäsche ausprobieren

                                        @paul53 sagte in Wiedermal die fertigmeldung für die Waschmaschine:

                                        Wird bei "nur" 40 s die WM nicht vorzeitig ausgeschaltet?

                                        Nein, sie wurde immer tip top erst nach dem waschen, wenn sie danach im Knitterschutz Modus war abgeschaltet.

                                        Zu dem Debug, wo soll ich die einbauen? An die Stelle wo auch die Variable "gestartet" auf true und false geschaltet wird?

                                        VG Duffy

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

                                          @duffy sagte: An die Stelle wo auch die Variable "gestartet" auf true und false geschaltet wird?

                                          Ja, bei gestartet auf true gebe Wert aus, beim Ausschalten gebe "WM ausgeschaltet" aus. Dann sieht man, ob nach dem Ausschalt-Befehl noch einmal mit > 10 W getriggert wird.

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

                                            @paul53

                                            Hallo Paul53,

                                            deinen Vorschlag habe ich mal mit einem Fön getestet. Hier wurden die beiden Meldungen wieder Richtig ausgeben.

                                            Nun will ich aber trotzdem das Ursprungsblockly noch mal anschauen. Dazu habe ich die Debugs eingebaut. Es wird auch was ausgegeben. Trotzdem die Frage, ist das so in deinem Sinne?

                                            Blockly WM.jpg

                                            VG Duffy

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            555
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            85
                                            5171
                                            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