NEWS
Ecovacs Deebot Adapter: Status und Feedback
-
@thirty8763 sagte in Ecovacs Deebot Adapter: Status und Feedback:
- Ich suche vergeblich noch immer einen "Move" Befehl. Mit ihm würde ich vor der Reinigung vor die Türe fahren. Damit schnallt er hoffentlich, dass die Türe offen ist und ich könnte das eigentliche Reinigungsprogramm ausführen. Die Abfolge ließe sich vl mit einem Javascript durch Statuspolls und entspechende Reaktionscommands implementieren.
Den gibt es (wenn ich deine Anforderung an den "Move" Befehl richtig verstehe) - inzwischen sogar mehrfach für Modelle ab dem T8 AIVI - der heißt nur nicht "move":
- control.extended.goToPosition (nativ für Modelle ab dem T8 AIVI, seit Version 1.4.6)
- control.spotArea_silentApproach (inkl. Reinigung, seit Version 1.4.12-alpha.x)
Man kann die aktuelle Positionen vom Bot sogar dauerhaft als Datenpunkt bzw. Button speichern:
- control.extended.goToPosition_saveCurrentDeebotPosition (seit Version 1.4.11)
Weitere Varianten:
- map.[mapID].spotAreas.[spotAreaID].goToCalculatedCenterPosition (seit Version 1.4.12-alpha.x)
- map.[mapID].spotAreas.[spotAreaID].cleanSpotArea_silentApproach (inkl. Reinigung, seit Version 1.4.12-alpha.x)
"control.extended.goToPosition" ist die einfache Variante, welche du wahrscheinlich gemeint hast.
Ich werde das noch mal ausführlicher beschreiben - es ist jetzt für heute aber schon zu spät dafür

- Weil es ja keinen "Move" Befehl gibt könnte man statt Move auch z.B. eine 1x1m Bereichsreinigung vor der Türe ausführen. Sobald sich der Roboter auf den Heimweg machen will wird dann das eigentliche Programm ausgeführt, das den Raum hinter der Türe reinigt.
Punkt 3 sollte für den T8 AIVI und neuere Modelle mit den o.g. Funktionen nicht mehr notwendig sein
- Kann man nicht irgendwie den Zustand einer Karte speichern und vor jedem Start auf diesen Stand zurücksetzen? Damit könnte man den Zustand mit offenen Türen immer wieder wiederherstellen.
Punkt 1 bin ich aktuell am untersuchen, ob das ab dem T8 oder T9 möglich ist.
Ich würde da aber nicht zu viel Hoffnung rein stecken, weil die Ecovacs Deebot API offiziell undokumentiert ist und ich daher sehr vorsichtig bin mit solchen Sachen, welche auch "gesunde" Karten zerstören könnten.@mrbungle64
Ahhh... Der goToPosition Datenpunkt war nicht sicher weil "Einige weitere experimentelle Features ("control.extended" Kanal)" nicht aktiv gesetzt war.
Ich dachte das ist mit " Native "goToPosition" Funktion benutzen (z.B. T8/T9/N8/X1 Serie)" erledigt aber scheinbar muss man beide experimentellen Features aktivieren.Super, damit kann ich arbeiten, dann werde ich versuchen immer vorher die entsprechenden Türpositionen anzufahren und erst dann direkt von dort die Reinigung aufnehmen.
Die nächste Ausbaustufe könnte sein, auch noch Türsensoren anzubringen. Wenn eine Türe verschlossen ist braucht er es nicht mehr versuchen den/die dahinterliegenden Räume anzufahren.
-
@mrbungle64
Ahhh... Der goToPosition Datenpunkt war nicht sicher weil "Einige weitere experimentelle Features ("control.extended" Kanal)" nicht aktiv gesetzt war.
Ich dachte das ist mit " Native "goToPosition" Funktion benutzen (z.B. T8/T9/N8/X1 Serie)" erledigt aber scheinbar muss man beide experimentellen Features aktivieren.Super, damit kann ich arbeiten, dann werde ich versuchen immer vorher die entsprechenden Türpositionen anzufahren und erst dann direkt von dort die Reinigung aufnehmen.
Die nächste Ausbaustufe könnte sein, auch noch Türsensoren anzubringen. Wenn eine Türe verschlossen ist braucht er es nicht mehr versuchen den/die dahinterliegenden Räume anzufahren.
Ich konnte das Vorhaben dank deiner Unterstützung umsetzen.
Hier der erste Wurf meines Javascripts, vl kanns ja jemand brauchen:/* -------------------------------------------------------------------------------- */ /* global status variables */ var m_moveCommands = []; var m_cleanCommands = []; var m_forceNextCommand = false; var m_timeout = 0; /* -------------------------------------------------------------------------------- */ /* trigger point to go back to charging */ on({id: '0_userdata.0.Staubsauger.myCharge'}, function (obj) { console.log('myCharge Start'); m_moveCommands = []; m_cleanCommands = []; setState('ecovacs-deebot.0.control.charge', "1"); }); /* -------------------------------------------------------------------------------- */ /* trigger point to start a cleaning */ on({id: '0_userdata.0.Staubsauger.mySpotArea'}, function (obj) { console.log('mySpotArea Start'); /* clear old cleaning program */ m_moveCommands = []; m_cleanCommands = []; /* get the input information where to clean */ var cleanInput = getState('0_userdata.0.Staubsauger.mySpotArea').val.toString(); /* parse the input */ var cleanCommands = []; if (cleanInput.includes(",")) { cleanCommands = cleanInput.split(","); } else { cleanCommands[0] = cleanInput.toString(); } /* add the move commands if needed */ /* Schlafzimmertüre */ if (cleanCommands.includes("2")) /* Schlafzimmer */ { /* move to Schlafzimmertüre */ m_moveCommands[m_moveCommands.length] = "304,-1037"; } /* Vorzimmertüre */ if (cleanCommands.includes("3") || /* Vorzimmer */ cleanCommands.includes("4") || /* WC */ cleanCommands.includes("6") || /* Badezimmer */ cleanCommands.includes("7")) /* Kammer */ { /* move to Vorzimmertüre */ m_moveCommands[m_moveCommands.length] = "-2012,2126"; } /* WC Türe */ if (cleanCommands.includes("4")) /* WC */ { /* move to WC Türe */ m_moveCommands[m_moveCommands.length] = "-3368,1542"; } /* Badezimmertüre */ if (cleanCommands.includes("6")) /* Badezimmer */ { /* move to Badezimmer Türe */ m_moveCommands[m_moveCommands.length] = "-5203,1354"; } /* Kammer Türe */ if (cleanCommands.includes("7")) /* Kammer */ { /* move to Kammer Türe */ m_moveCommands[m_moveCommands.length] = "-5698,2844"; } /* set the global clean commands variable */ m_cleanCommands = cleanCommands; // force the continuation to start the next program step m_forceNextCommand = true; // print program console.log("New Cleaning Programm:"); console.log(m_moveCommands); console.log(m_cleanCommands); }); /* -------------------------------------------------------------------------------- */ /* cyclicly check if the the next command shall be triggered */ schedule('* * * * * *', function () { /* handle the timeout function */ /* wait a moment to become the program active */ if (0 < m_timeout) { if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val) { m_timeout = 0; return; } m_timeout = m_timeout - 1; return; } /* find out if the robot is still busy or if we force the continuation */ if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val && false == m_forceNextCommand) { // console.log("Busy detected."); return; } m_forceNextCommand = false; // console.log("Continue with next step if available."); /* print program */ // console.log(m_moveCommands); // console.log(m_cleanCommands); /* execute next move command if needed */ if (0 != m_moveCommands.length) { /* get next move command parameter */ const s_move = m_moveCommands.shift(); console.log("goToPostion " + s_move); /* start the move command */ setState("ecovacs-deebot.0.control.extended.goToPosition", s_move); m_timeout = 10; /* stop the execution of this loop */ return; } /* execute next clean command if needed */ if (0 != m_cleanCommands.length) { /* get next clean command parameter */ var s_clean = ""; for (var i = 0; i < m_cleanCommands.length; i++) { s_clean = s_clean + m_cleanCommands[i] + ","; } s_clean.substring(0, s_clean.length - 1); /* remove the commands that will be processed */ m_cleanCommands = []; console.log("spotArea " + s_clean); /* start the move command */ setState("ecovacs-deebot.0.control.spotArea", s_clean); /* stop the execution of this loop */ return; } }); -
Ich konnte das Vorhaben dank deiner Unterstützung umsetzen.
Hier der erste Wurf meines Javascripts, vl kanns ja jemand brauchen:/* -------------------------------------------------------------------------------- */ /* global status variables */ var m_moveCommands = []; var m_cleanCommands = []; var m_forceNextCommand = false; var m_timeout = 0; /* -------------------------------------------------------------------------------- */ /* trigger point to go back to charging */ on({id: '0_userdata.0.Staubsauger.myCharge'}, function (obj) { console.log('myCharge Start'); m_moveCommands = []; m_cleanCommands = []; setState('ecovacs-deebot.0.control.charge', "1"); }); /* -------------------------------------------------------------------------------- */ /* trigger point to start a cleaning */ on({id: '0_userdata.0.Staubsauger.mySpotArea'}, function (obj) { console.log('mySpotArea Start'); /* clear old cleaning program */ m_moveCommands = []; m_cleanCommands = []; /* get the input information where to clean */ var cleanInput = getState('0_userdata.0.Staubsauger.mySpotArea').val.toString(); /* parse the input */ var cleanCommands = []; if (cleanInput.includes(",")) { cleanCommands = cleanInput.split(","); } else { cleanCommands[0] = cleanInput.toString(); } /* add the move commands if needed */ /* Schlafzimmertüre */ if (cleanCommands.includes("2")) /* Schlafzimmer */ { /* move to Schlafzimmertüre */ m_moveCommands[m_moveCommands.length] = "304,-1037"; } /* Vorzimmertüre */ if (cleanCommands.includes("3") || /* Vorzimmer */ cleanCommands.includes("4") || /* WC */ cleanCommands.includes("6") || /* Badezimmer */ cleanCommands.includes("7")) /* Kammer */ { /* move to Vorzimmertüre */ m_moveCommands[m_moveCommands.length] = "-2012,2126"; } /* WC Türe */ if (cleanCommands.includes("4")) /* WC */ { /* move to WC Türe */ m_moveCommands[m_moveCommands.length] = "-3368,1542"; } /* Badezimmertüre */ if (cleanCommands.includes("6")) /* Badezimmer */ { /* move to Badezimmer Türe */ m_moveCommands[m_moveCommands.length] = "-5203,1354"; } /* Kammer Türe */ if (cleanCommands.includes("7")) /* Kammer */ { /* move to Kammer Türe */ m_moveCommands[m_moveCommands.length] = "-5698,2844"; } /* set the global clean commands variable */ m_cleanCommands = cleanCommands; // force the continuation to start the next program step m_forceNextCommand = true; // print program console.log("New Cleaning Programm:"); console.log(m_moveCommands); console.log(m_cleanCommands); }); /* -------------------------------------------------------------------------------- */ /* cyclicly check if the the next command shall be triggered */ schedule('* * * * * *', function () { /* handle the timeout function */ /* wait a moment to become the program active */ if (0 < m_timeout) { if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val) { m_timeout = 0; return; } m_timeout = m_timeout - 1; return; } /* find out if the robot is still busy or if we force the continuation */ if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val && false == m_forceNextCommand) { // console.log("Busy detected."); return; } m_forceNextCommand = false; // console.log("Continue with next step if available."); /* print program */ // console.log(m_moveCommands); // console.log(m_cleanCommands); /* execute next move command if needed */ if (0 != m_moveCommands.length) { /* get next move command parameter */ const s_move = m_moveCommands.shift(); console.log("goToPostion " + s_move); /* start the move command */ setState("ecovacs-deebot.0.control.extended.goToPosition", s_move); m_timeout = 10; /* stop the execution of this loop */ return; } /* execute next clean command if needed */ if (0 != m_cleanCommands.length) { /* get next clean command parameter */ var s_clean = ""; for (var i = 0; i < m_cleanCommands.length; i++) { s_clean = s_clean + m_cleanCommands[i] + ","; } s_clean.substring(0, s_clean.length - 1); /* remove the commands that will be processed */ m_cleanCommands = []; console.log("spotArea " + s_clean); /* start the move command */ setState("ecovacs-deebot.0.control.spotArea", s_clean); /* stop the execution of this loop */ return; } });@thirty8763 sagte in Ecovacs Deebot Adapter: Status und Feedback:
setState('ecovacs-deebot.0.control.charge', "1");
setState('ecovacs-deebot.0.control.charge', "1");Für den Wert solltest du einen boolean verwenden:
setState('ecovacs-deebot.0.control.charge', true);Mich wundert, dass das überhaupt so funktioniert hat
-
Ich konnte das Vorhaben dank deiner Unterstützung umsetzen.
Hier der erste Wurf meines Javascripts, vl kanns ja jemand brauchen:/* -------------------------------------------------------------------------------- */ /* global status variables */ var m_moveCommands = []; var m_cleanCommands = []; var m_forceNextCommand = false; var m_timeout = 0; /* -------------------------------------------------------------------------------- */ /* trigger point to go back to charging */ on({id: '0_userdata.0.Staubsauger.myCharge'}, function (obj) { console.log('myCharge Start'); m_moveCommands = []; m_cleanCommands = []; setState('ecovacs-deebot.0.control.charge', "1"); }); /* -------------------------------------------------------------------------------- */ /* trigger point to start a cleaning */ on({id: '0_userdata.0.Staubsauger.mySpotArea'}, function (obj) { console.log('mySpotArea Start'); /* clear old cleaning program */ m_moveCommands = []; m_cleanCommands = []; /* get the input information where to clean */ var cleanInput = getState('0_userdata.0.Staubsauger.mySpotArea').val.toString(); /* parse the input */ var cleanCommands = []; if (cleanInput.includes(",")) { cleanCommands = cleanInput.split(","); } else { cleanCommands[0] = cleanInput.toString(); } /* add the move commands if needed */ /* Schlafzimmertüre */ if (cleanCommands.includes("2")) /* Schlafzimmer */ { /* move to Schlafzimmertüre */ m_moveCommands[m_moveCommands.length] = "304,-1037"; } /* Vorzimmertüre */ if (cleanCommands.includes("3") || /* Vorzimmer */ cleanCommands.includes("4") || /* WC */ cleanCommands.includes("6") || /* Badezimmer */ cleanCommands.includes("7")) /* Kammer */ { /* move to Vorzimmertüre */ m_moveCommands[m_moveCommands.length] = "-2012,2126"; } /* WC Türe */ if (cleanCommands.includes("4")) /* WC */ { /* move to WC Türe */ m_moveCommands[m_moveCommands.length] = "-3368,1542"; } /* Badezimmertüre */ if (cleanCommands.includes("6")) /* Badezimmer */ { /* move to Badezimmer Türe */ m_moveCommands[m_moveCommands.length] = "-5203,1354"; } /* Kammer Türe */ if (cleanCommands.includes("7")) /* Kammer */ { /* move to Kammer Türe */ m_moveCommands[m_moveCommands.length] = "-5698,2844"; } /* set the global clean commands variable */ m_cleanCommands = cleanCommands; // force the continuation to start the next program step m_forceNextCommand = true; // print program console.log("New Cleaning Programm:"); console.log(m_moveCommands); console.log(m_cleanCommands); }); /* -------------------------------------------------------------------------------- */ /* cyclicly check if the the next command shall be triggered */ schedule('* * * * * *', function () { /* handle the timeout function */ /* wait a moment to become the program active */ if (0 < m_timeout) { if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val) { m_timeout = 0; return; } m_timeout = m_timeout - 1; return; } /* find out if the robot is still busy or if we force the continuation */ if ("idle" != getState('ecovacs-deebot.0.info.cleanstatus').val && false == m_forceNextCommand) { // console.log("Busy detected."); return; } m_forceNextCommand = false; // console.log("Continue with next step if available."); /* print program */ // console.log(m_moveCommands); // console.log(m_cleanCommands); /* execute next move command if needed */ if (0 != m_moveCommands.length) { /* get next move command parameter */ const s_move = m_moveCommands.shift(); console.log("goToPostion " + s_move); /* start the move command */ setState("ecovacs-deebot.0.control.extended.goToPosition", s_move); m_timeout = 10; /* stop the execution of this loop */ return; } /* execute next clean command if needed */ if (0 != m_cleanCommands.length) { /* get next clean command parameter */ var s_clean = ""; for (var i = 0; i < m_cleanCommands.length; i++) { s_clean = s_clean + m_cleanCommands[i] + ","; } s_clean.substring(0, s_clean.length - 1); /* remove the commands that will be processed */ m_cleanCommands = []; console.log("spotArea " + s_clean); /* start the move command */ setState("ecovacs-deebot.0.control.spotArea", s_clean); /* stop the execution of this loop */ return; } });Löst das so schon Dein eigentliches Problem mit der als Wand behandelten Tür?
-
@mrbungle64
Ahhh... Der goToPosition Datenpunkt war nicht sicher weil "Einige weitere experimentelle Features ("control.extended" Kanal)" nicht aktiv gesetzt war.
Ich dachte das ist mit " Native "goToPosition" Funktion benutzen (z.B. T8/T9/N8/X1 Serie)" erledigt aber scheinbar muss man beide experimentellen Features aktivieren.Super, damit kann ich arbeiten, dann werde ich versuchen immer vorher die entsprechenden Türpositionen anzufahren und erst dann direkt von dort die Reinigung aufnehmen.
Die nächste Ausbaustufe könnte sein, auch noch Türsensoren anzubringen. Wenn eine Türe verschlossen ist braucht er es nicht mehr versuchen den/die dahinterliegenden Räume anzufahren.
@thirty8763 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Ahhh... Der goToPosition Datenpunkt war nicht sicher weil "Einige weitere experimentelle Features ("control.extended" Kanal)" nicht aktiv gesetzt war.
Ich dachte das ist mit " Native "goToPosition" Funktion benutzen (z.B. T8/T9/N8/X1 Serie)" erledigt aber scheinbar muss man beide experimentellen Features aktivieren.Du hast recht. Ich habe das nun so angepasst, dass man nur noch eins von beidem aktiviert haben muss.
-
(Anmerkung: Der folgende Text wurde am 03.06.2022 gekürzt und danach immer wieder aktualisiert)
Hallo zusammen,
ich möchte hier über den Status des Ecovacs Deebot Adapters berichten
und natürlich auch nach Eurer Meinung fragen, ob es noch "offene Baustellen" gibt - oder ob Ihr soweit alles damit umsetzen könnt, was Ihr Euch so vorgestellt habt ( Bitte dabei aber realistisch bleiben und auch den aktuellen Status berücksichtigen
).
Aktuelle Versionen
Stadium Version Releasedatum Stable 1.4.14 04.02.2024 / 20.02.2024 Beta 1.4.15 16.03.2024 Alpha 1.4.16-alpha.2 09.05.2024
Bekannte (größere) Probleme
- Aktuell gibt es (mehr oder weniger häufig) auf 32-Bit Systemen Probleme mit der Erstellung vom Map Image.
- Das betrifft hauptsächlich Raspberry Pi Systeme, welche i.d.R. noch mit einem 32-Bit Linux betrieben werden. Das wird offensichtlich durch eine System-nahe Komponente von bzw. unter der Canvas Library verursacht - daher kann ich aktuell nichts machen und muss an anderer Stelle gefixt werden. Auch eine ältere Version von Canvas hilft nicht weiter, da der betroffene Teil bei der Installation i.d.R. neu erstellt wird.
- Die Generierung der aktuellen Map ("map.[mapID].loadMapImage" bzw. "map64") funktioniert noch nicht bei den Deebot X1, X2, T20 und T30 Serien
Weitere Informationen:
Möglichkeit für sonstiges Feedback:
Nützliche Links:
Die Version 1.4.11 ist seit heute im Stable Repo verfügbar

Änderungen seit der letzten Stable (1.4.8):
- Aktuell gibt es (mehr oder weniger häufig) auf 32-Bit Systemen Probleme mit der Erstellung vom Map Image.
-
Die Version 1.4.11 ist seit heute im Stable Repo verfügbar

Änderungen seit der letzten Stable (1.4.8):
@mrbungle64 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Die Version 1.4.11 ist seit heute im Stable Repo verfügbar

Änderungen seit der letzten Stable (1.4.8):
Einen Teil der Neuerungen werde ich in diesem Artikel genauer beschreiben bzw. in die Beiträge einfließen lassen (sind mit
gekennzeichnet)Aktuell sind folgende Beiträge hinzugekommen:
-
Löst das so schon Dein eigentliches Problem mit der als Wand behandelten Tür?
@mrbungle64 said in Ecovacs Deebot Adapter: Status und Feedback:
Löst das so schon Dein eigentliches Problem mit der als Wand behandelten Tür?
Absolut!
Funktioniert nun perfekt.
Unabhängig ob bei der letzten Fahrt die Türen offen waren oder nicht, findet der Staubsauger immer in die Räume.Ich überlege jetzt noch, dass ich das ganze mit Türsensoren kombiniere und automatisch die nicht zugänglichen Räume im Reinigungsprogramm ausspare. Ist aber wahrscheinlich nicht nötig. Früher oder später gibt er ja eh auf, wenn er nicht in einen Raum findet. Er fährt halt dann nur wirr herum und sucht nach einen Zugang zum Raum. Das könnte man sich damit ersparen.
-
@mrbungle64 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Die Version 1.4.11 ist seit heute im Stable Repo verfügbar

Änderungen seit der letzten Stable (1.4.8):
Einen Teil der Neuerungen werde ich in diesem Artikel genauer beschreiben bzw. in die Beiträge einfließen lassen (sind mit
gekennzeichnet)Aktuell sind folgende Beiträge hinzugekommen:
@mrbungle64 einen Wunderschönen.
Sag mal, wie komme ich denn an den Datenpunkt:
map.[mapID].loadMapImage
ran, den in deinem Beitrag beschrieben wird?Ich habe den V 1.4.11 installiert.
Und danke, für deine super Arbeit! TOP!
-
@mrbungle64 einen Wunderschönen.
Sag mal, wie komme ich denn an den Datenpunkt:
map.[mapID].loadMapImage
ran, den in deinem Beitrag beschrieben wird?Ich habe den V 1.4.11 installiert.
Und danke, für deine super Arbeit! TOP!
@senger1985 sagte in Ecovacs Deebot Adapter: Status und Feedback:
@mrbungle64 einen Wunderschönen.
Hi @senger1985
Sag mal, wie komme ich denn an den Datenpunkt:
map.[mapID].loadMapImage
ran, den in deinem Beitrag beschrieben wird?Der muss bei manchen Modellen noch über die Adapter-Einstellungen aktiviert werden:
"Funktion zum Erzeugen einer statischen Map ("map.[mapID].loadMapImage")"Das werde ich dem Beitrag noch ergänzen und bei weiteren Modellen zur Standard-Einstellung machen

Und danke, für deine super Arbeit! TOP!
Danke für das Feedback

-
@senger1985 sagte in Ecovacs Deebot Adapter: Status und Feedback:
@mrbungle64 einen Wunderschönen.
Hi @senger1985
Sag mal, wie komme ich denn an den Datenpunkt:
map.[mapID].loadMapImage
ran, den in deinem Beitrag beschrieben wird?Der muss bei manchen Modellen noch über die Adapter-Einstellungen aktiviert werden:
"Funktion zum Erzeugen einer statischen Map ("map.[mapID].loadMapImage")"Das werde ich dem Beitrag noch ergänzen und bei weiteren Modellen zur Standard-Einstellung machen

Und danke, für deine super Arbeit! TOP!
Danke für das Feedback

@mrbungle64 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Funktion zum Erzeugen
Merci gefunden und aktiviert.
Mal gucken, was man noch so alles "neues" mit dem Adapter anstellen kann.(Kennst mich ja.
) -
Ich habe in einer ruhigen Stunde nochmal die iOS App zur Hand genommen und durchgeklickt.
Optionen aus iOS App heraus
Reinigungseinstellungen > StandardWischmodus (Scheinbar Standard und Anpassen weil payload der gleiche ist)
warn got payload for unknown command 'onCustomAreaMode': {"sweepMode":0}Reinigungseinstellungen > Anpassen > Bevorzugter Bereich
Da für jedes(n) Zimmer/Bereich drei Einstellmöglichkeiten gibt (Reinigen: 1x/2x; Saugkraft: Leise/Standard/Maximal/Maximal+; Wasserdurchflussrate: niedrig/mittel/hoch) werden diese immer als Gesamtes gespeichert, auch wenn zB. nur 2x reinigen ausgewählt wird.
Somit sind die unbekannten payloads immer sie gleichen.warn got payload for unknown command 'onSimpleARMapSet': {"type":"ar","speechVer":"2.0","mid":"732490256","msid":"1863920572","subsets":[{"name":"Esszimmer1","mssid":"1","subtype":"2","totalCount":0},{"name":"","mssid":"2","subtype":"1","totalCount":0},{"name":"Küche1","mssid":"3","subtype":"5","totalCount":0},{"name":"Schlafzimmer1","mssid":"6","subtype":"3","totalCount":0},{"name":"Flur1","mssid":"8","subtype":"12","totalCount":0},{"name":"Badezimmer2","mssid":"7","subtype":"6","totalCount":0}]}warn got payload for unknown command 'onFwBuryPoint-areasInfo': "{\"header\":{\"pri\":1,\"tzm\":60,\"ts\":\"1674563558544\",\"ver\":\"0.0.1\",\"fwVer\":\"2.3.9\",\"hwVer\":\"0.1.1\",\"wkVer\":\"0.1.54\"},\"body\":{\"gid\":\"G1674563558521\",\"index\":\"0000000123\",\"ts\":\"1674563558521\",\"mid\":732490256,\"areas\":[{\"id\":1,\"name\":\"Esszimmer1\",\"type\":2,\"priority\":0,\"waterLevel\":1,\"fanLevel\":0,\"cleanCnt\":2},{\"id\":2,\"name\":\"\",\"type\":1,\"priority\":0,\"waterLevel\":0,\"fanLevel\":1,\"cleanCnt\":1},{\"id\":3,\"name\":\"Küche1\",\"type\":5,\"priority\":0,\"waterLevel\":1,\"fanLevel\":0,\"cleanCnt\":1},{\"id\":6,\"name\":\"Schlafzimmer1\",\"type\":3,\"priority\":0,\"waterLevel\":2,\"fanLevel\":1,\"cleanCnt\":2},{\"id\":8,\"name\":\"Flur1\",\"type\":12,\"priority\":0,\"waterLevel\":1,\"fanLevel\":0,\"cleanCnt\":2},{\"id\":7,\"name\":\"Badezimmer2\",\"type\":6,\"priority\":0,\"waterLevel\":1,\"fanLevel\":0,\"cleanCnt\":1}]}}"warn got payload for unknown command 'onFwBuryPoint-bd_mapinfo': "{\"header\":{\"pri\":1,\"tzm\":60,\"ts\":\"1674563558803\",\"ver\":\"0.0.1\",\"fwVer\":\"2.3.9\",\"hwVer\":\"0.1.1\",\"wkVer\":\"0.1.54\"},\"body\":{\"gid\":\"G1674563558794\",\"index\":\"0000000124\",\"ts\":\"1674563558794\",\"mapinfos\":[{\"mapid\":0,\"name\":\"\",\"savemapType\":0,\"isActive\":0,\"isRecentMap\":0,\"cleanCount\":0,\"priority\":0},{\"mapid\":732490256,\"name\":\"OG Loft\",\"savemapType\":1,\"isActive\":1,\"isRecentMap\":1,\"cleanCount\":2,\"priority\":26},{\"mapid\":0,\"name\":\"\",\"savemapType\":2,\"isActive\":0,\"isRecentMap\":0,\"cleanCount\":0,\"priority\":0},{\"mapid\":0,\"name\":\"\",\"savemapType\":3,\"isActive\":0,\"isRecentMap\":0,\"cleanCount\":0,\"priority\":0}]}}"Das sind eingentlich alle payloads die unbekannt sind.
Die die unbekannt waren hast Du/wir ja schon erörtert.Was mir noch aufgefallen ist.
Der Datenpunkt ecovacs-deebot.0.control.extended.volume wird von Dir mit Wert 1-10 vorgegeben.
Denoch lässt sich in der iOS App der Wert von 0-10 ändern.
So wird es auch im datenpunkt ecovacs-deebot.0.control.extended.volume gesetzt.
Mal angenommen ich stelle in der iOS App die Lautstärke auf 5 und setzte sie danach im Datenpunkt ecovacs-deebot.0.control.extended.volume auf 0 springt dieser nach einigen Sekunden wieder auf 5@jm3west sagte in Ecovacs Deebot Adapter: Status und Feedback:
Was mir noch aufgefallen ist.
Der Datenpunkt ecovacs-deebot.0.control.extended.volume wird von Dir mit Wert 1-10 vorgegeben.
Denoch lässt sich in der iOS App der Wert von 0-10 ändern.
So wird es auch im datenpunkt ecovacs-deebot.0.control.extended.volume gesetzt.
Mal angenommen ich stelle in der iOS App die Lautstärke auf 5 und setzte sie danach im Datenpunkt ecovacs-deebot.0.control.extended.volume auf 0 springt dieser nach einigen Sekunden wieder auf 5Dies habe ich nun korrigiert.
In zukünftigen Versionen darf der Wert auch 0 sein und der Name vom Datenpunkt ist ebenfalls korrigiert ("Volume for voice and sounds (0-10)"). -
Hallo Leute bei mir macht der Adapter seit Samstag Probleme foldendes steht im Log.
Kann mir hier jemand Helfen.
Danke
-
Hallo Leute bei mir macht der Adapter seit Samstag Probleme foldendes steht im Log.
Kann mir hier jemand Helfen.
Danke
@michael-1975 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Hallo Leute bei mir macht der Adapter seit Samstag Probleme foldendes steht im Log.
Kann mir hier jemand Helfen.Das Modul Axios schmeißt einen Fehler, dass die Adresse 3.68.172.231 auf Port 443 nicht erreichbar ist.
Hat sich bei dir irgendwas am Netzwerk bzw. der Internet-Verbindung geändert? -
@michael-1975 sagte in Ecovacs Deebot Adapter: Status und Feedback:
Hallo Leute bei mir macht der Adapter seit Samstag Probleme foldendes steht im Log.
Kann mir hier jemand Helfen.Das Modul Axios schmeißt einen Fehler, dass die Adresse 3.68.172.231 auf Port 443 nicht erreichbar ist.
Hat sich bei dir irgendwas am Netzwerk bzw. der Internet-Verbindung geändert?@mrbungle64 am Netzwerk hat sich nichts geändert aber was soll das für eine IP Adresse sein der Sauger hat eine ganz andere?
-
@mrbungle64 am Netzwerk hat sich nichts geändert aber was soll das für eine IP Adresse sein der Sauger hat eine ganz andere?
@michael-1975 sagte in Ecovacs Deebot Adapter: Status und Feedback:
@mrbungle64 am Netzwerk hat sich nichts geändert aber was soll das für eine IP Adresse sein der Sauger hat eine ganz andere?
Die Adresse gehört zur Amazon Cloud (Edit: oder Alibaba Cloud - da werde ich gerade nicht so schlau draus) und wird von Ecovacs verwendet.
-
@michael-1975 sagte in Ecovacs Deebot Adapter: Status und Feedback:
@mrbungle64 am Netzwerk hat sich nichts geändert aber was soll das für eine IP Adresse sein der Sauger hat eine ganz andere?
Die Adresse gehört zur Amazon Cloud (Edit: oder Alibaba Cloud - da werde ich gerade nicht so schlau draus) und wird von Ecovacs verwendet.
@mrbungle64 wie gesagt am netzwerk hat sich nicht geändert wenn ich den Adapter neu starten dann geht es eine Zeitlang gut und irgentwann gehts dann nicht mehr
-
@mrbungle64 wie gesagt am netzwerk hat sich nicht geändert wenn ich den Adapter neu starten dann geht es eine Zeitlang gut und irgentwann gehts dann nicht mehr
Benutzt du einen WLAN Repeater bzw. ein Mesh? Ich hatte da auch mal Probleme mit 2 Fritz!Boxen
-
Benutzt du einen WLAN Repeater bzw. ein Mesh? Ich hatte da auch mal Probleme mit 2 Fritz!Boxen
@mrbungle64 bei mir ist alles unifi und hat jetzt auch ca 1 Jahr ohne probleme geklappt über die App ist der Sauger erreichbar
-
@mrbungle64 bei mir ist alles unifi und hat jetzt auch ca 1 Jahr ohne probleme geklappt über die App ist der Sauger erreichbar
@michael-1975 sagte in Ecovacs Deebot Adapter: Status und Feedback:
@mrbungle64 bei mir ist alles unifi und hat jetzt auch ca 1 Jahr ohne probleme geklappt über die App ist der Sauger erreichbar
Hat sich sonst irgendwas am Samstag geändert?
Hast du ein Update vom Adapter gemacht? Welche Version benutzt du aktuell?