Simple guide to root and replace the standard firmware of your xiaomi vacuum robot in order to avoid xiaomi cloud (and more!).
(1) Install Mi Home v5.4.54 to extract TOKEN (this version writes the TOKEN to internal memory; no rooted android device required)
Folder: /sdcard/SmartHome/logs/Plug_Devicemanager/
File: yyyy-mm-dd.txt
Example: "SmartHome 1397997:[DEBUG]-06-22 13:00:33.713 processResult in result={"code":0,"message":"ok","result":{"list":[{"did":"229311297","token":"413374423256755687776c7770474c34","longitude":"0.00000000","latitude":"0.00000000"…""
TOKEN: 413374423256755687776c7770474c34
Device ID (DID): 229311297
In case you cannot obtain Mi Home v5.4.54, read here for other solutions..
(2) Get the device IP from your router
(3) Open Terminal:
mirobo --ip 192.168.1.xx --token 413374423256755687776c7770474c34 status
(4) Create custom firmware using this firmware builder (currently using v1820/Gen2, preinstalled Valetudo and generic adbd are recommended):
https://dustbuilder.xvm.mit.edu
Further information:
(5) Download and extract dustcloud from Github:
https://github.com/dgiese/dustcloud
(6) Copy generated firmware to “dustcloud/devices/xiaomi.vacuum/firmwarebuilder”
(7) Flash firmware! (installation can take 5-10 min)
python3 flasher.py -a 192.168.1.xx -t 413374423256755687776c7770474c34 -f v11_001820.pkg
Additional suggestions:
- Remote Control Software (WIN/OSX/LINUX): https://github.com/LazyT/rrcc
- Android Remote: https://play.google.com/store/apps/details?id=de.flole.xiaomi
- Homebridge Plugin: https://www.npmjs.com/package/homebridge-roborock
- https://www.roboter-forum.com/index.php?board/147-root-bereich-1-2-generation/