So the first step of my project is to make sure I can use my android phone to control my robot. Since the last post I have decided to scrap the idea of using a Roomba (my Roomba was dropped and damaged). So my platform of choice for the immediate future will be my E-Revo VXL by Traxxas.
Photo courtesy of Traxxas
In order to get the hardware signals out of my phone and to the ESC/servos of my car I will be using a IOIO.
Photo courtesy of Sparkfun Electronics
And in the spirit of not re-inventing the wheel I will be trying to use the source code from the Cellbots team. Don't you love opensource software? They currently don't have any official support for the IOIO, but out of the box their android code does support a browser-based remote control tool and sending images from the camera back to the controlling client.
A cursory glance at their codebase (I wish they were using Github because I love forking and pull requests) looks like they are making some assumptions about using Bluetooth for connecting to the robot, but I should be able to hack together a control class for my IOIO and at least get to the point where I can send some commands from my laptop/browser to the phone and passed onto my IOIO. From that point it is just a matter of generating the PWM signals that my RC servos/ESC are expecting.
Tonight I got as far as getting the cellbots app on my phone and streamed images back to my laptop and sent some controls back and forth. The IOIO just arrived in the mail this afternoon so I haven't had a chance to hook that up yet.