The Roomba is, at its most basic, a robotic vacuum cleaner. Designed by the Cambridge, MA-based iRobot (Lucy-S, who has a contact there, says this is definitely a deliberate Asimov reference), the Roomba is available at retailers around the U.S. for under $200. It is billed as able to handle a room at a time, but most importantly, to require no human intervention other than to start it and then empty/recharge it when it has finished. Sensors around the disc-shaped bot handle navigation and obstacle avoidance. It comes with one 'Virtual Wall' - essentially a doorstop-shaped device which (AFAICT) emits an IR beam. This is used to block off open doorways. If the bot encounters the beam, it treats it (algorithmically) like a wall, hence the name.

Some friends of mine just presented me with one of these things as a deliberately silly 'housewarming' present, so I felt compelled to write up my first couple experiences with the Roomba for my E2 brethren.

The machine is, as I've mentioned, a disc - it is almost exactly the size of a competition Frisbee (around 1 foot in diameter) and is perhaps 3.5-4 inches tall. There is a handle on top (which flips out for use). The controls consist of a power switch on the side next to the AC power connector and three buttons on top - S,M,L - which tell Roomba what 'size' room it will be cleaning.

The three of us (myself and the two gift presenters) were excited to see the thing in action, and were mildly disappointed that upon unpacking it required a 12-hour initial battery charge, but we can't consider that to be a strike against it. On the contrary, it appears to have a fairly high-cap rechargable battery pack (user-replaceable) which is a good thing.

There is a refuse bin which slides out of one side, which is to be emptied after each use (or in the middle of a large room, if Roomba complains that the bin is full). The bot moves on several knobbly wheels on its underbody; it had no trouble with carpet, slick flooring or (non-fringed) area rugs, moving over all with ease. The 'front' 165 degrees or so of arc are covered by a multiple-actuator 'bumper' which allows Roomba to not only determine when it has hit something, but roughly in what direction the object is. Embedded in the bumper are small lenses which (I presume) are for the Virtual Wall.

The underside is fairly busy - in addition to the primary rotating brush, there is an 'edger' - two toothbrush-like things on opposite ends of a rubber stick, which rotates so that each travels just beyond the edge of the bot's hull. The drive wheels are here as well.


Roomba performs quite well on smooth flooring (wood, vinyl, etc), picking up nearly all refuse it encounters. The vacuum is not powerful enough to 'suck in' dust from outside the bot's footprint, but the bot is diligent enough that this shouldn't be a problem. The algorithm that it uses to determine where it should go is said to be adapted from U.S. military mine-clearing robots; while I don't know if this is true, I can say that it's pretty thorough. While I can grasp the general thrust of it from watching it in action a couple of times, I still don't know what it's doing in constricted areas - all I know is that it does an excellent job of covering them entirely. In fact, it is adept enough at navigating that I watched it trundle underneath a sofa which had boxes stacked in front of perhaps two-thirds of its length, and promptly turn behind them and out of sight. With a few minutes of whirring and clicking, it emerged from behind the boxes and deftly turned 90 degrees to come out from underneath the sofa.

As a vacuum cleaner, it is fair. On wood floors, it did a fine job, to the point where I would consider a Roomba-ing perhaps 80-85% of a human vac job; most of the difference would come from a human's ability to lift the vacuum so as to clear out obscured spaces and use a hose attachment to traverse underneath low-bottomed coffee tables and the like. Roomba's packaging states that it is intended for use 'in between periodic deep vacuuming' and as such it does an excellent job. On carpeting, it did not do nearly as well; however, in my case this meant also being in an extremely cluttered room. Despite this, Roomba only got stuck once, and that was because it had managed to ingest a shoelace end into a rotating part. To its credit, it stopped immediately, made a plaintive 'help!' tone, and shut down, waiting. The carpeted area contained a few heavier bits of refuse - namely, paper pellets that I'd placed there in sadistic expectation. Roomba picked up most of them, but was unable to grab those that had rolled near the wall - the edger is fine for dust bunnies, but ineffective at grabbing stuff with any heft to it.

That's okay, though. This thing is damn-all entertaining. It has sensors on it so that if a cat (or anyone else) tries to jump on top to grab a ride, it makes a sulky noise and stops (I witnessed this, my cat is a weighty beast). I placed a Furby atop the Roomba at start just for a laugh; in the non-sofa room, the Furby remained in place the entire run.

The only quibble I have is that it seems to want a full 12 hour charge after every use, which limits its utility. On the other hand, I have put it in the living room, punched 'go' and left the house for a few hours to come home and find the living room floor clean and Roomba patiently waiting in a corner - and as such, it really does what it promise.

Update in response to GrouchyOldMan below:

Yup, it really does get pet hair (I have two cats and two ferrets). It has a rotating brush underneath, not just a vac, so static-clinging stuff isn't a problem. I have to go check out the animation - from your description, that's *exactly* what it does! I'm impressed. :-) The only gotcha, as far as I've seen, is with string-like things, which include:

  • phone cords
  • rug fringes -BAD
  • shoelaces
  • string
  • CAT-5 cable
More constrained, coarser stuff like phone/CAT-5 will simply get snagged under the Roomba and pulled around, which might result in things getting pulled off tables, and also will probably confuse the bot as to where it is when it gets 'turned' by something other than its own little botbrain. Finer stuff like shoelaces and rug fringes can easily get 'reeled' up into the rotating parts beneath. iRobot suggests tucking rug fringes underneath the carpet before starting the Roomba; and, really, what're shoelaces and CAT-5 doing on the floor you're vacuuming anyway? ;-)