(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. Irgendwann 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 relativgut 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 Haus 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 kein 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 steht es auf Anfrage bei mir (F30) 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.