Valetudo 2023.08.0
DEFCON 31 - 7 newly rootable robots, new rooting method for 6 robots with a previous root, 5 more new robots in the pipeline
DEFCON 31
If you haven't seen it already, I highly recommend watching our latest talk:
https://media.ccc.de/v/camp2023-57158-vacuum_robot_security_and_privacy (CCCamp 2023 version)
The Valetudo docs have already been partially updates with new rooting methods and robot details. It will take some more time to fully finish all documentation. Please bear with me :)
The new Dreame Rooting PCB can be found here: https://github.com/Hypfer/valetudo-dreameadapter
As a spoiler, here's the full list of what we just released in that talk:
Newly rootable robots
These robots are now rootable for the first time
- Dreame L10s Ultra
- Roborock S8
- Roborock S8 Pro Ultra
- Xiaomi X10+
- Dreame D10s Plus
- Dreame D10s Pro
Robots with a new rooting method
These robots have been rootable previously but received firmware patches that blocked the old methods
- Dreame Z10
- Dreame L10
- Dreame W10
- Dreame D9
- Dreame F9
- Xiaomi Vacuum-Mop 2 Ultra
Robots currently in the pipeline
Edit from the future (2024-04):
Since this text keeps haunting me, I need to add this note.
It didn't work out.
I've got way too hyped and wanted to help too many people and with that ended up spending more than 4000€ of my own hard-earned cash on dead-ends that led nowhere. Please stop asking about these or robots mentioned in the section above, okay?
It is frustrating enough as it is. No I did not accidentally forget to update the docs. No it's not just a tiny step away.I accidentally tried to be nice, wasting a lot of my own personal resources on that, and now the reminder of that waste of time and resources periodically pops up in my inbox as a "but but but you said that".
And yes, this also includes robots that might've been mentioned in other release notes. Let it go.
We're currently finishing up the rooting methods for these robots. It might take a little while as it's conference season
- Dreame L10 Ultra
- Dreame L10s Pro
- Dreame W10 Pro
- Roborock Q Revo
- Roborock S7 Max Ultra
Valetudo features
While most of our time was spent getting the fresh rooting methods ready, a few things extending beyond adding support
for the new robots also happened to Valetudo
Return of the ObstacleAvoidanceCapability
With the Roborock S8 now being officially rootable and supported, toggling the obstacle avoidance on or off was reintroduced
as a full capability again after it was previously demoted to being just a dreame-specific quirk.
Furthermore, the PetObstacleAvoidanceControlCapability
was introduced as a way to tell the Obstacle Detection AI to be especially
careful with some particularly dangerous kinds of obstacles.
Even more capabilities
With the CarpetSensorModeControlCapability
there's now proper UI to select how a robot equipped with a dedicated carpet
sensor should deal with detected carpet. This feature was previously found in the quirks section.
The last new capability for this release is the CollisionAvoidantNavigationControlCapability
which toggles what the name suggests.
MQTT Changes
New Entities
For convenience and better automations, Battery Level and Status Flag are now being exposed to Home Assistant as separate
entities. Previously, the Battery Level was only available as an attribute of the Vacuum entity.
Note regarding Home Assistant 2023.08 and newer
Valetudo users that have upgraded their Home Assistant Instance to 2023.8 are currently being confronted with a scary error message that looks like this:
This is neither an actual functional issue nor a bug in Valetudo.
There were some architectural and strategic changes inside Home Assistant that affect some details about how MQTT Autodiscovery
should be implemented by other software that wants to show up in Home Assistant. Implementing the requested changes not very hard,
however doing so would break the naming of Valetudo-related entities in older versions of Home Assistant.
Since the release of HA 2023.8 happened less than two weeks ago, it would be unreasonable to force all users of Valetudo
to upgrade their HA instances. Especially since due to migration logic in HA, things work just fine and will continue to work like that until 02/2024.
For now, simply click on the "Ignore" Button in Home Assistant. No need to rename anything.
The usual
I am quite happy with what we've released today and I think you will be too :)
If you want to see Valetudo on more robots and/or like this release, you might want to consider donating:
https://github.com/sponsors/Hypfer
https://builder.dontvacuum.me/donations.txt
Autogenerated changelog
Features
- ui: Include consumable name in consumable reset confirm dialog
7f7b218
- mqtt: Expose battery state and status flag as home assistant sensor entities
5f26145
- vendor.roborock: S8 Pro Ultra support
0f390e0
- vendor.viomi: Support outline cleaning mode (#1844)
f68b995
- CarpetSensorModeControlCapability
a4261b6
- CollisionAvoidantNavigationControlCapability
e22e532
- vendor.dreame: More quirks
5a3ecc6
- PetObstacleAvoidanceControlCapability
7eae549
- vendor.roborock: RoborockObstacleAvoidanceControlCapability
bd1febe
- Return of the ObstacleAvoidanceControlCapability
e48aa7e
- vendor.roborock: S8 support + map parser cleanup
12aa3a7
- vendor.dreame: L10 Ultra
4e4b7ae
Fixes
- vendor.roborock: Remove invalid quirk for S8 series
76bba87
- vendor.dreame: The L10S Pro does not support the CollisionAvoidantNavigationControlCapability
c3405bd
Refactoring
- vendor.dreame: Hard-code miot IDs for capabilities that are exclusive to the gen2 miot schema
ef93adf