In this instructable I will describe how to interface a palm pilot with the iRobot create. I've used a Palm IIIxe in my project, but any PDA that runs the Palm OS and has a serial port should work. I've also designed this project to work with the iRobot Create, but as long as the interface commands are the same this should also work with the Roomba.

What do I mean by interface?

At the end of this instructable you should be able to monitor your iRobot Create with your Palm Pilot; this includes checking all of it's external sensors and viewing the battery voltage. You will be able to run the demo programs from the Palm Pilot where there will also be descriptions of the demo's. And last but not least you will be able to create scripts for the iRobot Create to follow without the need for a computer.

I've included all of my source code, and trough this instructable I will describe it piece-by-piece. My goal is that you will be able to take my program and modify it to suite your own needs.

Good luck!

Step 1: Gather the Materials

To complete this project you will need:

  • An iRobot Create (or possibly a Roomba)
  • The Create Robot Serial Cable (it comes with the iRobot Create).
  • A Palm Pilot (you can get these off of eBay or in yard sales for cheep). I'm using a Palm IIIxe.
  • A dock for the Palm Pilot.
  • A Null Modem and a 9-pin gender changer (male - male). To make your own (I'll show you how) you will need:
  • 2 9-pin D-SUB connectors (male).
  • 2 9-pin enclosures for the connectors.
  • Some cable to connect the 2 9-pin connectors together (the cable must have at least 3 wires).
  • The tools and skills required to solder.

I have included the program so you can install it onto your Palm Pilot without any hassle. If you want to compile it yourself you will need:
If you plan on developing for the palm or the iRobot, there is a lot of really good documentation you should look at. The website where you can download the Palm OS SDK also has some really good documentation. If you want to work with the create iRobot puts out really good documentation for that too.

Disclaimer: I'm using Linux to do everything, so these steps (specifically the ones dealing with compiling the source code and installing the program on the Palm Pilot) might change slightly depending on your OS. This website contains tools for all 3 major operating systems.
The Palm Pilot... is piloting the iRobot
 Excellent work!!! I will definitely be making this one!!!
hi - will the serial connection you have work with a standard Roomba? I thought PDA's did not have USB host functionality anyway, unless this palm was pre-USB. I have a pocketPC (HTC TyTN II) I could use for this, do you think this would work? cheers
The serial connection should be the same for a standard Roomba, tough you might want to double-check to make sure the commands are the same. The PDA I used didn't have USB functionality, but in this case neither does the Roomba. I was using the serial connection on the PDA. This might work with your pocketPC, if it has a serial connection. But I don't know if my code would work as the OS is different.
Thanks for the reply, Hungry_Myst. I didn't state my case properly; from what I undestand of PocketPCs (and most modern PDAs with USB connection, but not all) they do not contain 'USB Host' functionality, which is needed to host a serial connection to the Roomba. I guess your Palm does this, otherwise you would have needed additional circuitry, I guess a MAX232 circuit(?), to interface to the Roomba. I dont know if the community here know how to interface a PocketPC to the Roomba? I could get a Palm or other PDA with this serial functionality, but as my phone is due for retirement soon,thought it would be a good use of it. TyTN II's have a nice 400Mhz CPU, although not the IO of a proper robotics prototying board. Still, the screen, keyboard, on-board power (which I guess could be charged from the Roomba via a 5V charging circuit) make it a good way to give the Roomba some brains.
never tried it yet but it looks good comment me please
that is totally cool! All you need now is to add some sensors and make it autonomous. I have an older palm, I will have to try the sdk, looks pretty cool.
Wow. What an amazing project... Thats a cool program that you made O_o
Heh, thank you. I spent a lot of time working on it.

About This Instructable




More by Hungry_Myst:The Raven, high-pitched torture Control your iRobot Create with a Palm Pilot [Idea] Air Mouse 
Add instructable to: