Overall, I am incredibly impressed with this robot's abillity to navigate in my house. I have it run every night at 2:30 in the morning, and it's quiet enough that it doesn't disturb anyone, and then I empty it in the morning. The fact that it can run every night makes up for the fact that it is not a supremely powerful vacuum. It is not going to replace a Dyson in the suction department.Its ability to navigate and get around obstacles and make its way back to the base is really, really impressive. Its movement path tends to be very effective and efficient, and it vacuums the entire downstairs of my house in just about an hour.The robot makes its own maps of the house, which I can then divide into areas and annotate with room names, and it will update these maps as objects move around. It handles change very impressively.The maintenance stuff is pretty simple. It seems to have a pretty well-designed brush and roller system so that even if it did get caught up with animal hair or string or something, it hasn't included tool for cutting that stuff out, and the beater bar is easily accessible and removable. Also, the robot has very specific error messages that are very accurate, so it will say that it's thinks something is caught up in a brush, or that it can't move because of wheel is off the ground, or some sensor is dirty. It's not at all like those messages that seem to be everywhere now in technology that just announce that something went wrong, with no further information.However, if you're looking at this for its mopping function, know these things ahead of time. One, the mop function is no more sophisticated than the robot dragging what is essentially a wet washcloth behind it while it goes over a given surface. And that you must manually add and remove the mop cartridge for the given area you want to mop. That is, it cannot turn mopping on and off, and in fact is not aware at all that it even has the mop attached. The mop cartridge itself is a water tank that has something like a washcloth velcroed to the bottom. It dribbles water from the tank onto the washcloth, but in reality, this washcloth is barely damp in the locations where the water is supposed to be coming out, and you can see that when the robot is supposedly mopping, it's not even wet on the floor behind it. This is with the tank set to the high water flow setting. There is also no action involved with the mop, like it doing any scrubbing, and you are forbidden from putting any kind of cleaning product into the tank, so it really is just plain water being dragged on a maybe damp washcloth. At best, this will pick up dust, and some dirt, but not much else. Also, while the weaker vacuuming is made up for by the fact that I can run it automatically every night, since the mop is a manual intervention operation, I can't use frequent repetition to make up for the crummy mopping. As it is now, when I want to mop, I spray pretreatment on to anything I see on the floor that looks like it's not going to budge, then I have to make the robot go into the kitchen, then I wet the washcloth part of the water tank in the sink, attach the water tank, tell the robot to clean that one room, and then catch the robot before it goes back to the base which is on carpet, so I can remove the water tank, not like it actually makes the carpet wet at all. The most evidence I have usually that the floor was mopped is the fact that the washcloth on the water tank looks somewhat dirty.