Cloud-free control webinterface for vacuum robots
View the Project on GitHub Hypfer/Valetudo
Supported Robots Capabilities Overview Installation instructions Upgrading
Valeronoi Lovelace Valetudo Map Card I can't belive it's not Valetudo node-red-contrib-valetudo Valetudo Minecraft Mapper Other Noteworthy Projects
FAQ Frequently requested features Troubleshooting
Building and Modifying Valetudo Valetudo core concepts
Supported Roborock Devices Supported Viomi Devices Supported Dreame Devices
These pages guide you through the installation steps for viomi robots. Support is still somewhat experimental, see below for details.
The default settings here will be for running Valetudo on the robot itself. If you want to develop as well, check out the Local Development section.
There’s a tool to automate rooting and Valetudo installation.
Please give it a try and file any issues that you encounter there.
First, you need to get root access to your Robot.
If you decide to install Valetudo manually, you’ll need to set up the robot to talk to your host instead of the xiaomi cloud:
ssh root@vacuum
sed -i 's/110.43.0.8./127.00.00.1/g' /usr/bin/miio_client
for domain in "" de. ea. in. pv. ru. sg. st. tw. us.; do
echo "127.0.0.1 ${domain}ot.io.mi.com ${domain}ott.io.mi.com" >> /etc/hosts
done
reboot
Run
npm run build
And deploy the valetudo
binary to your robot:
scp valetudo root@vacuum:/mnt/UDISK/
# Setup init scripts (only needed once and only if not already done by rooting script)
(cd deployment/viomi; tar cv . | ssh root@vacuum "cd /; tar x")
Follow the development guide.
You can perform firmware updates up to v3.5.3_0047 without risking root (see the firmware update analysis for details).
Important: Make sure you use ssh-keys and don’t rely on password login otherwise your root access may be lost.
To perform a firmware upgrade you currently need to:
This will remove Valetudo, free the diskspace and re-enable the cloud interface.
ssh root@vacuum
/etc/init.d/valetudo stop
rm /etc/init.d/valetudo /mnt/UDISK/valetudo
rm /overlay/usr/bin/miio_client
Add the following to the system
section in /etc/config/system
(adjust ip and port as necessary):
option log_ip 192.168.1.10
option log_port 8054
option log_proto tcp
After a reboot you can receive logs using netcat:
netcat -l4 8054
See the OpenWrt Runtime Logging Guide for details.