rand256 / valetudo

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

Gen 1 - The vacuum is docked incorrectly on the map after finishing cleaning #386

Closed ghost closed 2 years ago

ghost commented 3 years ago

After doing a full cleaning session the vacuum goes back to park in to the docking station. Except Valetudo doesn't map the 180 degree rotation the vacuum makes to park itself. So the front of the vacuum is now parked against the dock according to the map in Valetudo. Except in realtime the back/butt or however you want to call it of the vacuum is parked against the dock.

Since the rotation is now wrong this gives all sorts of problem when doing a second zoned cleanup. In my case it drives straight into the dock again, stops the zoned cleaning, and my map is gone.

My current solution is to rotate the vacuum 180 degrees physically before starting a zoned cleanup.

MiIO version: miio-client 3.3.9 Firmware version: 004018 Valetudo: v0.10.3

vacuum

pidator commented 3 years ago

I think this is more a Roborock firmware issue than an Valetudo one: See comment https://github.com/rand256/valetudo/issues/183#issuecomment-604865995 for the right "proper" dock position. I assume your problems are gone if you're able to rearrange your dock position.

rand256 commented 3 years ago

Valetudo simply can not affect how the device performs its builtin commands such as docking. It would be great if we could make some low-level changes in the firmware, but we just can't.

ghost commented 3 years ago

Did some thorough testing this week. I actually moved the dock to another place according to the specs in the image in: https://github.com/rand256/valetudo/issues/183#issuecomment-604865995. Had exactly the same issue as in my OP. I then reflashed the vacuum with Hypfer/Valetudo 2021.01.1 using https://github.com/LazyT/rrcc, tested it again and 0 issues. I then moved the dock back to the crammed spot that you can see in my OP, also 0 issues using Hypfer/Valetudo 2021.01.1. I didn't flash any new miio firmware version. I have no explanation what is going on.

rand256 commented 3 years ago

I have also no explanation unfortunately.

Parking on the charging dock is a direct firmware operation and it even has no parameters at all. The only thing valetudo does in this case is saying to device: "Hey, firmware, do perform docking!", and then firmware tries to do that the way it decides itself. Valetudo has no options to control how exactly it will be done.

ghost commented 3 years ago

I have also no explanation unfortunately.

Parking on the charging dock is a direct firmware operation and it even has no parameters at all. The only thing valetudo does in this case is saying to device: "Hey, firmware, do perform docking!", and then firmware tries to do that the way it decides itself. Valetudo has no options to control how exactly it will be done.

I immediately believe that this behaviour is implemented in the lowest part of the firmware and Valetudo should have nothing to do with it. Do you want me to do some extra tests or just leave my example as a n-of-1 case? If i have some spare time this weekend i can make two complete firmware packages that are completely the same except for the Valetudo versions and do 4 runs again (open spot and crammed spot with the 2 different versions). A complete run takes almost an hour but after all that testing i will have the cleanest living room

rand256 commented 3 years ago

Honestly I guess these tests won't be able to provide any useful data just because whatever the results will be there's simply nothing to change in valetudo when issuing return-to-dock command.

harsha311 commented 3 years ago

Hello,

I too have the same issue with gen1. Using latest RE version.

Screenshot_2021-03-20-21-51-08-129_com android chrome~2