A few months ago, I decided on Digi’s XBee modules for my wireless projects. Today I’m showing off the first completed project — a wireless Roomba adapter. This project represents a number of firsts for me.
- First semi-practical use of XBee
- First time designing a PCB, using Eagle
- First custom PCB order, from BatchPCB
The board is pretty simple. It has a voltage regulator and a very simple voltage divider to connect between the Roomba’s 5V and the XBee’s 3.3V serial interface. [edit: See my post
on the problem with this design] The XBee is more than just a radio, it has a couple of analog/digital converters, and a couple of general purpose I/O pins. I connected the baud select/wake pin on the Roomba to one of the XBee’s outputs, so I can wake up the Roomba remotely.
There’s no microcontroller on the board. The idea is that all processing will be done remotely, and controller via the Roomba’s serial interface
over the XBee link.
The software isn’t far enough along to share, but in the meantime, RoombaComm
works if you configure the XBees appropriately.