Valetudo 2024.06.0 #2073
Replies: 4 comments
-
@Hypfer you asked about the vacuum-then-mop feature: We use that process quite often, because we found that often the robot doesn't get hair or other dirt in the first run. If you mop already, then those hair/dirt gets wet and sticks to the floor/mop and does not get vacuumed afterwards anymore. And thanks for documenting the not so nice parts of maintaining a project! One can only learn which questions are asked way to often and not ask them. |
Beta Was this translation helpful? Give feedback.
-
Amazing update! Thank you very much for your continued efforts, it is well appreciated <3 |
Beta Was this translation helpful? Give feedback.
-
Thank you for the ongoing work |
Beta Was this translation helpful? Give feedback.
-
Thanks sooooo much! You all doing such a great job and I really appreciate your work! I am self a maintainer and I know the struggle. |
Beta Was this translation helpful? Give feedback.
-
2024.06.0
Exciting new robots, lots of UI improvements, new features and some words on not burning out
New Robots
Since there has been quite some innovation going on in the robot space since the last time we've released support for a new robot,
we figured that it would be time to take a closer look at new robots once more.
Unfortunately, with innovation also came a steep increase in price. But, after irresponsibly spending multiple thousand euros
on new robots to void their warranty 30s after they've left the box, I have good news:
With the Dreame X40 and L10s Pro Ultra heat now being supported, we have Valetudo support for what according to reviewers
and also our own experience is the best vacuum robot money can buy you right now.
This sounds amazing and also is amazing but do keep in mind that the previously recommended L10s Ultra already is a very good vacuum robot. There aren't many things to improve about it, and, frankly, there are no improvements that would warrant spending more than twice the money.
Still, there have been notable improvements:
As always, don't forget that Valetudo is Valetudo.
It does not strive to implement each and every feature the vendor app might offer. In fact, it strives to explicitly not do that.
UI improvements
Apart from support for these robots, a lot of things have changed about Valetudo itself too.
Custom Icons
Valetudo now has a custom icon set for all presets (Fan, Water, Operating mode).
Thanks a lot to everyone who took part in the iterative feedback process that led to these! :)
I think they really bring the UI together nicely. And, as an added bonus, they also work better on narrow screens.
Controls polish
Speaking of bringing the UI together nicely, the controls have all received some love.
HiDPI support
Screens bring us to the next topic:
Did you ever notice that on mobile, the map view looks a bit bad, blurry and low res?
You might've thought that it's for performance reasons, but it's actually due to this new and amazing innovation called HiDPI screens that has just been released… almost 15 years ago.
Starting with this release, the Valetudo Map renderer now also takes advantage of this revolutionary display technology.
Do note though that unfortunately, HiDPI support had to be disabled for Safari due to Safari being Safari.
Mobile map font rendering
Apart from HiDPI support, another thing that has been fixed in the map renderer is font rendering on firefox mobile.
Previously, fill and stroke were called in the wrong order, leading to those overlaps.
You can also see that this screenshot was taken before HiDPI support was implemented, because the text is still somewhat blocky.
Animations
The UI should now feel more snappy as all delays caused by animations have been cut in half or sped up 2x depending
on how you want to look at it.
Also, the loading animations and how they were used have been changed so that the content jumps around less.
It still jumps around, but it does so less and that's good enough. 👍
New and changed capabilities
As part of adding support for these new robots, Valetudo has been extended a bit
AutoEmptyDockAutoEmptyIntervalControlCapability
This new core capability allows selecting the interval at which the dock should auto-empty the robot.
Previously, this feature was already available as a quirk on some robots.
CarpetSensorModeControlCapability
The CarpetSensorModeControlCapability has gained a new mode with this release: Detach
This for now is only supported by the X40 and allows completely detaching the mop pads once it encounters a carpet.
OperationModeControlCapability
You might've already spotted the fourth icon further up in the changelog but if not, here it is again:
The new operation mode "Vacuum then mop" does exactly what you'd think it does.
I have no clue why one would want that over doing both at the same time, but it is here now so have fun I guess.
Also, if you have a use case for it, feel free to leave a comment and let me know. I am genuinely curious.
MQTT
This release comes with a breaking change for Home Assistant users.
Due to a schema change, you will have to run at least Home Assistant 2024.02 to use this version of Valetudo.
Given that it is June now, I think I've waited long enough to give everyone ample opportunity to update their setup to that version or later.
More optionally exposable capabilities
As requested by a user, it is now possible to optionally expose the KeyLockCapability via MQTT as a dynamic defense against toddlers and cats.
Furthermore, it is now also possible to expose the ObstacleAvoidanceControlCapability to e.g. turn off obstacle avoidance via MQTT
if the robot is sent to a room where there might be problematic curtains or similar.
MQTT fixes
This release includes an updated MQTT.js library, which should solve some weird and unexplainable reconnect issues in some setups.
Furthermore, a fix has been incorporated that should result in near-instant feedback when toggling stuff via MQTT.
Misc
Thanks to a user living in a large non-square house, we've learned that 3irobotix maps can actually be larger than 800x800px.
We also learned that due to the map assumed to be square, in some places, width and height were swapped, leading to a weirdly sliced non-square map.
This has now been fixed.
Lastly, an issue with timer pre_actions not being applied correctly should have been fixed by the use of
sleep()
.The best way of fixing concurrency issues.
On not burning out
I must say that working this much on improving Valetudo again has been a lot of fun.
I really enjoyed it, it gave me a lot of energy and I think it also produced great results.
What I do not enjoy however is that me gaining energy from maintaining the project is something so unusual, it's worth explicitly mentioning.
This is because most of the time I spend maintaining Valetudo, I spend fending off bullshit/abuse and having weekly internet fights over defending my personal boundaries.
This comes on top of the daily grind consisting of but not being limited to:
That said, I don't think that there is much point in whining about it, as that is just how it is if you run a project like this one.
The only thing you can do is improve your processes and learn how to better deal with it.
There is point though in documenting it and, most importantly, making it visible, which is why I did that just now.
And now that I did it, I think I'm good.
Thanks for reading!
And thanks a lot to the vast majority of the userbase that isn't like that. ❤
The usual
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
Breaking Changes
ef92967
Features
86555ae
7a318cf
9866d94
572e3ce
d87dca8
1937de9
6c3dd7e
d8714dd
138f0d9
97818ac
03ff290
6465975
99e13da
37f386a
a9868f7
8f26ae7
Fixes
4f72632
a7b2cc4
13f7db3
7d9255b
09e2083
33615ec
77be950
6ca4eb9
92b351a
f0101b7
cc0cd41
31519e1
9dab16c
7362514
b3417d2
b1f58ab
648b07e
e7d2bc6
4af21c7
28c91b6
Chores
99cbf90
0a036ef
4076f6a
17dadc7
97296b6
fe6e6cc
7b6f506
This discussion was created from the release Valetudo 2024.06.0.
Beta Was this translation helpful? Give feedback.
All reactions