Deebot Ozmo 950 lässt sich jetzt auch per ioBroker steuern (SmartHome)

  • Ich habe gerade entdeckt, dass die Entwickler des Ecovacs Deebot Adapters für ioBroker (sehr beliebte Open Source Integrationsplattform für SmartHome Geräte) nun auch die Steuerung für den Deebot Ozmo 950 entwickelt haben:


    https://github.com/mrbungle64/…r.ecovacs-deebot/issues/7


    Also gleich mal Version 0.4 bei mir installiert und siehe da, es funktioniert. 👍


    Das eröffnet jetzt ganz neue Möglichkeiten, denn der Adapter ist nicht nur in der Lage, eine Autoreinigung zu starten sondern es geht auch eine Bereichsreinigung und benutzerdefinierte Reinigung.


    Bei der Bereichsreinigung gibt man in Form eines Datenpunktes (SpotArea) den Raum vor, in dem der Bot reinigen soll, hier muss man schauen, welchen Buchstaben der Raum in der App bekommen hat und muss dann entsprechend für Raum A den Wert 0, für Raum B den Wert 1 usw. übergeben.


    Bei der Benutzerdefinierten Reinigung muss man 4 Koordinaten übergeben, damit muss ich mich aber erstmal eingehend beschäftigen.


    Das coole daran ist, dadurch kann ich jetzt auch mühelos den Deebot viel besser über Alexa steuern, ich kann also nun auch Sprachkommandos wie "Alexa, Bereichsreinigung im Wohnzimmer" ausführen lassen, indem ich ein Script hinterlege, dass bei eben diesem Sprachkommando aufgerufen wird und als einzige Aktion schreibt dieses Script dann den Wert 5 in den Datenpunkt SpotArea (5 ist der Wert für meinen Raumbuchstaben F, den mein Wohnzimmer besitzt). Und der Bot startet sofort die Bereichsreinigung.


    Perfekt für mich, da ich sehr gerne die Bereichsreinigung nutze, dann brauche ich nicht immer das Smartphone zur Hand nehmen und die App öffnen.


    Außerdem sind auch solche Automatismen möglich wie eine Reinigung zu starten, während gerade alle Abwesend sind, denn in ioBroker erkenne ich ja auch die Anwesenheit / Abwesenheit meiner Frau und mir (Geofencing).


    Außerdem bietet der Adapter auch die Möglichkeit, detaillierter den Status des Roboters abzufragen, zum Beispiel bekommt man hier tatsächlich den Akkustand in Prozentwerten angezeigt im Gegensatz zur App. Hat man also zum Beispiel eine SmartHome Visualisierung (Tablett an der Wand), kann man hier den Status genauer anzeigen.


    Und man kann auch abfragen, ob der Bot angedockt ist oder noch reinigt, das wäre zum Beispiel für mein noch ausstehendes Projekt "DIY Absaugstation für den Ozmo 950" etwas tolles, denn so weiß man genau, wann abgesaugt werden kann ohne eine Lichtschranke verbauen zu müssen.


    Hier mal einen Screenshot der Datenpunkte, die dieser Adapter bereitstellt:


    Screenshot_20200223-234844_Chrome.jpg


    Wollte nur mal mit euch meine Erfahrung teilen, eventuell ist ja auch der ein oder andere Nutzer von ioBroker hier und findet das interessant.


    Dann können wir natürlich gerne über die Möglichkeiten sprechen, die sich hieraus jetzt ergeben.

  • Was muss man eigentlich genau alles anstellen, um das nutzen zu können?

    Gerät rooten? (wie macht man das?)

    Der ioBroker ist doch erstmal eine API oder?

    Womit bedient man dann das Gerät?


    Wie verhält sich das Ganze, wenn Ecovacs eine neue Firmware rausbringt?

    Ecovacs Deebot Ozmo 950 und Ozmo 920 (FW: 1.8.2)

  • Der ioBroker Adapter verhält sich einfach wie ein weiterer Client, der über die Cloud Steuerbefehle an den Bot sendet.


    Im Prinzip macht der ioBroker Adapter das gleiche wie die App, nur mit einem abgespeckten Funktionsumfang (keine Karte usw.)


    Also man muss an dem Bot nichts modifizieren, um das nutzen zu können. Einfach in ioBroker den Ecovacs Deebot Adapter installieren, dort die Zugangsdaten zur Ecovacs Cloud eingeben und wenn der Adapter grün wird kann es los gehen.

  • Ah, ich dachte, das wäre etwas, um die Kommunikation an der Cloud vorbei zu machen.

    Welchen Vorteil hat der ioBroker im Vergleich zur APP? Sind da andere Dinge möglich?

    Oder ist das eine Lib, um Entwicklern die Integration in andere Steueroberflächen for den ozmo950 zu ermöglichen?

    Ecovacs Deebot Ozmo 950 und Ozmo 920 (FW: 1.8.2)

  • Nein, um die Kommunikation über die Cloud zu umgehen, müsste man eher die Software aus dem Projekt Bumper installieren, denn hier wird tatsächlich die Serverseite des Bots nachgebildet, also MQTT-Broker, Webserver mit Rest-Schnittstelle usw.


    Hier braucht man dann aber einen eigenen DNS-Server im Netz, um die Netzwerk-Kommunikation des Bots und des Clients (App, ioBroker Adapter) umleiten zu können, damit er nicht mehr die IPs der Cloud-Server anspricht sondern die IPs der lokalen Server-Infrastruktur.


    Der ioBroker Client kann im Grunde nichts / wenig, was die App nicht auch kann. Das einzige, was mir aufgefallen ist, dass der Adapter den Akkustand wirklich in Prozent anzeigt.


    Aber ich würde den Adapter auch nicht mit der App vergleichen, eher mit dem Alexa Skill von Ecovacs. Und hier ist der Funktionsumfang des ioBroker Adapters deutlich höher.


    Denn da ich auch in ioBroker Alexa eingebunden habe, kann ich auch über diesen Weg den Bot steuern und hier geht wie oben erwähnt zum Beispiel eine Bereichsreinigung, was ja mit dem Alexa Skill von Ecovacs nicht möglich ist.


    Die eigentliche Stärke besteht aber darin, dass nun der Bot nun auch über die SmartHome-Zentrale steuerbar ist und sich daraus ganz neue Anwendungsmöglichkeiten ergeben, zum Beispiel Saugen bei Verlassen des Hauses, saugen nur in gerade verlassenen Räumen, Abbruch des Saugens wenn man gerade nach Hause kommt, Starten der Absaugung einer DIY Absaugstation wenn der Bot gerade nach einer Reinigung angedockt hat, bessere Steuerung des Bots per Alexa oder Visualisierung. Nur um mal ein paar dahergesponnene Ideen zu nennen. 😉

    Edited once, last by dj.tifosi ().

  • Oder noch ein paar verrücktere Ideen:


    Fahre die Rolladen der Bodentiefen Fenster vor dem Saugen runter zur Vermeidung von Phantomräumen.


    Reinigung pausieren, wenn Bodentiefes Balkonfenster geöffnet ist, damit der Bot nicht raus auf den Balkon fährt.


    Wenn ein Rauchmelder auslöst, brich sofort die Reinigung ab und fahre zurück zur Basis, um nicht im Fluchtweg zu stehen.


    Wenn die Hausalarmanlage los geht, fahre den Deebot dorthin, wo der Einbrecher rein kam um ihn den Fluchtweg zu versperren. 😉


    Wenn der 3D Drucker fertig ist, starte eine Reinigung unmittelbar um den Drucker herum, da gerne mal ein wenig überschüssiges Material zu Boden fällt.


    Nach Beendigung des Frühstücks (Erkennung per Uhrzeit + Bewegungsmelder), starte eine benutzerdefinierte Reinigung um den Esszimmertisch.

    Edited once, last by dj.tifosi ().

  • Interessant. Soll auch mit dem 930 funktioren.


    Nur habe ich null Ahnung, wie ich das einrichten soll.

    Brauche ich hierzu noch eine spezielle Hardware?

    Deebot Ozmo 930

    Medion MD 18379

    Worx Landroid L1000 WR147e

  • Ein Rechner / NUC mit Linux oder auch ein Raspberry Pi ist ausreichend, wenn man es mit der Anzahl an Adaptern nicht übertreibt.


    Anleitungen zur Installation gibt's wie Sand am Meer, einfach mal in Youtube nach "Iobroker Installation" suchen.

  • Hi zusammen, wir bauen gerade fleißig an einer library, die die Steuerung der Bots per iobroker und anderer Smart Home Server ermöglicht (pimatic funktioniert wohl auch schon).

    Für den 950 hab ich gerade angefangen mit den Map und Cleanlog Funktionen herumzuspielen und kann bestätigen, dass das fehlende Anzeigen von Reinigungsprotokollen kein Problem in der App ist.

    Setze ich direkt eine Anfrage an den Server ab, bekomme ich auch nur genau die logs zurück, die in der App angezeigt werden. Bei mir passiert seit Valentinstag nichts mehr.

    Die Anfragen haben soweit ich das beurteilen kann auch keine Parameter, sondern die Befehle lauten ganz einfach GetCleanLogs (gibt die 20 Protokolle zurück) und GetLastCleanLog (ist auch leider nur das letzte der 20 und nicht das angeschlossene, welches bis zur nächsten Reinigung angezeigt wird).

  • Habe auch schon immer vermutet, dass entweder die Cloud Server Software da einen Bug hat oder die Firmware im 950er nicht immer das Reinigungsprotokoll ausliefert. Ich tippe eher auf die Cloud Server Software.

    Ecovacs Deebot Ozmo 950 und Ozmo 920 (FW: 1.8.2)

  • Hi zusammen, wir bauen gerade fleißig an einer library, die die Steuerung der Bots per iobroker und anderer Smart Home Server ermöglicht (pimatic funktioniert wohl auch schon).

    Für den 950 hab ich gerade angefangen mit den Map und Cleanlog Funktionen herumzuspielen und kann bestätigen, dass das fehlende Anzeigen von Reinigungsprotokollen kein Problem in der App ist.

    Setze ich direkt eine Anfrage an den Server ab, bekomme ich auch nur genau die logs zurück, die in der App angezeigt werden. Bei mir passiert seit Valentinstag nichts mehr.

    Die Anfragen haben soweit ich das beurteilen kann auch keine Parameter, sondern die Befehle lauten ganz einfach GetCleanLogs (gibt die 20 Protokolle zurück) und GetLastCleanLog (ist auch leider nur das letzte der 20 und nicht das angeschlossene, welches bis zur nächsten Reinigung angezeigt wird).

    Das mit Iobroker hört sich sehr interessant an, nutze ich auch leidenschaftlich in meinem SmartHome. 😉


    Aber habt ihr schon die Information mitbekommen, dass der Ecovacs Deebot Adapter seit kurzem auch den Ozmo 950 unterstützt?


    Ich hatte das schon hier gepostet Deebot Ozmo 950 lässt sich jetzt auch per ioBroker steuern (SmartHome)


    Vielleicht könnt ihr euch ja mit den Entwicklern austauschen und eine gemeinsame Core Library entwickeln, die beide Teams verwenden können, damit ihr nicht beide das Rad neu erfinden müsst.


    Was habt ihr denn an Funktionalität geplant? Wird so etwas wie die Kartenanzeige auf der VIS funktionieren?

  • dj.tifosi ich bin einer der Entwickler der library, die im iobroker Adapter genutzt wird und hab die Hauptarbeit für den 950 bekannt ;-)


    Ich arbeite im Moment daran die Bereiche pro Karte auszulesen, damit man diese gezielter im iobroker ansprechen kann.

    Dann soll die Standortfindung nutzbar gemacht werden, damit man die genutzte Karte aktualisieren kann.

    Mein nächstes Ziel wäre das aktivieren/deaktivieren von Sperrbereichen, damit ich eben das Problem an meinem Esstisch lösen kann. Stehen die Stühle da, verfängt er sich am den Stühlen. Räume ich sie weg muss ich den Sperrbereich löschen und danach wieder an der Stelle anlegen. Das würde ich gerne automatisieren.

    Dann das anrufen der Reinigungsprotokolle (so sie denn funktionieren), damit man die Karte der letzten Reinigung auch im iobroker anzeigen kann. Ein größeres Thema ist das dekodieren der live Karte...

  • schreibt dieses Script dann den Wert 5 in den Datenpunkt SpotArea (5 ist der Wert für meinen Raumbuchstaben F, den mein Wohnzimmer besitzt)

    Hi Dj,

    habe den Adapter auch eingepflegt, lohnt sich schon alleine für die prozentuale Anzeige des Akkus.

    wie hast du herrausgefunden welcher Buchstabe welcher Raum war ? oder hast du die nie umbenannt ?


    noch eine Frage, hast du schon raus gefunden wie man die Werte unter Verschleiß einpflegt ?

    9.PNG

  • Ja, habe mir tatsächlich das Umbenennen der Räume erspart, da es eh zu wenig Symbole gibt (kein Flur zum Beispiel).


    Wenn du sie schon umbenannt hast, müsstest du wahrscheinlich erst wieder deine Karte bearbeiten, Räume zusammenführen und dann wieder teilen und Karte speichern, dann sollte es wieder Raum-Buchstaben geben.

  • Coole Sache, das freut mich sehr, dass ihr dran seid, den Adapter funktional zu erweitern, werde davon auf jeden Fall auch einen großen Nutzen haben.


    Wegen deines Problems bezüglich der Stühle (ich gehe mal davon aus es sind Freischwingerstühle gemeint) habe ich aber auch schon eine Lösung entwickelt, wobei es eher eine Harwarelösung aus 3D gedruckten Teilen ist:


    Zum einen Habe ich Bumper-Klammern passend für den O950 designed, die den Bumper tiefer legen damit er sauber den auf dem Boden laufenden Rahmen des Stuhls abtasten und daran entlang fahren kann, ohne dort hochzuklettern, siehe https://www.thingiverse.com/thing:4123609


    Diese Idee habe ich erst kürzlich noch weiterentwickelt und einen Unterbauspoiler konstruiert, der unter den Bumperschild geschraubt wird, siehe Ozmo 950 per 3D Drucker tieferlegen.


    Vielleicht ist das ja schon die Lösung für dein Problem.

  • Ich glaube da warte ich lieber ab. Habe mich gerade auf Github ein wenig eingelesen.

    Die Jungs entwickeln den Adapter ja so rasend schnell das ist ja schon gewaltig !

    Respekt !

  • Ich glaube da warte ich lieber ab. Habe mich gerade auf Github ein wenig eingelesen.

    Die Jungs entwickeln den Adapter ja so rasend schnell das ist ja schon gewaltig !

    Respekt !

    Ja, da hast du recht, finde ich auch cool. :thumbup:

    Vielleicht kommt ja bald auch eine Kartendarstellung, auf der man dann auch die Buchstaben findet.

    Du könntest aber theoretisch auch per Ausprobieren die Buchstaben deiner Räume ermitteln, einfach mal in SpotArea 0 eintragen und schauen, in welchen Raum er fährt und das ganze mit den anderen Zahlen wiederholen.