rand256 / valetudo

Valetudo RE - experimental vacuum software, cloud free
Apache License 2.0
667 stars 73 forks source link

When spotclean map resets and charge point changes. #309

Closed Nobeernogman closed 3 years ago

Nobeernogman commented 3 years ago

Vacuum xiaomi gen2 / s50 Valetudo RE 0.9.8.1 002020 from vacuumz.info

I'm on valetudo RE a few months now. I found 1 dude on the valetudo telegram group with the same problem. But that telegram group is for normal valetudo.. Not RE :-D

Problem begon with 1 version before 0.9.8.1. When starting a zone cleanup, the map resets, comes back, a Chinese voice will play (most of the time) and my charge point on the map will fly away to another place on the map. This issue started 1 week ago. What I did: installing latest RE version Reboot vacuum Unplug / plug the charging base.

See video for better explanation. https://youtu.be/8QifF3LIikA

rand256 commented 3 years ago

I'm a bit in doubt this issue could be connected to valetudo directly since the only thing it does upon starting zoned cleaning is, well, sending a default miio command to start zoned cleaning. There's no magic around it.

But anyway:

Which exactly version of valetudo did you have when you didn't experience this issue? Which base system (firmware version) did that version run on? I guess it wasn't 002020, was it? Could you install some complete voice pack for 002020 firmware in the language you know (or English at least), so you can actually hear which message is played when starting zoned cleaning? I assume it is in Chinese for you just because your currently installed localization simply doesn't include the translated line it wants to play: there were quiet a few new lines added on transition from 1898 to 2008, for example.

Nobeernogman commented 3 years ago

I'm in 2020 for a long time, like months. (came from valetudo 2020 to RE 2020) I also tryd to flash 1898, same problem :(

I don't know exactly what the last working RE version was. What I know is that I have this issues on the current version, and the version before the current version.

Just flashed this file: https://vacuumz.info/download/voice/s5/english.pkg This is the the correct English voice for 2020? Vacuum is speaking English, but still getting the Chinese voice. Before the error kicks in :-(

This is the screenshot of a few minutes ago.. Strange thing is, the bug changes the charging point to the point in my bug video, or to the place of this screenshot. https://i.imgur.com/1QzXMU8.jpg

rand256 commented 3 years ago

This is the the correct English voice for 2020? Vacuum is speaking English, but still getting the Chinese voice.

You definitely need https://vacuumz.info/download/voice/s5/2008/en.pkg.

Nobeernogman commented 3 years ago

This is the the correct English voice for 2020? Vacuum is speaking English, but still getting the Chinese voice.

You definitely need https://vacuumz.info/download/voice/s5/2008/en.pkg.

In the mean time i installed RE 0.9.8 / 2008 with https://vacuumz.info/download/voice/s5/2008/en.pkg as voicepack. Now the Chinese part is changed to English, but i cant understand the sentence because of the noise of the vacuum :-( Sound is already on max volume. Voices like "starting the cleanup" are much louder then the strange bug sentence. Listen at second 31 of this video, a soft voice.. :( https://youtu.be/0-LYGmLRKrg?t=31

rand256 commented 3 years ago

Well, official roborock voice packs are known for poor quality unfortunately. You may try to connect to device via SCP (using i.e. WinSCP in Windows) and download installed voice files from /mnt/data/rockrobo/sounds (they are just .wav files). Then you could run some kind of audio normalizer on them to get their volume corrected, and re-upload them back.

Regarding the issue, I could only tell about my own experience of map resetting. Probably it won't help you, but still.

My gen2's charger dock is placed in a corner, and I noticed that when the device arrives there by itself, it can always leave the dock without any issue afterwards. But when I take the device from the dock for i.e. cleaning its main brush and then manually put it back, in many cases it will reset the map upon leaving the dock. Though it restored it back in a few seconds always in a right place. And never said anything upon map reset AFAIR. The issue in my case was that when it reset the map, it didn't know the route to the specified zone and cancelled requested cleaning. The only "workaround" for it I found was to never place the device on the dock manually - just place it nearby and command it to go to dock itself.

Maybe in your case it does something similar, but also fails to properly position the dock on the reloaded map by some reason. I could only suggest to maybe rebuild the map from scratch and/or to move the dock to some different place. I also remind, that roborock's manual suggests the following constraints for dock position:

Untitled

Though I understand that they are way overstated and I violate them myself.

Nobeernogman commented 3 years ago

I found the voice message after some FBI spec grade audio analyse(and your help :-p) it;s positioning.wav "positioning, please wait" The dock position is always te same, i never moved it. I will fiddle around upcoming days with placing the robot on dock by hand & let him auto-dock by himself. When the problems will stay i will create a full new map, after that full reset the vacuum, after that i'm gonna cry in a corner of my house. Will keep in touch the upcoming week!

pidator commented 3 years ago

Perhaps the dock position in your saved map is corrupt!? And the robot tries to "restore" the position. Have you already tried with a fresh clean map? Afaik the charge position will get reload while reloading a map, too.

Nobeernogman commented 3 years ago

I removed all the saved maps, rebooted the vacuum. After building a fresh map, the error dit not happend again. Nice.