Case study

Valetudo: local replacement for robot-vacuum vendor clouds

Replaces the vendor cloud of supported robot vacuums with a local service that runs on the rooted robot beside the vendor firmware and emulates the cloud endpoints that firmware expects, including a miio dummycloud and a counterpart for Midea's MSmart protocol. Its FAQ says each new vendor backend meant reverse engineering data formats, authentication and communication without vendor documentation; Valetudo converts the proprietary map formats into one ValetudoMap format and keeps Kaitai Struct descriptions of Dreame, Roborock and Viomi map files and a Midea protobuf schema as references. It adds a web interface, a REST API with Swagger UI and MQTT/Home Assistant integration, while feature parity with the vendor apps is an explicit non-goal.

Requirements & limits

  • Reviewed at the 2026.10.0 release commit of 2026-10-18. The README says Valetudo is not a custom firmware but a 'brain parasite' for the vendor firmware, whose own functions it relies on. The backend has Dreame, Roborock, Viomi, 3irobotix and Midea implementations, and the supported-robots page lists 50 model entries under 10 brand headings and calls the list exhaustive.
  • Requires a supported robot that its owner has already rooted. The docs describe rooting as model-specific and permanent ('Reverting to stock is impossible'), and say the vendor app stops working because cloud connectivity is cut; this record covers no rooting procedure. The repository and its releases ship no vendor firmware: release assets are Valetudo's own armv7, armv7-lowmem and aarch64 binaries with UPX-compressed variants, an OpenAPI schema and a release manifest, while the repository also commits pkg Node.js base binaries for packaging and small captured map files as test fixtures.
  • Valetudo runs on the robot's Linux system as a static Node.js 22 binary built with pkg; development needs Node.js >=20 according to the root package.json. The docs require Linux and computer skills, and sometimes hardware work, for installation, and offer peer support only.
  • CI on Node.js 22 runs type checks, lint, the frontend and backend builds and the backend node:test suite, including Dreame, Roborock and 3irobotix map-parser tests on captured maps and miio and MSmart packet tests. The supported-robots page says each listed robot was tested by the author personally unless noted. These are project-reported checks; this review ran nothing and compared no behaviour with vendor clouds.
  • Apache-2.0, although the README describes its governance as 'Freeware with source available'. The Kaitai structs declare CC-BY-SA-4.0, and a bundled robot model and tracker song are credited under CC-BY-NC-SA. Vendor firmware, apps and clouds keep their own terms. The reviewed sources establish no REA or AI use.

About this entry

Type
Case study
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Targets
Firmware · Protocol

Sources reviewed

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · Hypfer/Valetudo · Revision 7826751
  2. docs/pages/faq.md GitHub · Hypfer/Valetudo · Revision 7826751
  3. docs/pages/general/newcomer-guide.md GitHub · Hypfer/Valetudo · Revision 7826751
  4. docs/pages/general/getting-started.md GitHub · Hypfer/Valetudo · Revision 7826751
  5. docs/pages/general/why-not-valetudo.md GitHub · Hypfer/Valetudo · Revision 7826751
  6. docs/pages/general/supported-robots.md GitHub · Hypfer/Valetudo · Revision 7826751
  7. backend/lib/miio/Dummycloud.js GitHub · Hypfer/Valetudo · Revision 7826751
  8. backend/lib/msmart/MSmartDummycloud.js GitHub · Hypfer/Valetudo · Revision 7826751
  9. assets/kaitai_structs/readme.md GitHub · Hypfer/Valetudo · Revision 7826751
  10. assets/protobuf/midea.proto GitHub · Hypfer/Valetudo · Revision 7826751
  11. package.json GitHub · Hypfer/Valetudo · Revision 7826751
  12. backend/package.json GitHub · Hypfer/Valetudo · Revision 7826751
  13. .github/workflows/nodejs.yml GitHub · Hypfer/Valetudo · Revision 7826751
  14. frontend/src/assets/raw/credits.md GitHub · Hypfer/Valetudo · Revision 7826751
  15. LICENSE GitHub · Hypfer/Valetudo · Revision 7826751
  16. https://github.com/Hypfer/Valetudo/releases/tag/2026.10.0

More in Firmware and hardware

All 29 entries in Firmware and hardwareFirmware and hardware case studies (7)