Root Robot Aspirador Xiaomi STYJ02YM

Si ets propietari d’un robot aspirador de la marca Xiaomi i en concret del Viomi V2 Pro, el fantàstic STYJ02YM també conegut a Europa com a Mi Robot Vacuum Mop Pro, t’explicaré com tenir accés root a través de la shell del robot i en un segon post explicaré com solucionar els problemes amb les actualitzacions, que es queden al 80, 83, 85%.

Vull recordar, que en cap moment seré responsable de cap dany que es pugui produir al dispositiu.

Requisits

  • El robot Xiaomi STYJ02YM
  • Tenir instal·lat l’Android platform-tools ( pots descarregar-ho aquí )
  • Client SSH ( Amb el que ús sentiu més còmode )
  • Una shell de Linux/Unix ( Si sou usuaris de Windows podeu utilitzar Cygwin ).
  • Cable Micro USB
  • Tornavís d’estrella menut.

Root del dispositu

Per poder accedir al sistema de fitxers del dispositiu cal poder accedir com a súper usuari. Rumpeltux ha fet una meravellosa feina, trobant una manera de poder accedir a l’equip d’una manera senzilla, però ús explicaré pas a pas com poder realitzar aquests passos i entendre’ls.

Cercar el port de Micro USB

Retirem la coberta de plàstic del raspall principal i retirem el raspall principal, tal com es veu a la imatge.

Un cop retirat el raspall, veurem que hi ha una coberta de plàstic amb 4 caragols petits, que també haurem de retirar.

Un cop retirada la coberta, veurem que hi ha la bateria del dispositiu. La retirem i la desconnectem del robot. Un cop fet això, veurem que hi ha un micro USB.

Connecteu el cable micro USB al connector, amb la bateria desconnectada, i sense connectar a l’ordinador.

Durant l’arracada del robot, publica un servidor Android ADB al dispositiu USB, però durant un període molt breu menys 1 segon ), i després el desactiva. És per això que hem de preparar abans i executar les ordres, metres aquest servidor estigui operatiu.

Substitució de la Shell ADB

Creem un arxiu anomenat adb_shell al nostre equip amb la següent informació

Un cop guardat l’arxiu li donarem permisos

Executarem la següent comanda en bucle, així, quan arrengui el servidor adb durant aquest període curt de temps mitjançant push, enviarà la shell al dispositiu.

Obrim el terminal i executem tot en una mateixa línia. Un cop guardat l’arxiu li donarem permisos

Un cop executat, connectem USB a l’equip i esperem que connecti al robot.

Ens hi haurà d’aparèixer alguna línia com aquesta.

Pot ser que no ens aparegui cap línia. Si és així desconnectem l’USB i el tornem a connectar.

Hem d’ometre els erros que puguin aparèixer, es totalment normal. Ens hem de fixar en la línia i que s’hagi transmès dades58 bytes in 0.033s ) .

Si ha anat bé, polsarem “Ctrl + C” per aturar la comanda.

El següent pas, és aturar l’enllaç que arranca l’aplicació del robot i que fa que s’aturi el servidor d’Android ADB. Aquesta aplicació és la que fa que connecti a Mi Home, per tant, un cop estigui aturada apareixerà el robot com a desconnectat.

Amb el cable USB desconnectat executem la comanda següent i connectem l’USB

Si la comanda no ha anat bé, repetiu el pas anterior. Per verificar que ha anat correctament, en una nova finestra de shell executem adb shell i haurà d’aparèixer el login del linux del robot.

Si és així anul·lem la comanda anterior amb “Ctrl+C”

Ara toca instal·lar DropBear per a tenir habilitat el servei SSH. Podeu compilar vosaltres mateixos el binari mitjançant la guia de Rumpeltux, o utilitzar el binari ja compilat per Rumpeltux, que podeu descarregar d’
aquí

Per instal·lar DropBear amb l’arxiu precompilat de Rumpeltux, seguim el següents passos.

Pugem l’arxius a la carpeta tmp del robot, executant la seguent comanda.

Instal·lem  el paquet.

Un cop fet això, desconnectem l’USB i el tornem a connectar i verifiquem que podem accedir per SSH.

Ens demanarà un password, que és el següent:

Un cop a la shell del robot modifiquem el password de la següent manera.

Ara toca tornar a generar el enllaç d’arrancada de l’aplicatiu del robot, per tal que funcioni amb Mi Home, i no tinguem un mini ordinador linux en comptes d’una aspiradora.

Un cop creat el enllaç. Desconnectem el micro USB del robot. Tornem a connectar la bateria, la coberta amb els 4 cargols petits, el raspall i la coberta del raspall.

Col·loquem el robot a la seva base, i esperem que connecti a la xarxa wifi i verifiquem que connecta amb l’aplicatiu de MiHome i que també tenim accés per SSH.

Recomano lleguir el seguent article, si esteu interesats en actulitzar el robot STYJ02YM ( Viomi V7 Pro ) a la versió 3.5.3_0047