Cloud replacement for vacuum robots enabling local-only operation
View the Project on GitHub Hypfer/Valetudo
Newcomer Guide Why Valetudo? Why not Valetudo? Getting Started Supported Robots Rooting Essentials Buying Supported Robots Media & Content Creators
Implementation Overview Capabilities Overview Upgrading Firmware Updates
Valetudo Companion (Android) Valetudo Tray Companion Valeronoi Lovelace Valetudo Map Card I Can't Believe It's Not Valetudo node-red-contrib-valetudo Fun & Games Other Noteworthy Projects
MQTT Home Assistant Node-RED openHAB
FAQ Style Guide Troubleshooting
At the time of writing, (2024-06-18), Valetudo supports more than 35 different Robots.
If you’re interested in hardware specifics, teardowns and more, check out Dennis Giese’s Vacuum Robot Overview.
Please note that this list is exhaustive. These are the supported robots.
Robots not on this list are not supported by Valetudo. If your robot is not on this list, it is not supported.
Unless noted otherwise, these robots were all tested by me personally to ensure that:
Being supported means meeting these criteria. Only by fulfilling these conditions can a robot be deemed supported.
While Valetudo tries its best to be generic and reuse code wherever possible, since it is not a custom firmware, the backend is basically a few huge chunks of code that are very specific to the respective vendor firmware and cloud architecture they try to emulate.
Supporting any new vendors is thus quite a large task because not only requires it to write large parts of the backend again from scratch but also do the reverse engineering of data formats, authentication, communication and various functionality with no documentation from the vendor available.
It’s a time-consuming process that mostly involves random chance and that can only start once security vulnerabilities leading to system administrator level access on the hardware in question has been found. A similar reverse-engineering process without any documentation that is also quite time-consuming and mostly involves random chance.
Valetudo only runs on the supported robots because security researcher Dennis Giese found ways to root them.
Rooting in this context means taking these locked-down IoT devices, finding and exploiting security flaws in their design and gaining permanent system administrator level access to them to allow for running additional custom software such as Valetudo and modifying the system to make the unclouding possible.
These security flaws are all 0days of which we sometimes need multiple to achieve the rooting.
They’re also specific to one specific vendor’s implementation of something on one specific piece of hardware.
With a public root release, these get burned and usually quickly fixed by the vendors, making finding a working exploit chain for newer models after the release harder or sometimes even impossible.
Therefore, please refrain from asking if something that isn’t on this list is supported.
Please do not ask if someone “tried” it. Please do not state that you would like it if something would be supported.
Without explicitly mentioning this, readers often expect that something not being supported just means that no one has tried it yet, which is more akin to how e.g. running GNU+Linux on some random laptop works.
Thank you for your understanding
Hint:
You can use Ctrl + F to look for your model of robot.
Robots sold under the Xiaomi brand are actually made by varying manufacturers.
Don’t assume any compatibility of consumables or other parts as well as rooting instructions.
The Xiaomi V1 is made by Roborock. It is sold as:
Note:
This robot never received firmware updates that enable persistent maps. This means that it creates a new one on every cleanup.
There are no virtual walls etc. Do not buy this new. There are much better options.
Rooting is pretty easy if your device was manufactured before 2020-03.
In that case, it only requires a Laptop. All warranty seals stay intact.
If your robot is newer than that, full disassembly will be required.
Valetudo Binary: armv7
Secure Boot: no
The Xiaomi 1C is made by Dreame. It is sold as:
Important note:
There are multiple hardware revisions under the same name. Only the dreame.vacuum.mc1808
is currently supported.
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
If you only see weird characters on the UART, try 500000
instead of 115200
as the baud rate.
Valetudo Binary: armv7
Secure Boot: no
The Xiaomi 1T is made by Dreame. It is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
On initial root, it might be required to do a factory reset so that the device.conf gets regenerated. Note that that factory reset will also remove Valetudo meaning that you will have to put it back after that.
Valetudo Binary: aarch64
Secure Boot: no
The Xiaomi P2148 is made by Dreame. It is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
With its 5.5cm height and 32.3cm diameter, this robot offers a solution for some tricky homes. As it is china exclusive, spare parts may be hard to find in the rest of the world.
On initial root, it might be required to do a factory reset so that the device.conf gets regenerated. Note that that factory reset will also remove Valetudo meaning that you will have to put it back after that.
There is no reset button on this robot. Instead, press and hold the two buttons for
Valetudo Binary: aarch64
Secure Boot: no
The Vacuum-Mop P is using the Viomi cloud stack but is actually made by 3irobotix.
There are three robots with different IDs under this name, and they’re all 3irobotix CRL-200S inside.
It’s very confusing. If unsure, please ask us first.
These are sold under the names:
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Warning:
Do not try to root the viomi.vacuum.v8 as there are many of them that will unrecoverably brick if you try to do so.
You can check if yours is a v8 by looking at the SSID of the WiFi AP the robot creates.
Note:
While Valetudo works with their model firmwares, the recommended rooting procedure is to flash these with a Viomi V6 firmware as that has more features.
Valetudo Binary: armv7
Secure Boot: no
The Xiaomi Vacuum-Mop 2 Ultra is made by Dreame. It is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes (since FW 1167)
The Xiaomi Robot Vacuum X10 Plus is made by Dreame. It is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame D9 is Dreame’s first ever Lidar-based vacuum robot. It is sold as:
It is NOT sold as the D9 Max. That is an entirely different robot. Only the D9 non-max is supported.
To ensure that you get the supported D9, make sure that it has 3 buttons.
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Dreame D9 Pro is sold as:
Important note:
Dreame never released any firmware updates for this robot.
However, we were able to port the regular D9 firmware to it, which is a huge improvement over the stock D9 Pro experience.
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Dreame F9 is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: armv7
Secure Boot: no
The Dreame L10 Pro is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes (since FW 1138)
The Dreame Z10 Pro is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes (since FW 1156)
The Dreame W10 is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Due to the design of the dock, it might be difficult to have the robot docked while being connected to its UART.
One useful trick to solve that is this: sleep 300 && ./install.sh
. With that, you will have a
300s window where you can disconnect the PCB and put it in the dock. The command will keep running.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Dreame W10 Pro is sold as:
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Due to the design of the dock, it might be difficult to have the robot docked while being connected to its UART.
One useful trick to solve that is this: sleep 300 && ./install.sh
. With that, you will have a
300s window where you can disconnect the PCB and put it in the dock. The command will keep running.
On this robot, the miio cloudKey seems to only be stored in secure storage which broke cloud communication with Valetudo.
Here’s a one-liner to fix that:
mount -o remount,rw /mnt/private && printf "%s" "$(dreame_release.na -c 7 | awk -F' = ' '/MI_KEY/{print $2}')" > "/mnt/private/ULI/factory/key.txt" && mount -o remount,ro /mnt/private
If you’re rooting your W10 Pro, just run that command before setting up Valetudo. A reboot might be required.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame L10s Ultra is sold as:
It is not sold as the L10s Ultra Gen2.
That’s a completely different robot with a confusing name that is not supported.
You can tell the L10s Ultra from the unsupported but confusingly similar named L10 Ultra or the L10s Ultra Gen2 by its AI obstacle avoidance camera + the lack of an extendable mop.
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame D10s Pro is sold as:
It is NOT sold as the D10s without the “Pro”. That is an entirely different robot. Only the “Pro” is supported.
To ensure that you get the supported “Pro”, make sure that it has 3 buttons.
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame D10s Plus is sold as:
It is NOT sold as the D10 Plus without the “s”. That is an entirely different robot. Only the “s” is supported.
To ensure that you get the supported “s”, make sure that it has 3 buttons.
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame L10s Pro Ultra Heat is sold as:
If the robot fails to dock after rooting:
The issue is that rooting flashes a newer firmware than the one installed from the factory; bypassing the normal update process. As there seems to have been a breaking change in the communication between MCU and Linux-side-software, this breaks docking.
Installing a firmware package via SSH uses the normal OTA update process and with that fixes this mismatch.
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame L40 Ultra is sold as:
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame X40 Ultra is sold as:
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Dreame X40 Master is sold as:
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
MOVA is a sub-brand(?) of Dreame
The MOVA Z500 is made by Dreame. It is sold as:
Rooting is pretty easy, only requiring a 3.3v USB UART Adapter, the Dreame Breakout PCB and almost no disassembly. All warranty seals stay intact.
Valetudo Binary: armv7
Secure Boot: no
The Mova S20 Ultra is sold as:
Rooting is relatively easy. Usage of the Dreame Breakout PCB is highly recommended. All warranty seals stay intact.
Valetudo Binary: aarch64
Secure Boot: yes
The Roborock S5 is sold as:
Rooting is pretty easy, only requiring a Laptop. All warranty seals stay intact.
Note that segment support is only available starting with firmware version 2008 so make sure you’re up-to-date.
Valetudo Binary: armv7
Secure Boot: no
The Roborock S6 is sold as:
Important Note:
I do not own this robot. There can be unknown issues with equally unknown solutions.
Not everything might work. The available firmware might be outdated. The experience might be subpar.
Rooting requires full disassembly.
Valetudo Binary: armv7
Secure Boot: no
The Roborock S6 Pure is sold as:
Important Note:
I do not own this robot. There can be unknown issues with equally unknown solutions.
Not everything might work. The available firmware might be outdated. The experience might be subpar.
Rooting requires full disassembly.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Roborock S4 is sold as:
Important Note:
I do not own this robot. There can be unknown issues with equally unknown solutions.
Not everything might work. The available firmware might be outdated. The experience might be subpar.
Rooting requires full disassembly.
Valetudo Binary: armv7
Secure Boot: no
The Roborock S4 Max is sold as:
Important Note:
I do not own this robot. There can be unknown issues with equally unknown solutions.
Not everything might work. The available firmware might be outdated. The experience might be subpar.
Rooting requires full disassembly.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Roborock S5 Max is sold as:
Rooting requires full disassembly.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Roborock S7 is sold as:
Rooting requires full disassembly.
Warning:
The VibraRise mop module makes disassembly of this robot difficult and easy to mess up especially for newcomers.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Roborock S7 Pro Ultra is sold as:
Rooting requires full disassembly.
Valetudo Binary: armv7-lowmem
Secure Boot: no
The Roborock Q7 Max is sold as:
2024-09-28 Update
Starting with robots manufactured somewhere around Q2 2024, Roborock switched to SkyHigh-brand NAND on their newly produced Q7 Max.
Unfortunately, after dumping quite a few days into it, we haven’t been able to get the rooting procedure working with said NAND.
Thus, if you pick up a factory new Q7 Max then chances are that it’s not rootable anymore. The rooting procedure is still safe. It doesn’t brick the robot; it just doesn’t work.
You’ll only find out that it’s SkyHigh NAND once you’ve disassembled the robot and thus can’t return it to the seller anymore. Thus, right now your options are:
Rooting requires full disassembly.
Valetudo Binary: armv7-lowmem
Secure Boot: no
Viomi is a brand that uses existing robot designs with a slightly customized cloud.
They’re not a robot manufacturer.
The Viomi V6 is actually a 3irobotix CRL-200S inside. It is sold as:
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
The Viomi SE is actually a 3irobotix CRL-200S inside. It is sold as:
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
Conga is a brand that uses existing robot designs with a slightly customized cloud.
They’re not a robot manufacturer.
The Conga 3290 is actually a 3irobotix CRL-200S inside. It is sold as:
Important note:
Because these use a non-miio cloud implementation, getting them to work with Valetudo means reflashing them to a Viomi V6.
That’s possible, because the hardware is exactly the same.
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
The Conga 3790 is actually a 3irobotix CRL-200S inside. It is sold as:
Important note:
Because these use a non-miio cloud implementation, getting them to work with Valetudo means reflashing them to a Viomi V6.
That’s possible, because the hardware is exactly the same.
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
Proscenic is a brand that uses existing robot designs with a slightly customized cloud.
They’re not a robot manufacturer.
The Proscenic M6 Pro is actually a 3irobotix CRL-200S inside. It is sold as:
Important note:
Because these robots use a non-miio cloud implementation, getting them to work with Valetudo means reflashing them to a Viomi V6.
That’s possible, because the hardware is exactly the same.
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
Someone from Austria seems to have bought the rights to use the long-defunct Commodore brand.
Apparently, the first thing to do with that was to release a line of vacuum robots made by 3irobotix.
The Commodore CVR 200 is actually a 3irobotix CRL-200S inside. It is sold as:
Important note:
Because these robots use a non-miio cloud implementation, getting them to work with Valetudo means reflashing them to a Viomi V6.
That’s possible, because the hardware is exactly the same.
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
I don’t even know what this brand is. It doesn’t seem to be around anymore?
When it was around though, it of course released a branded CRL-200S.
The IKOHS Netbot LS22 is actually a 3irobotix CRL-200S inside. It was sold as:
Important note:
Because these robots use a non-miio cloud implementation, getting them to work with Valetudo means reflashing them to a Viomi V6.
That’s possible, because the hardware is exactly the same.
Rooting is pretty easy, only requiring a Linux Laptop and a micro USB cable.
It might be required to remove the battery but that can be done without touching any warranty seals.
Valetudo Binary: armv7
Secure Boot: no
Cloud replacement for vacuum robots enabling local-only operation
View the Project on GitHub Hypfer/Valetudo
Newcomer Guide Why Valetudo? Why not Valetudo? Getting Started Supported Robots Rooting Essentials Buying Supported Robots Media & Content Creators
Implementation Overview Capabilities Overview Upgrading Firmware Updates
Valetudo Companion (Android) Valetudo Tray Companion Valeronoi Lovelace Valetudo Map Card I Can't Believe It's Not Valetudo node-red-contrib-valetudo Fun & Games Other Noteworthy Projects
MQTT Home Assistant Node-RED openHAB
FAQ Style Guide Troubleshooting