Installing Valetudo on Dreame L10s Ultra Robot Vacuum
I have a Dreame L10s Ultra robot vacuum that has been a great addition to our house, especially with a dog that sheds and tracks in dirt. It’s helped tremendously with keeping the floors clean. However, I’ve never been a fan of the software—I really dislike being tied to proprietary software that communicates extensively with Chinese servers.
Recently, I discovered Valetudo, a cloud replacement for vacuum robots that enables local only operation. This was exactly what I was hoping for to gain full ownership over my robot and data.
Preparation
My vacuum is listed on their supported robots page. According to their guide for this model, I needed:
- The Dreame Breakout PCB
They provide a GitHub repository with Gerber files that I used to get the PCBs manufactured at JLCPCB. This was fairly inexpensive, though I ended up with four extra PCBs.
I ordered all the necessary components from DigiKey.
Rooting and Installation
Instructions for rooting this device are available in their documentation. The process was somewhat stressful due to the watchdog timer that automatically restarts the device. This really forces you to take your time and carefully plan each step before executing it.
Application
The end result is having controls through a web UI that’s hosted directly on the vacuum. While it’s less polished than the Dreame app, it’s much more pleasant to work with. It also integrates easily with Home Assistant through MQTT auto discovery.
Final Thoughts
I’m incredibly glad to have found a solution like this. The cloud servers were the only aspect of my vacuum that I disliked, and Valetudo completely solved that problem.
I went into this project with the mindset that I might break the vacuum and need to buy a replacement. That mentality probably helped me take my time and thoroughly review each step before attempting it.
This experience has piqued my interest in hardware hacking. I’ve only ever followed tutorials before and never done any actual hacking myself. While there were many steps in this process that I didn’t fully understand, it’s made me want to learn more and better understand how these modifications work.