
Xiaomi Mijia 1T (STYTJ02ZHM) je robotický vysávač s mopom vyrábaný spoločnosťou Dreame a predávaný pod značkou Xiaomi. Táto šablóna vyžaduje Valetudo — open-source firmvér, ktorý nahrádza závislosť na cloude výrobcu lokálnym HTTP API. Po nainštalovaní Valetudo na robota TapHome komunikuje priamo s Valetudo REST API v2 v lokálnej sieti. Nie je potrebné žiadne cloudové pripojenie ani autentifikácia.
Šablóna poskytuje monitorovanie batérie, viachodnotový indikátor stavu a tlačidlá na spustenie, pozastavenie, zastavenie a dokovanie vysávača. Funkcia lokalizácie spustí zvukový signál na nájdenie robota.
Valetudo musí byť nainštalované na robote pred použitím tejto šablóny. Šablóna komunikuje s Valetudo HTTP API, nie s cloudovými službami Xiaomi. Rootovanie Xiaomi 1T vyžaduje 3,3 V USB-to-UART adaptér a Dreame Breakout PCB — podrobné inštrukcie nájdeš na stránke podporovaných robotov Valetudo.
Konfigurácia
Počas importu šablóny zadaj IP adresu robota v lokálnej sieti (predvolená hodnota je 192.168.0.1). Valetudo REST API počúva na porte 80 bez autentifikácie.
Keďže Valetudo nevystavuje mDNS hostname, priraď robotovi statickú IP adresu alebo DHCP rezerváciu, aby sa adresa nezmenila po reštarte siete.
Otvor
http://<robot-ip>/swagger/v prehliadači na interaktívne preskúmanie všetkých dostupných Valetudo API endpointov. Je to užitočné na overenie konektivity a kontrolu aktuálneho stavu robota.
Schopnosti zariadenia
Stav batérie
Šablóna číta stav nabitia batérie z odpovede /api/v2/robot/state/attributes. Parsuje BatteryStateAttribute.level (reportovaný ako 0–100) a delí 100 na vytvorenie rozsahu 0,0–1,0 pre TapHome. Hodnota sa aktualizuje každých 2,5 sekundy.
Stav vysávača
Viachodnotový prepínač zobrazuje aktuálny prevádzkový stav robota. Šablóna parsuje StatusStateAttribute.value z odpovede atribútov stavu a mapuje ho na celočíselný index:
| Stav | Hodnota | Popis |
|---|---|---|
| Docked | 0 | Robot je na nabíjacej stanici |
| Cleaning | 1 | Aktívny cyklus vysávania |
| Returning | 2 | Návrat k stanici |
| Paused | 3 | Vysávanie pozastavené |
| Idle | 4 | Nevysáva, nie je na stanici |
| Unknown | 9 | Nerozpoznaný stav |
Valetudo API môže reportovať aj stavy error, manual_control a moving — tieto nie sú individuálne mapované a zobrazia sa ako „Unknown" (hodnota 9).
Ovládanie vysávača
Štyri tlačidlá ovládajú vysávač cez endpoint BasicControlCapability:
- Start — spustí kompletný cyklus vysávania
- Pause — pozastaví aktuálnu operáciu vysávania
- Stop — zastaví aktuálnu operáciu vysávania
- Home — pošle robota späť na nabíjaciu stanicu
Každé tlačidlo odošle PUT požiadavku na /api/v2/robot/capabilities/BasicControlCapability s príslušnou akciou.
Lokalizácia
Tlačidlo Locate spustí zvukový signál na robote cez endpoint LocateCapability. Je to užitočné na nájdenie robota, keď je zaseknutý alebo na neočakávanom mieste.
Ďalšie schopnosti
Valetudo API vystavuje niekoľko schopností, ktoré nie sú v šablóne implementované: ovládanie rýchlosti ventilátora (predvoľby sacieho výkonu), ovládanie spotreby vody (intenzita mopovania), zónové vysávanie, navigácia na konkrétne miesto, snímky mapy, monitorovanie spotrebného materiálu (filter, kefy, senzory), hlasitosť reproduktora, plánovanie režimu nerušiť, stav nabíjania a sila Wi-Fi signálu. Tieto môžu byť pridané v budúcej aktualizácii šablóny.
Riešenie problémov
Zariadenie neodpovedá
- Over, že robot je zapnutý, pripojený k Wi-Fi a má platnú IP adresu
- Otvor
http://<robot-ip>/v prehliadači — ak sa načíta webové rozhranie Valetudo, API je dostupné - Skontroluj, že TapHome a robot sú v rovnakej sieti alebo VLANe
- Potvrď, že Valetudo beží — ak bol robot obnovený do továrenských nastavení, Valetudo môže byť potrebné preinštalovať
Stav zobrazuje „Unknown" (???)
Šablóna mapuje päť stavov (docked, cleaning, returning, paused, idle). Ak robot reportuje error, manual_control alebo moving, stav sa zobrazí ako „Unknown" (hodnota 9). Toto je očakávané správanie — nemapované stavy sa vyskytujú pri okrajových situáciách ako manuálne RC ovládanie alebo obnova po chybe.
Stav batérie ukazuje nulu
- Potvrď, že Valetudo beží a API odpovedá na
/api/v2/robot/state/attributes - Skontroluj, že odpoveď obsahuje záznam
BatteryStateAttributes nenulovou hodnotoulevel - Ak bol robot nedávno reštartovaný, počkaj na dokončenie prvého pollingu stavu