After a long time of hesitation I recently bought a robot vacuum cleaner and I have to say: I’m impressed!
If you frequently read posts on this blog you will know that I usually write about my software or hardware projects. But from time to time, when I am really convinced of a product I also write a review about it and share my experience with my dear readers. To spoil the big surprise: the Xiaomi Vacuum Robot is such a product. I am aware that this review is not the normal “Compare Xiaomi product X with iRobot product Y”. I don’t present test results which one is louder, which one cleans better or faster. It is just a write up of my experience with this cleaning aid.
Unboxing & Setup
I was quite excited when I finally received the package with the Xiaomi Vacuum Robot from China (kudos to my dear friend Fred). After unboxing I had a robot, a charging station, a power cable (which is not suitable for EU plugs) and a little cleaning tool for the brushes of the robot. First thing was to find a suitable cable for the charing station, which was not a problem at all, since the plug on the side of the dock is rather standard for radios and similar appliances. I’m quite sure that if the enclosed cable is not suitable in your country you have another one around which can help you out. If you are unsure better also order a separate cable (e.g. from Banggood).
Most of the enclosed documents were in Chinese which didn’t really bother me. I put the robot close to the dock so that the metal contacts on its back would touch the metal contacts of the dock. Then I started watching this video. Most important information is to press the power button and the home button for a few seconds until you hear a female Chinese voice and the robot will go into setup mode.
All in all the setup was quite easy and to my positive surprise the app has been translated to English. It is quite easy and intuitive to use.
Cleaning
After selecting the Vacuum Cleaner from all your configured Xiaomi Mi devices you can press one button and the robot starts cleaning. While the robot is cleaning you can follow its progress on a map in the app. What at first looks like a toy feature is actually quite helpful and reassuring. The mapping is very accurate and you cannot only see walls and furniture on the map but also track the places the robot has already visited. This allows you to estimate when it will be finished or where you should move a chair out of the way next time.
Spot Cleaning and Remote Control
The Xiaomi Vacuum Robot has some additional useful features. Let’s assume your kid dropped some cereals in the kitchen and you want the robot the clean the dirt in this specific area. Then you can use the remote control to drive the robot there and then start spot cleaning. In this mode the robot will clean an area around the place where it started of approximately 4 square meters and then stop. With just one button in the app (“Dock”) you can then send it back for charging or direct it to another dirty spot. If you drove it with the remote control to the cleaning spot it will find back to the dock very quickly. I guess you could also just carry the robot to the location where it should do spot cleaning. However, then it will not be able to find back to the dock alone.
In this context it is also worth mentioning that the clever control software builds up the map every time from scratch. This is helpful when you live in a two-story apartment. Then you could in theory clean one floor first and then carry it with the dock to the other floor. Since it will start mapping from scratch it will not be confused by getting moved. Having said that it doesn’t work for spot cleaning where the robot takes apparently takes the map from the last full cycle and uses it to return to the dock. After the first full cleaning run I had moved the dock by a few meters and directed it to a remote place in the apartment for spot cleaning. When it was finished I clicked the “Dock” button and it had serious problems to find home.
Another nice feature (which I haven’t used yet) is the timer. You can program the robot so that it starts cleaning at a given day and time. This means you can leave the house for work and at the specified time it will automatically start cleaning. In the evening when you return it will look like the fairy had been on visit and cleaned the whole floor for you.
There is also a maintenance page where you see indications when to replace the filter or clean the sensors. Time will show how well that works, but I think it is a good thing to have an overview.
Carpets & Curtains
After this first week of using the robot I am very impressed how well the robot deals with obstacles. If it gets stuck it backs of and tries to get to its goal by taking a detour! Here are the two carpets I tested the robot with.
This carpet is quite a challenge for the robot. Not because it is relatively high but because it moves and folds up. Still I think the Xiaomi robot handled it quite well.
This carpet is no problem for the little cleaner. It climbs it, drives and cleans along the borders and descends from it without any problems.
Hacking
There are some attempts to hack the robot but they have not been successful as far as I can tell. The robot runs some kind of Android which would be a nice platform for playing around. Once you get access over the ADB interface you could start hacking it. Read more here. There is also a nice video which shows you the insides of the robot.
UPDATE: There are already some projects which allow you to interface with the robot. One is a nice python script which lets you read some variables and control basic functions. In order to talk to the robot you need to acquire a security token which will only be exchanged when pairing with a phone. Once you have done that you can control it with commands like this:
$ mirobo start Starting cleaning: 0
This will start the robot. If you want it to return you can execute
$ mirobo home Requesting return to home: 0
Current state is that you can:
- do status reporting
- start cleaning
- tell the robot to return home
- set the fanspeed
- get the state of consumables
- schedule information
- get the cleaning history
Read more here:
https://github.com/rytilahti/python-mirobo
Technical Highlights
Unlike first generation robots the Xiaomi Vacuum Robot sports a laser distance sensor (LDS) which according to specs measures up to a distance of 6 meters. Should this robot ever brake this sensor will be scavenged with joy from the robot’s corpse;-). The LDS is used to create a very accurate map which then in turn is used for planning and navigation. Bumper and ultrasonic sensors in front of the cleaner can detect obstacles that the LDS might have missed. And another sensor on the right side is used to follow walls without bumping into them. All the sensor data is used for Simultaneous Localization and Mapping (SLAM). I found it very impressive how well this works! Following the robot on the app while it builds up the map is just fun!
Summary
After using it for about a week and several full cleaning runs and some spot cleanings I can say that this is a really good product. My initial fears that everything would be in Chinese were unjustified, the app works very well in English and you can install even a English language pack for the robot’s voice. The only issue with localization was the Chinese power cable which I could easily replace. The robot cleans quickly and thoroughly and gets to hidden places like under the bed where often a lot of dust accumulates. The robot also passed the wife acceptance test with a very high WAF (wife acceptance factor;-)). The robot has been baptized to the name James Carson Eichhorn and has become a valuable member of the family! You get a lot of impressing engineering for a very good price, it costs less than half of the comparable product in the iRobot Roomba product line and performs even better (according to some online tests).
Where to buy
If plan to order the robot and you like this blog (or this post in particular) please consider buying it by using the link below from Banggood. I get a small reward for recommending this item. Banggood is my favorite Chinese shopping site. Their prices are more than competitive and in many dozens of orders from them I had never any issues with the shipment.
Buy Xiaomi Vacuum Robot Now!
Banggood also has affordable spare parts:
Looks very, very similar to my Neato..
True, I heard that they might be the same. Does the software also look the same (telling from my screenshots)?
What about carpets ? And climbing up to them ? Regards
Hi Juan. Thank you, very good point which I should have mentioned. I will extend the post about this topic, but here is the short version. The robot mastered both carpets I have very well. One is quite flat and smooth, but the other one is very uneven and high and still it didn’t get stuck. The third carpet I moved away because it has tassels and I was afraid they would get twisted in the mechanic. The robot also climbed a thick power cable I have laying below my bed the first time I let it clean. But ever since I am moving the cables away, just to be sure…
Spare parts like brushes and accu. Available or new vacuum cleaner needed?
Thanks for this excellent review.
Nice work. Really appreciated
Hey. I’m very familiar with the Xiaomi brand. I personally have Xiaomi Mi Robot. Looks like the one that you have on your blog. He has excellent characteristics: http://comparisono.com/compare-robot-vacuums/mi-robot
I bought on Amazon. I use almost 3 months. He’s better than their phones. It was difficult to understand how to use it. But I found all sorts of videos.