Tuesday, May 12, 2020

Building a Roomba virtual wall with an Arduino nano


I recently bought a Roomba, and love it. I had the need for a couple of virtual wall sensors, and they were approximately $40-45 each, and I begin to think that it was a rip off…

Anyhow, after searching the web, I saw the Roomba vacuums had an open interface for integrations and  also that the virtual wall basically is an IR emitter that generates a 1ms ON, 1ms OFF signal continuously at 38 KHz.

So, that was the breakthrough….

First of all, here is the finished project :









Here is a quick list of parts that I bought for my project

·      Arduino nano (bought 3 for $13.99)

·      IR emitter (bought 10 for $5.78)

·      Case (bought 5 for $10.99)


So basically, I was able to build 3 virtual walls for ~ $30 (not counting the effort and labor, lol)

I already had the following parts (that you will also need in order to complete the project)
·      Resistors
·      Connecting wires
·      Soldering iron
·      Hot glue gun
·      Drill

Instructions are pretty simple, and I used this github project as a reference as well.

Basically, you connect the IR LED with it's positive leg connected via a current-limiting resistor(220 Ohm or similar) to the +5v, and it's negative leg to Pin3 aka D3 (hardcoded via the IRemote.h library)

I did make the following variations for my project though :

·      In some of the virtual walls, I made 2 perpendicular LEDs by connecting them in parallel
·      I tried powering with the 9v battery, and it works fine for upto 2-3 days before draining the battery out. So, if you must use a battery, use a portable USB charger which does not auto shutoff due to low current usage.

No comments:

Post a Comment