TapHome

Xiaomi 1T (Valetudo)

Packet Parser → HTTP
Beküldő
Utoljára frissítve: 03. 2026
Xiaomi 1T (Valetudo)

A Xiaomi Mijia 1T (STYTJ02ZHM) egy robotporszívó-felmosó, amelyet a Dreame gyárt és a Xiaomi márkanév alatt forgalmaz. Ez a sablon a Valetudo nyílt forráskódú firmware-t igényli, amely a gyártó felhőfüggőségét helyi HTTP API-val helyettesíti. A Valetudo telepítése után a TapHome közvetlenül a Valetudo REST API v2-vel kommunikál a helyi hálózaton. Nincs szükség felhőkapcsolatra vagy hitelesítésre.

A sablon akkumulátor-figyelést, többértékű állapotjelzőt és nyomógombokat biztosít a porszívó indításához, szüneteltetéséhez, leállításához és dokkolásához. A keresés funkció hangjelzést indít a robot megtalálásához.

A Valetudo-t a sablon használata előtt telepíteni kell a robotra. A sablon a Valetudo HTTP API-val kommunikál, nem a Xiaomi felhőszolgáltatásaival. A Xiaomi 1T rootolásához 3,3 V-os USB-UART adapter és Dreame Breakout PCB szükséges — részletes útmutatót a Valetudo támogatott robotok oldalán találsz.

Konfiguráció

A sablon importálásakor add meg a robot IP-címét a helyi hálózaton (az alapértelmezett helyőrző 192.168.0.1). A Valetudo REST API a 80-as porton figyel hitelesítés nélkül.

Mivel a Valetudo nem biztosít mDNS hosztnevet, rendelj a robothoz statikus IP-címet vagy DHCP-foglalást, hogy a cím ne változzon hálózati újraindítás után.

Nyisd meg a http://<robot-ip>/swagger/ címet böngészőben az összes elérhető Valetudo API végpont interaktív felfedezéséhez. Hasznos a kapcsolat ellenőrzéséhez és a robot aktuális állapotának vizsgálatához.

Eszközképességek

Akkumulátor szint

A sablon az akkumulátor töltöttségi állapotát olvassa ki a /api/v2/robot/state/attributes válaszból. A BatteryStateAttribute.level értéket elemzi (0–100 tartományban jelezve) és 100-zal osztja, hogy 0,0–1,0 tartományt állítson elő a TapHome számára. Az érték 2,5 másodpercenként frissül.

Porszívó állapot

Egy többértékű kapcsoló jeleníti meg a robot aktuális üzemi állapotát. A sablon a StatusStateAttribute.value értéket elemzi az állapotattribútumok válaszából és egész szám indexre képezi le:

ÁllapotÉrtékLeírás
Docked0A robot a töltőállomáson van
Cleaning1Aktív takarítási ciklus
Returning2Visszatérés a töltőállomásra
Paused3Takarítás szüneteltetve
Idle4Nem takarít, nincs dokkolva
Unknown9Nem felismert állapot

A Valetudo API az error, manual_control és moving állapotokat is jelezheti — ezek nincsenek egyedileg leképezve és „Unknown" (érték 9) formában jelennek meg.

Porszívó vezérlés

Négy nyomógomb vezérli a porszívót a BasicControlCapability végponton keresztül:

  • Start — teljes takarítási ciklust indít
  • Pause — szünetelteti az aktuális takarítási műveletet
  • Stop — leállítja az aktuális takarítási műveletet
  • Home — visszaküldi a robotot a töltőállomásra

Minden gomb PUT kérést küld a /api/v2/robot/capabilities/BasicControlCapability végpontra a megfelelő akcióval.

Keresés

A Locate gomb hangjelzést indít a roboton a LocateCapability végponton keresztül. Hasznos a robot megtalálásához, ha elakadt vagy váratlan helyen van.

További képességek

A Valetudo API számos képességet biztosít, amelyek jelenleg nincsenek implementálva a sablonban: ventilátorsebesség-szabályozás (szívóerő előbeállítások), vízfelhasználás-szabályozás (felmosási intenzitás), zónatakarítás, navigáció megadott pontra, térképpillanatképek, fogyóanyag-figyelés (szűrő, kefék, érzékelők), hangszóró hangereje, ne zavarj ütemezés, töltési állapot és WiFi jelerősség. Ezek egy jövőbeli sablonfrissítésben adhatók hozzá.

Hibaelhárítás

Az eszköz nem válaszol
  1. Ellenőrizd, hogy a robot be van-e kapcsolva, csatlakozik-e a Wi-Fi-hoz és van-e érvényes IP-címe
  2. Nyisd meg a http://<robot-ip>/ címet böngészőben — ha a Valetudo webes felülete betöltődik, az API elérhető
  3. Ellenőrizd, hogy a TapHome és a robot ugyanazon a hálózaton vagy VLAN-on vannak-e
  4. Győződj meg róla, hogy a Valetudo fut — ha a robotot gyári beállításokra állították vissza, a Valetudo-t újra kell telepíteni
Az állapot „Unknown"-t mutat (???)

A sablon öt állapotot képez le (docked, cleaning, returning, paused, idle). Ha a robot error, manual_control vagy moving állapotot jelez, az állapot „Unknown" (érték 9) formában jelenik meg. Ez várható viselkedés — a nem leképezett állapotok szélsőséges esetekben fordulnak elő, mint manuális távirányítás vagy hibaelhárítás.

Az akkumulátor szint nullát mutat
  1. Győződj meg róla, hogy a Valetudo fut és az API válaszol a /api/v2/robot/state/attributes címen
  2. Ellenőrizd, hogy a válasz tartalmaz-e BatteryStateAttribute bejegyzést nem nulla level értékkel
  3. Ha a robotot nemrég indították újra, várd meg az első állapotlekérdezés befejezését

Elérhető eszközök

Xiaomi 1T (Valetudo) Modul
Egyéni változók

Xiaomi 1T (Valetudo)

Olvasás (modul)
VAR response := SENDHTTPREQUEST("/api/v2/robot/state/attributes");
IF response.IsSuccess
 state := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Akkumulátor szint Analóg bemenet Csak olvasható

Az akkumulátor töltöttségi állapota — a fennmaradó energia százaléka (0–100 %)

numeric Egység: %

Akkumulátor szint

Bemeneti szint olvasása
PARSEJSON(state, "$[?(@.__class == 'BatteryStateAttribute')].level") / 100
Dokkolás Nyomógomb
action

Dokkolás

Gombállapot írása
VAR response := SENDHTTPREQUEST("/api/v2/robot/capabilities/BasicControlCapability", "PUT", "{\"action\": \"home\"}", "accept: */*", "Content-Type: application/json");
IF response.IsSuccess
 var res := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Keresés Nyomógomb

Hangjelzést indít a roboton a megtaláláshoz

action

Keresés

Gombállapot írása
VAR response := SENDHTTPREQUEST("/api/v2/robot/capabilities/LocateCapability", "PUT", "{\"action\": \"locate\"}", "accept: */*", "Content-Type: application/json");
IF response.IsSuccess
 var res := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Szünet Nyomógomb
action

Szünet

Gombállapot írása
VAR response := SENDHTTPREQUEST("/api/v2/robot/capabilities/BasicControlCapability", "PUT", "{\"action\": \"pause\"}", "accept: */*", "Content-Type: application/json");
IF response.IsSuccess
 var res := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Indítás Nyomógomb
action

Indítás

Gombállapot írása
VAR response := SENDHTTPREQUEST("/api/v2/robot/capabilities/BasicControlCapability", "PUT", "{\"action\": \"start\"}", "accept: */*", "Content-Type: application/json");
IF response.IsSuccess
 var res := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Porszívó állapot Többértékű kapcsoló Csak olvasható

Aktuális üzemi állapot — Docked, Cleaning, Returning, Paused, Idle vagy Unknown

enum mapped
Értékek / Állapotok: Docked · Cleaning · Returning · Paused · Idle · ???

Porszívó állapot

Kapcsoló állapot olvasása
var status := PARSEJSON(state, "$[?(@.__class == 'StatusStateAttribute')].value");

switch(status,
"docked", 0,
"cleaning", 1,
"returning", 2,
"paused", 3,
"idle", 4,
9);
Leállítás Nyomógomb
action

Leállítás

Gombállapot írása
VAR response := SENDHTTPREQUEST("/api/v2/robot/capabilities/BasicControlCapability", "PUT", "{\"action\": \"stop\"}", "accept: */*", "Content-Type: application/json");
IF response.IsSuccess
 var res := response.Content;
ELSE
 ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Kapcsolat: Packet Parser → HTTP
Lehetséges fejlesztések (10)
  • Fan speed control — Set suction power level (low, medium, high, max). Available via PUT with preset value.
  • Water usage control — Set mopping water flow level (low, medium, high). Available on models with mopping support.
  • Map snapshot — Retrieve current map as PNG image. Available via GET.
  • Zone cleaning — Start cleaning of specific zones defined by coordinates.
  • Go to location — Send robot to specific coordinates on the map.
  • Consumable monitoring — Read remaining life of filter, main brush, side brush, and sensor. Percentage or hours remaining.
  • Charging status — Battery charging state (charging, discharging, charged). Available in state attributes alongside battery level.
  • Speaker volume — Set robot speaker volume level (0-100).
  • Do not disturb — Enable/disable DND mode with start/end time.
  • WiFi signal strength — WiFi RSSI and signal quality. Available in state attributes response.

Források