Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. Ecovacs Deebot Adapter: Status und Feedback

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Ecovacs Deebot Adapter: Status und Feedback

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

      @ofri2607 das habe ich ja, aber aus irgenwelchen gründen funktioniert das nicht wenn die aktualsierung nach charging kommt und der Deebot vorher auf dem Wartungsplatz war.

      @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

      @ofri2607 Diese Version funktioniert solange die aktualisierung vor charging kommt. Wenn die erst danach kommt, kommen noch alte Werte zum Beispiel von der Fahrt zum Wartungsplatz.
      Wenn ich das richtig verstehe hat sich ja auch der DP geändert im vergleich zur letzten aufgezeichnent Renigung.
      Bekomme es einfach nicht hin das er auf die aktualisierung während der Reinigung achten soll, egal ob vorher schon auf charging oder danach auf charging steht.

      Das ist das Problem im script

      } else if (getState(idWartungsplatzEIN).val === false && dp.state.val === 'charging' && hasStateChanged(idCleaningTimestamp)) {
          obj.Ende = formatDate(new Date(), 'hh:mm');
          obj.Flaeche = getState(idFlaeche).val;
          obj.Raum = getState(idRaum).val;
          obj.Dauer = getState(idDauer).val;
          obj.Dauergesamt = formatDuration(Math.floor((new Date() - startDate) / 1000));
          table.unshift(obj);
          if (table.length > 100) {
            table.pop();
          }
          setState(idTable, JSON.stringify(table), true);
          lastExecutionTime = dp.state.ts;
          isCleaning = false;
        }
      });
      function hasStateChanged(id) {
        const state = getState(id);
        if(!state) return false; // Die State-Variable existiert nicht
        if(state.ts <= lastExecutionTime || state.val === null) return false; // Der State hat sich seit dem letzten Ausführen des Scripts nicht geändert oder hat keinen Wert
        return true;
      }
      
      ofri2607 1 Reply Last reply Reply Quote 0
      • mrbungle64
        mrbungle64 Developer @Chris76e last edited by

        @chris76e

        Und wenn ich die Daten dann schreiben und der Deebot noch 2.35 min für die fahrt zurück braucht habe ich ja immer noch nicht die gesamte Dauer der Reinigung

        Dein Problem besteht ja nur, weil die Reinigung schon am Wartungspunkt beendet ist (und der eine Wert nicht von der API bereitgestellt wird)...

        Chris76e 1 Reply Last reply Reply Quote 0
        • Chris76e
          Chris76e @mrbungle64 last edited by

          @mrbungle64

          und deswegen will ich das mit dem script berrechen was ja auch funktioniert bis auf denn fall was ich jetzt schon mehrmals gesagt habe

          mrbungle64 1 Reply Last reply Reply Quote 0
          • mrbungle64
            mrbungle64 Developer @Chris76e last edited by mrbungle64

            @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

            @mrbungle64

            und deswegen will ich das mit dem script berrechen was ja auch funktioniert bis auf denn fall was ich jetzt schon mehrmals gesagt habe

            Vom mehrmals sagen lösen sich aber nicht alle Probleme 😉

            Ich kann jetzt nicht einfach eine bestehende Funktion vom Adapter ändern, weil man vermutet, dass es sich dann bei deinem (nicht mehr unterstützen) Modell dann wie gewünscht verhält.
            Es gibt keinen Befehl der explizit die Daten für die "current" Werte liefert. Die werden beim clean report mitgeliefert.
            Ich kann nicht sagen, ob und wann die API bei deinem Modell die Werte von selbst auf 0 setzt. Von daher bin ich mit der Änderung auch aktuell zurückhaltend.

            Chris76e 1 Reply Last reply Reply Quote 0
            • Chris76e
              Chris76e @mrbungle64 last edited by

              @mrbungle64 Wenn es nicht geht, dann ist es halt so, ich ja nicht schlimm 😀 .

              War ja nur die Frage ob es möglich ist oder nicht. Wenn es nicht möglich ist, muss ich halt schauen wie ich das mi dem Script hinbekomme. Das andere wäre halt nur sehr viel einfacher.

              mrbungle64 1 Reply Last reply Reply Quote 0
              • ofri2607
                ofri2607 @Chris76e last edited by

                @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

                Das ist das Problem im script

                Ich bin unterwegs und kann da leider nichts ausprobieren.
                Aber soweit ich das sehe, triggerst du nur auf den Status, d.h. auch deine Überprüfung mit deiner "function hasStateChanged(id)" auf den Zeitstempel bei "lastCleaningTimestamp" wird nur dann ausgeführt, wenn der Status sich ändert.
                Das meint ich damit, dass ich den Trigger auf Beide setzten würde:
                Sinngemäß so in der Art:

                on({id: ['ecovacs-deebot.0.status.device', 'ecovacs-deebot.0.cleaninglog.lastCleaningTimestamp'] , change: "gt"}, function(obj){
                
                });
                
                Chris76e 1 Reply Last reply Reply Quote 0
                • mrbungle64
                  mrbungle64 Developer @Chris76e last edited by mrbungle64

                  @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

                  @mrbungle64 Wenn es nicht geht, dann ist es halt so, ich ja nicht schlimm 😀 .

                  War ja nur die Frage ob es möglich ist oder nicht. Wenn es nicht möglich ist, muss ich halt schauen wie ich das mi dem Script hinbekomme. Das andere wäre halt nur sehr viel einfacher.

                  Ich will ja gar nicht sagen, dass es nicht geht.

                  Ich muss nur bedenken, dass es mehr User gibt als die die gerade aktuell einen Wunsch äußern. Auch muss ich bedenken, dass sich jedes Modell wieder anders verhalten kann.

                  Bis Ende letzten Jahres hatte ich noch einen Deebot 901 im Schlafzimmer in Betrieb - da macht aber der Akku Probleme - daher habe ich den ersetzt und kann daher solche Dinge nicht mehr mit diesem Gerät nachstellen oder testen.

                  Mal abgesehen davon muss ich auch schauen, dass ich mein Zeitkontingent sinnvoll nutze. Und das ist nicht so groß, dass ich alle Wünsche erfüllen kann. Man muss dann schon schauen, ob das nur einen ganz speziellen Fall bedient, oder ob es einen Nutzen dabei gibt, der mehrere User betrifft (und ich es im Optimalfall auch selbst nutzen kann).

                  ofri2607 1 Reply Last reply Reply Quote 0
                  • ofri2607
                    ofri2607 @mrbungle64 last edited by

                    @mrbungle64 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                    Ich muss nur bedenken, dass es mehr User gibt

                    Für mich wäre es z.B. eher kontraproduktiv, wenn sich das Verhalten in den "current" Datenpunkte ändern würde, denn in in einem Punkt in meinem Script ziele ich genau darauf ab, dass dieser mit Ende der aktuellen Reinigung auf 0 gesetzt wird.

                    mrbungle64 1 Reply Last reply Reply Quote 0
                    • mrbungle64
                      mrbungle64 Developer @ofri2607 last edited by

                      @ofri2607 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                      @mrbungle64 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                      Ich muss nur bedenken, dass es mehr User gibt

                      Für mich wäre es z.B. eher kontraproduktiv, wenn sich das Verhalten in den "current" Datenpunkte ändern würde, denn in in einem Punkt in meinem Script ziele ich genau darauf ab, dass dieser mit Ende der aktuellen Reinigung auf 0 gesetzt wird.

                      Genau so was meine ich, @Chris76e

                      Chris76e 1 Reply Last reply Reply Quote 0
                      • Chris76e
                        Chris76e @mrbungle64 last edited by

                        @mrbungle64

                        Alles Gut. 👍 👍 👍
                        Wie gesagt, ist ja nicht schlimm, nur dann weiß ich jetzt das ich das script irgendwie hinbekommen muss.

                        1 Reply Last reply Reply Quote 0
                        • Chris76e
                          Chris76e @ofri2607 last edited by

                          @ofri2607 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                          @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

                          Das ist das Problem im script

                          Ich bin unterwegs und kann da leider nichts ausprobieren.
                          Aber soweit ich das sehe, triggerst du nur auf den Status, d.h. auch deine Überprüfung mit deiner "function hasStateChanged(id)" auf den Zeitstempel bei "lastCleaningTimestamp" wird nur dann ausgeführt, wenn der Status sich ändert.
                          Das meint ich damit, dass ich den Trigger auf Beide setzten würde:
                          Sinngemäß so in der Art:

                          on({id: ['ecovacs-deebot.0.status.device', 'ecovacs-deebot.0.cleaninglog.lastCleaningTimestamp'] , change: "gt"}, function(obj){
                          
                          });
                          

                          Einfach auf change beim ...status.device ist ja auch nicht richtig, bevor charging kommt, kommt ja noch returing.....

                          ofri2607 1 Reply Last reply Reply Quote 0
                          • ofri2607
                            ofri2607 @Chris76e last edited by ofri2607

                            @chris76e sagte in Ecovacs Deebot Adapter: Status und Feedback:

                            Einfach auf change beim ...status.device ist ja auch nicht richtig, bevor charging kommt, kommt ja noch returing.....

                            Ja klar, da müsstest du dann auch in dem "on.." die Auswertung der .ts und auch den Status getState('ecovacs-deebot.0.status.device').val == 'charging' mit einbauen.
                            Kann dir leider, wie gesagt, aktuell kein Codebeispiel im Detail zusammenstellen, da ich es nicht testen könnte.
                            Aber als Idee so ungefähr in der Richtung dann z.B.:

                            on({id: ['ecovacs-deebot.0.status.device', 'ecovacs-deebot.0.cleaninglog.lastCleaningTimestamp'] , change: "gt"}, function(obj){
                                if (getState('ecovacs-deebot.0.status.device').val == 'cleaning' && getState('ecovacs-deebot.0.status.device').ts < getSate('ecovacs-deebot.0.cleaninglog.lastCleaningTimestamp').ts) {
                            		
                                };
                            });
                            

                            Ev. brauchst dann noch eine zusätzliche Prüfung, wenn die Aktualisierung von "lastCleaningTimestamp" doch schon vor der Statusänderung zu "cleaning" erfolgt.
                            Wollte dir damit nur ein paar Gedankenanregungen lieferen.

                            Chris76e 1 Reply Last reply Reply Quote 1
                            • Chris76e
                              Chris76e @ofri2607 last edited by

                              @ofri2607

                              Danke, werde das mal versuchen.

                              1 Reply Last reply Reply Quote 0
                              • Z
                                ZoXx last edited by

                                Guten Morgen,
                                ich habe die Version 1.4.11 installiert und erhalte immer im Log folgende Fehler:

                                ecovacs-deebot.0
                                2023-03-07 10:19:01.782 warn Error message received: Received error message: Request failed with status code 502 for command getPos

                                ecovacs-deebot.0
                                2023-03-07 10:14:01.554 warn Error message received: Received error message: Request failed with status code 502 for command getPos

                                ecovacs-deebot.0
                                2023-03-07 10:09:03.250 warn Error message received: Received error message: Request failed with status code 502 for command getBreakPoint

                                ecovacs-deebot.0
                                2023-03-07 10:00:05.796 warn Error message received: Received error message: Request failed with status code 502 for command getAdvancedMode

                                ecovacs-deebot.0
                                2023-03-07 09:54:02.485 warn Error message received: Received error message: Request failed with status code 502 for command getVolume

                                ecovacs-deebot.0
                                2023-03-07 09:47:03.026 warn Error message received: Received error message: Request failed with status code 502 for command getAdvancedMode

                                ecovacs-deebot.0
                                2023-03-07 09:47:00.423 warn Error message received: Received error message: Request failed with status code 502 for command getBlock

                                ecovacs-deebot.0
                                2023-03-07 09:45:00.044 warn Error message received: Received error message: Request failed with status code 502 for command getBlock

                                ecovacs-deebot.0
                                2023-03-07 09:43:10.718 warn Error message received: Received error message: Request failed with status code 502 for command getSpeed

                                Der Deebot ist angeschlossen und läuft auch via Blockly Scripte etc. Ich habe mich Testes Halber auch schon abgemeldet und wieder angemeldet via Instanz, allerdings keine Besserung erfahren.
                                Kann mir jemand helfen?

                                mrbungle64 1 Reply Last reply Reply Quote 0
                                • mrbungle64
                                  mrbungle64 Developer @ZoXx last edited by

                                  @zoxx sagte in Ecovacs Deebot Adapter: Status und Feedback:

                                  Guten Morgen,
                                  ich habe die Version 1.4.11 installiert und erhalte immer im Log folgende Fehler:

                                  Kann mir jemand helfen?

                                  Ja, bitte die Version 1.4.13 über Beta/Latest installieren (siehe Hauptpost -> "Warn Meldungen")

                                  1 Reply Last reply Reply Quote 0
                                  • sigi234
                                    sigi234 Forum Testing Most Active @mrbungle64 last edited by

                                    @mrbungle64

                                    Hallo, die Json zeigt nicht viel an?

                                    Screenshot (5484).png

                                    mrbungle64 1 Reply Last reply Reply Quote 0
                                    • mrbungle64
                                      mrbungle64 Developer @sigi234 last edited by

                                      @sigi234 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                                      @mrbungle64

                                      Hallo, die Json zeigt nicht viel an?

                                      Screenshot (5484).png

                                      Ein bisschen mehr Kontext wäre nett 😉

                                      sigi234 1 Reply Last reply Reply Quote 0
                                      • sigi234
                                        sigi234 Forum Testing Most Active @mrbungle64 last edited by sigi234

                                        @mrbungle64
                                        Wollte in der Tabelle alle Infos über die Eingestellten Zeiten der Reinigungen haben.

                                        Screenshot_20230307_202317_com.eco.global.app.jpg

                                        mrbungle64 1 Reply Last reply Reply Quote 0
                                        • mrbungle64
                                          mrbungle64 Developer @sigi234 last edited by

                                          @sigi234 sagte in Ecovacs Deebot Adapter: Status und Feedback:

                                          @mrbungle64
                                          Wollte in der Tabelle alle Infos über die Eingestellten Zeiten der Reinigungen haben.

                                          Screenshot_20230307_202317_com.eco.global.app.jpg

                                          Die sind ja auch in dem JSON drin. Schau Dir das JSON halt mal außerhalb des VIS-Editors an. Hier ist auch noch mal ein Beispiel-Datensatz zu sehen.

                                          Du kannst das aber nicht nicht so einfach in die VIS ziehen und out-of-the-box benutzen, da das JSON eingebettete Objekte enthält (im Screenshot als "[object Object]" zu sehen).

                                          Das war auch ehrlich gesagt gar nicht für die VIS gedacht, sondern wurde mal als Feature Request umgesetzt:
                                          https://github.com/mrbungle64/ioBroker.ecovacs-deebot/issues/147

                                          Domi920 created this issue in mrbungle64/ioBroker.ecovacs-deebot

                                          closed Geplante Reinigungsaufgaben (Zeitsteuerung via Datenpunkte) #147

                                          1 Reply Last reply Reply Quote 0
                                          • mrbungle64
                                            mrbungle64 Developer @mrbungle64 last edited by

                                            Die Version 1.4.13 ist nun über Stable verfügbar.

                                            ❗ Wichtige Änderung:

                                            Der Endpunkt der Deebot API wurde geändert. Die "Request failed with status code 502/504" Warnungen sollten damit hoffentlich nicht mehr auftreten.

                                            Weitere Änderungen seit der letzten Stable (1.4.11):

                                            • Version 1.4.13
                                            • Version 1.4.12
                                            sigi234 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            504
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            deebot ecovacs ecovacs-deebot ecovacs-deebot adapter saugroboter vacuum
                                            36
                                            576
                                            103338
                                            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