
Der Xiaomi Mijia 1T (STYTJ02ZHM) ist ein Saugroboter mit Wischfunktion, hergestellt von Dreame und unter der Marke Xiaomi vertrieben. Diese Vorlage erfordert Valetudo — eine Open-Source-Firmware, die die Cloud-Abhängigkeit des Herstellers durch eine lokale HTTP-API ersetzt. Sobald Valetudo auf dem Roboter installiert ist, kommuniziert TapHome direkt mit der Valetudo REST API v2 im lokalen Netzwerk. Es ist keine Cloud-Verbindung oder Authentifizierung erforderlich.
Die Vorlage bietet Batterieüberwachung, eine Mehrwert-Statusanzeige und Schaltflächen zum Starten, Pausieren, Stoppen und Andocken des Saugroboters. Eine Ortungsfunktion löst einen akustischen Signalton aus, um den Roboter zu finden.
Valetudo muss auf dem Roboter installiert sein, bevor diese Vorlage verwendet werden kann. Die Vorlage kommuniziert mit der Valetudo HTTP-API, nicht mit den Cloud-Diensten von Xiaomi. Das Rooten des Xiaomi 1T erfordert einen 3,3-V-USB-zu-UART-Adapter und ein Dreame Breakout PCB — detaillierte Anweisungen findest du auf der Valetudo-Seite für unterstützte Roboter.
Konfiguration
Gib beim Import der Vorlage die IP-Adresse des Roboters im lokalen Netzwerk ein (der Standardplatzhalter ist 192.168.0.1). Die Valetudo REST API lauscht auf Port 80 ohne Authentifizierung.
Da Valetudo keinen mDNS-Hostnamen bereitstellt, weise dem Roboter eine statische IP-Adresse oder eine DHCP-Reservierung zu, damit sich die Adresse nach einem Netzwerkneustart nicht ändert.
Öffne
http://<robot-ip>/swagger/im Browser, um alle verfügbaren Valetudo API-Endpunkte interaktiv zu erkunden. Dies ist nützlich zur Überprüfung der Konnektivität und zur Inspektion des aktuellen Roboterzustands.
Gerätefähigkeiten
Batteriestand
Die Vorlage liest den Ladezustand der Batterie aus der Antwort von /api/v2/robot/state/attributes. Sie parst BatteryStateAttribute.level (gemeldet als 0–100) und teilt durch 100, um einen Bereich von 0,0–1,0 für TapHome zu erzeugen. Der Wert wird alle 2,5 Sekunden aktualisiert.
Saugroboter-Status
Ein Mehrwertschalter zeigt den aktuellen Betriebszustand des Roboters an. Die Vorlage parst StatusStateAttribute.value aus der Zustandsattribut-Antwort und ordnet ihn einem ganzzahligen Index zu:
| Status | Wert | Beschreibung |
|---|---|---|
| Docked | 0 | Roboter ist auf der Ladestation |
| Cleaning | 1 | Aktiver Reinigungszyklus |
| Returning | 2 | Rückkehr zur Ladestation |
| Paused | 3 | Reinigung pausiert |
| Idle | 4 | Keine Reinigung, nicht angedockt |
| Unknown | 9 | Nicht erkannter Status |
Die Valetudo API kann auch die Status error, manual_control und moving melden — diese werden nicht einzeln zugeordnet und erscheinen als „Unknown" (Wert 9).
Saugroboter-Steuerung
Vier Schaltflächen steuern den Saugroboter über den Endpunkt BasicControlCapability:
- Start — startet einen vollständigen Reinigungszyklus
- Pause — pausiert die aktuelle Reinigung
- Stop — stoppt die aktuelle Reinigung
- Home — schickt den Roboter zurück zur Ladestation
Jede Schaltfläche sendet eine PUT-Anfrage an /api/v2/robot/capabilities/BasicControlCapability mit der entsprechenden Aktion.
Ortung
Die Locate-Schaltfläche löst über den Endpunkt LocateCapability einen akustischen Signalton auf dem Roboter aus. Dies ist nützlich, um den Roboter zu finden, wenn er feststeckt oder sich an einem unerwarteten Ort befindet.
Weitere Fähigkeiten
Die Valetudo API stellt mehrere Fähigkeiten bereit, die derzeit nicht in der Vorlage implementiert sind: Lüftergeschwindigkeitssteuerung (Saugkraft-Voreinstellungen), Wasserverbrauchssteuerung (Wischintensität), Zonenreinigung, Navigation zu einem bestimmten Punkt, Kartenschnappschüsse, Verbrauchsmaterialüberwachung (Filter, Bürsten, Sensoren), Lautsprecherlautstärke, Nicht-stören-Planung, Ladestatus und WLAN-Signalstärke. Diese können in einem zukünftigen Vorlagen-Update hinzugefügt werden.
Fehlerbehebung
Gerät antwortet nicht
- Überprüfe, ob der Roboter eingeschaltet, mit dem WLAN verbunden ist und eine gültige IP-Adresse hat
- Öffne
http://<robot-ip>/im Browser — wenn die Valetudo-Weboberfläche lädt, ist die API erreichbar - Prüfe, ob TapHome und der Roboter im selben Netzwerk oder VLAN sind
- Bestätige, dass Valetudo läuft — wenn der Roboter auf Werkseinstellungen zurückgesetzt wurde, muss Valetudo möglicherweise neu installiert werden
Status zeigt „Unknown" (???)
Die Vorlage ordnet fünf Status zu (docked, cleaning, returning, paused, idle). Wenn der Roboter error, manual_control oder moving meldet, wird der Status als „Unknown" (Wert 9) angezeigt. Dies ist erwartetes Verhalten — die nicht zugeordneten Status treten bei Randfällen wie manueller Fernsteuerung oder Fehlerbehebung auf.
Batteriestand zeigt Null
- Bestätige, dass Valetudo läuft und die API unter
/api/v2/robot/state/attributesantwortet - Prüfe, ob die Antwort einen
BatteryStateAttribute-Eintrag mit einem Wert ungleich Null fürlevelenthält - Wenn der Roboter kürzlich neu gestartet wurde, warte auf den Abschluss der ersten Zustandsabfrage