While cruising through my morning news, I’ve found…

Engadget reports on PyMusique, a program that allows you to download music from iTunes without the DRM being attached. Turns out iTunes itself is what creates the DRM when you buy from the iTunes Music Store. This program buys from the iTunes music store (you still have to pay) but doesn’t add the DRM. I’m going to have to check this out.

Raymond Chen talks about some interesting trivia regarding Windows XP service pack build numbers. If your Windows XP version is Version 5.1 (Build 2600.xpsp2.040919-1003 : Service Pack 1), are you running service pack 2 (as indicated by “xpsp2”) or service pack 1? (Turns out it’s service pack 1; the why is the interesting part.)

Google’s opened code.google.com, a site chock-full of Google-related code and API information. Wanna develop against Google? That seems to be the place. Seems to be all C++ and Python at the moment, but the plan is that more will be released later. I may have to check this out.

I went home and, after giving Roomba a thorough cleaning, did some testing.

So it was acting up around the virtual wall units. I had some placed around the bedroom so the Roomba wouldn’t go under the bed and destroy the crap we have down there, but what ended up happening was that Roomba would spin in circles and clean the same four square feet over and over. I couldn’t for the life of me figure out what was up.

After reading some of the FAQs on the iRobot site, I started gathering that the virtual walls not only put out a beam forward (as the virtual wall) but also a beam around the wall unit itself, presumably so the Roomba doesn’t run into the unit and knock it over or change its position.

On the bottom of the virtual wall unit is a diagram that sort of illustrates this:

Original virtual wall
diagram

You can see in the diagram a small dotted halo surrounding the virtual wall unit as it projects the beam. I had interpreted this halo as a circle to highlight the virtual wall unit. Not the case - it actually outlines the wall unit’s beam pattern.

As it turns out, this diagram is correct, just not to any sort of scale. The correct diagram would look more like this:

More accurate virtual wall
diagram

Notice the halo extends to the far reaches of space. This is more accurate. In fact, if I cover the little broadcast point on the top of the virtual wall unit (to stop the halo), Roomba behaves as normal again.

That’s why you see the virtual wall in the diagram parked behind a physical wall and broadcasting outward - so Roomba doesn’t pick up on the protective halo of the virtual wall unit.

Why was I afflicted? I had changed the way the virtual walls in the room were laid out from previous times Roomba had run. Before I had blocked the virtual walls with a pillow so Roomba wouldn’t hit them, which, at the same time, meant I unknowingly had blocked the virtual wall’s protective halo so I never saw the behavior. This time I had not blocked the virtual walls with a pillow, and Roomba went nuts. Too much infrared in a small space.

So I’m back to status quo on that front. Virtual wall placement now becomes a more strategic task, but I should be okay.

I’ve had my Roomba for about a month now and I love it. Thing is, it’s starting to act up a bit I’m not sure if it’s just dirty or if it’s actually malfunctioning.

Roomba has these “virtual wall” units that shoot out a beam of infrared light and when Roomba detects that light, it won’t cross through it. The virtual wall transmitter seems to shoot the beam a little wide, like plus or minus 15 degrees from center. Starting last night, Roomba seems to be picking up on this IR more on the order of plus or minus 45 degrees from center, which is really hosing things as far as its ability to clean. Use a virtual wall and Roomba goes nuts.

I’m hoping it’s just in need of a cleaning. I downloaded some troubleshooting tips for cleaning the thing and I’ll try that out tonight. If it doesn’t work, I guess I’ll be contacting customer service.