Igor

in #blogyesterday

I recently bought a robovac from a second-hand marketplace for 35€, sold by a Russian couple. When I got it home and put it on its dock, we instantly heard a horrible fanfare followed by a male voice speaking Russian. We didn’t understand a thing, but I guess it meant the battery was too low for it to start vacuuming, because it repeated the same words each time I pushed the power button while its light pulsated red. We got quite a laugh when we first heard it speak.

The next day I set it loose by pushing the power button again. It happily blurted out something in Russian and started vacuuming the flat.

Veera said that since it’s a Russian robot, we needed to give it a Russian name. I suggested Nikolai and Rasputin, but she declined and said Igor would be better because it’s short and starts with I, like the Finnish word imuri — vacuum cleaner.

So Igor stuck.

When I sent the sellers a note saying that the little robot worked well, had settled into his new home, and had even been accepted by our four dogs as a new member of the pack, I also mentioned that my wife had named him “Igor”. They replied that they had also used a name for him: theirs was “Fedor”.

Since then, he’s been vacuuming our flat twice a day. He has also nearly eaten one of our dogs’ tails, repeatedly tried to solve the geometry of our kitchen chairs, and developed some very strange ideas about what constitutes the shortest route back to his charging dock.

Which, naturally, means I now want to hack him.

Igor is actually a first-generation Xiaomi Mi Robot Vacuum — part of Xiaomi’s Mijia smart-home line — built for Xiaomi by Roborock. He has lidar, ultrasonic sensing, wheel encoders, cliff sensors, Wi-Fi, and a Linux-based control system.

My first plan is to root him and install Valetudo, so he can run entirely locally without Xiaomi’s cloud.

This generation has one irritating limitation: its navigation system rebuilds the apartment map on every cleaning run instead of retaining a persistent one. So twice a day, Igor rediscovers the same rooms, chairs, walls, and questionable passages as if he has just moved in again.

I find this mildly unacceptable.

So eventually I want to dig into the Roborock navigation stack and see whether I can make the maps persistent. And after that, perhaps give Igor a camera and some object recognition, so he can learn that dogs, tails, bowls and toys are not things to vacuum.

Whether Igor eventually becomes a better vacuum cleaner or merely a more interesting robot remains to be seen.

Sort:  

Maybe you can hack it and change it languages to finnish? Unless Russian is more fun :p

Sounds like its a good little fellow! Event though I understand not retaining the map thingy is annoying xD

I will eventually see what I can do I guess. It can very well be that we get accustomed to the current voice before I get there though. I hear there are voice packs available for this particular droid unit.