Owners of the Ecovacs Deebot X1 Omni now have a way to run the robot vacuum with no Ecovacs cloud and no account. On 27 October 2026 the developer GrahamKowalski published valetudo-ecovacs-x1, a downstream fork of Valetudo, the cloud-free control software for robot vacuums by Sören Beye. A companion repository, ecovacs-x1-research, holds the reverse-engineering notes behind it. The project was also shared on the Home Assistant community forum the same day.
How it works
The fork runs on the robot itself and talks directly to its on-board ROS graph, the set of processes that control the X1. It then exposes what any Valetudo robot exposes: a web interface and REST API on port 80 in the local network, plus MQTT with Home Assistant autodiscovery. It builds on earlier Ecovacs work in the ValetudoEV project by itsjfx.
According to the README, these features are verified on a real X1 Omni:
- status, battery and attachments (dustbin, mop plate, water tank);
- map decoding and a live map;
- start, stop, pause, return to dock, room cleaning and go to a point;
- fan speed and water level, carpet mode, do not disturb, no-go zones and virtual walls;
- a manual trigger for the auto-empty dock.
Consumable monitoring, child lock, error reports and Wi-Fi setup are implemented but not all marked as verified. Scheduling is left to Home Assistant on purpose, in line with how upstream Valetudo works.
What is missing
The author calls the status "working, with a defined capability set and known gaps". Mop washing and drying cycles at the station are reachable over ROS but not exposed yet. Rectangle zone cleaning and the auto-empty interval are mapped but not built. The fork targets the X1 Omni and Plus; the research notes say the Plus and Turbo share the same compute board but have not been tested separately.
The hard part: rooting
The fork does not install itself. The robot has to be rooted first, which means opening it for UART access at 3.3 V, deriving the per-device root password from the serial number and reflashing the read-only system image with the new backend. The research repo states that the root method for the X1 has been public since 2022, documented by itsjfx and Dennis Giese, and that the new contribution is the local control layer on top. A runbook covers the build and deployment.
The author warns that a mistake can only be undone through UART and a backup, so both should be ready before starting. The research notes also advise against taking an Ecovacs OTA update on a robot you plan to root, because newer firmware can close the path. A weekly local smart home roundup put the risk more bluntly: the process could brick the robot.
The fork is Apache-2.0, like Valetudo, and is not affiliated with or endorsed by Valetudo or ValetudoEV. Issues should go to the fork, not upstream. For X1 owners comfortable with a soldering iron and a serial adapter, it is the first route to a fully local robot. Everyone else should wait for the gaps to close.