Skip to main content

(Board löten für) Staubsaugerroboter-Rooting

Grundidee

Löten eines Dreame Breakout Adapters zum Rooten eines Staubsaugerroboters und Installation von Valetudo

Platzbedarf

Eine kleine und eine noch kleinere Platine

Ab wann / wie lange

Mai 2024

Kontakt

F30

Motivation

Ein Staubsaugerroboter sollte her. Leider hat man bei den kommerziell verfügbaren Optionen praktisch nur die Wahl zwischen US- und chinesischer Cloud-Anbindung. (Zumindest, solang man halbwegs intelligente Navigation und Steuerung möchte.)

Nun bin ich weder religiöser Cloud-Gegner, noch besonders datensparsam, noch prinzipieller Open-Source-Enthusiast. Aber für ein Gerät mit Kamera, das durch meine Wohnung fährt, ist selbst mir die Cloud-Anbindung zu viel des Guten.

Also einen möglichst kompatiblen Roboter kaufen und Valetudo als lokalen Open-Source Cloud-Ersatz darauf installieren. (Ja, meine Motivation ist laut Valetudo-Doku die falsche. IrgendwannIrgendwas ist ja immer.)

Projekt-Metadaten

Ausgehend von der Liste der gut unterstützen Geräte viel meine Wahl auf den Dreame D10s Pro. Ein eher einfach, günstiges Modell. Features wie automatische Leerung des Staubbehälters oder besseres Wischen erschienen mir keinen deutlichen Aufpreis wert. Zumal wir hier über ein China-Gadget mit fragwürdiger Langlebigkeit reden, dessen Garantie durch das Rooting möglicherweise in Mitleidenschaft gezogen wird.

Der Rooting-Prozess für den Dreame D10s Pro ist vergleichsweise einfach. Es wird allerdings stark empfohlen, zum Verbinden via USB das Breakout-Adapter-Board zu verwenden.

Die unbestückte Platine sowie die benötigten Komponenten erhielt ich nach Kontakt via Telegram und Zusenden einer Porto-Marke vom Valetudo-Maintainer hypfer zugesandt. Eines Freitagabends ging es dann ins ZAM zum Löten.

Außer einem Lötkolben und den Bauteilen wurden keine weiteren Geräte oder Werkzeuge verwendet. Das eigentliche Rooting benötigt ein x86/AMD64-System mit Debian (siehe unten).

Logbuch / Schritte

Board löten

Die Anleitung zum Zusammenbau ist gut brauchbar. Es ist ansich kein anspruchsvolles Löt-Projekt, allerdings sind einige Lötstellen wie etwa der Micro-USB-Port sehr klein.

Mangels Löt-Routine hab ich mich nicht allzu glücklich angestellt. So stellte es sich etwa als Fehler heraus, die Pads für die Header-Pins vorab zu verzinnen, da sie dadurch zu dick wurden. Beim anschließenden Entlöten schmolz der Kunststoff an einem der Pins, was die Funktionalität jedoch nicht zu beeinträchtigen scheint.

Trotz aller Widrigkeiten war das Löten an einem Abend erledigt. Mit mehr Routing bekäme man es sicher auch in deutlich unter einer Stunde hin.

Rooting

Danach auf nach Hause zum Roboter. Das Vorgehen folgt im Prinzip 1:1 der Anleitung von Valetudo.

Zunächst war der Spaß für mich allerdings relativ schnell vorbei, da ich lernen musste dass das proprietäre LiveSuit-Tool nur x86 und AMD64 unterstützt. Zu Hause hatte ich allerdings nur ARM-Geräte zur Hand. (Die Empfehlung, keine VM zu verwenden, hätte ich noch geflissentlich ignoriert, aber bei Emulation hörte es dann auf.)

Ein paar Tage später bei einem Freund mit dessen AMD64-Laptop klappte dann alles auf Anhieb wie beschrieben. Selbst meine fragwürdigen Lötstellen waren wider Erwarten kein Problem.

Verbleib des Boards

Meine ursprüngliche Idee war, das gelötete Board für weitere Rooting-Vorhaben im ZAM zu lagern. Möglicherweise passiert das noch, aber dafür muss sich zuerst ein geeigneter Platz finden. Bis dahin lagert es bei mir(F30) und ich stelle es auf Anfrage gerne zur Verfügung.

Wie gesagt könnte es besser gelötet sein, für den oben beschriebenen Prozess hat es aber problemlos funktioniert. Andere Teile wie die Debug-Breakouts oder das kleine Breakout Breakout für bestimmte Roboter sind bislang ungetestet.