github Hypfer/Valetudo 2025.03.0
Valetudo 2025.03.0

5 days ago
valetudo

2025.03.0

Important fixes for the L10s Ultra & X40 + general maintenance

Firmware Changes

For this release cycle, I've spent the majority of the time with firmware-related topics (+ lots of undesirable people stuff)

Important update for X40 Ultra & L10s Ultra users

We've identified two different issues breaking obstacle avoidance caused by mismatching bootloaders.
If you've rooted your robot after 2025-03-02, you can ignore this.

On the X40 Ultra (NOT the Master), there was an issue preventing the line lasers from working, greatly reducing its obstacle avoidance performance. You can usually verify that it is the case by watching the robot through a phone camera in a dark room while cleaning.
If you don't see it projecting its IR line lasers in front of it, then you're likely affected (or your phone doesn't show IR).

For the L10s Ultra, it's a different issue. There, the line lasers will always work, however on newer robots, the camera does not.
Thus, you can tell by you never having seen any obstacles in the Valetudo map view and/or the camerademo command failing.

To fix these issues, the easiest way is to follow the instructions in the post in our dust_announce channel: https://t.me/dust_announce/71

If for whatever reason you don't have access to Telegram or the instructions there seem daunting and less step-by-step than usual, you can also resolve this by just following the rooting instructions again.

Since it's fixed in newly built rooting packages, re-rooting will also fix it on already rooted robots.
If you decide to do that, in this specific case, you may re-use your config value.

Dreame Quality of Life

Speaking of config values, one thing I learned through the daily support is that people like to forget theirs, give their PCB to someone else and then be screwed once they want to build an updated firmware.
Because of that, the config value used is now being stored in human-readable form in the file /dust_configvalue in the created firmware.

Hence, you now just need ssh access.
If you also don't have that anymore because you've lost the keypair, I have good news for you.

Newly generated dustbuilder firmwares where you let the dustbuilder generate your keypair now also come with the public key as part of the keys zip archive.

If you're building a new firmware, that new file is also what you need to provide to the dustbuilder for the Your SSH-Public key: option.
It was of course always possible to derive the public key from the private key, however, not everyone knew that and it was rather clunky so now it's a lot easier.

If your build is older, you can find the same file on the robot: /authorized_keys

New Firmware update for the L10s Pro Ultra Heat

Firmware 1571 for the L10s Pro Ultra Heat is now available on the dustbuilder.

It works. I can't tell much difference, but maybe you can?
Feel free to let me know about your experience with it.

X40 Ultra Wi-Fi issues on newer firmwares

Unfortunately, it is still unknown what is going on there. Some people seem to be affected until they aren't anymore. (????)

I've looked at a user-provided filesystem diff and could not find anything.
I've stared at the firmware itself for quite a while.
I've tried downgrading the WiFi driver.

No clue.

If your X40 Ultra refuses to stay connected to WiFi after upgrading the firmware to 1652, try factory resetting, reinstalling Valetudo and joining it to your WiFi network again. That does seem to help in many cases; though not all.

You can also try a different WiFi AP maybe?

See also:
https://xkcd.com/2259/

Valetudo Changes

There's not all that much to talk about code-wise for this release, so I'll keep it short.

Bugfixes

  1. "Vacuum then Mop" has been fixed for the X/L40 and Mova P10 Pro ultra. It now actually works and cleans all segments selected.
    Unfortunately, it wasn't fixable on the L10s Pro Ultra Heat so it had to be removed for that one
  2. Model auto-detection for the Mova P10 Pro Ultra and the US Mova S20 Ultra has been fixed
  3. Map UI/UX issues breaking the map zoom/pan due to stuck touch inputs should've been fixed - thanks @xuefer
  4. Links in the changelog view of the Updater should now be much easier to read when using the dark theme

Features and Refactorings

  1. Font sizes for segments in the map are now dynamically calculated instead of using a lookup table, eliminating jumpiness - thanks @vivia
  2. The UI dock controls now also display the dock state as text similar to the robot state
  3. The deprecated MUI Grid component used basically everywhere in the UI has been migrated to the Grid2 component

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

Features

  • ui: Display dock state as text 4e5dd10

Fixes

  • ui: handle all changedTouches 92b2e6f
  • ui: Fix timers view broken by the grid2 migration b7de2f3
  • vendor.dreame: Fix vacuum then mop e42adcb
  • ui: Calculate map label sizes using formulas 02286dc
  • vendor.dreame: Fix model detection for US Mova S20 0529e22
  • Gracefully handle iw process not spawning 0086080
  • vendor.dreame: Fix mova p10pu device detection 5b66c35
  • ui: Fix updater changelog link contrast when using dark mode f051d0f

Refactoring

  • ui: Migrate from deprecated Grid to Grid2 0fcb809

Don't miss a new Valetudo release

NewReleases is sending notifications on new releases.