It is currently keyboard controlled, but I am considering adding control from a web page that will include the streaming video feed. I may also add voice control. Possibly also control from an Android app.

I might add an Android tablet for telepresence, and possibly an Asus Xtion Live Pro to give it navigation and mapping capability.

The arm is quite heavy, mainly due to its batteries. The Roomba seems fine; I think it could take a lot more weight. They put a lot more stuff than this on Willow Garage TurtleBots (http://turtlebot.com/), which is an expensive kit to do roughly the same as this. If I can run ROS on the RPi and drive an Xtion, then this will be equivalent to a TurtleBot. I will probably need multiple Raspberry Pis to handle the load.

I currently have keyboard command like, forward, spin left, stop, etc. The Roomba detects bumping into things, going over cliffs etc., so its easy to program simple autonomous behaviours like the Roomba uses when cleaning a room. I have done a very simple version of this.

The Roomba does not map a room, so does not know about locations other than the dock and virtual; walls. However, if you use the ROS turtlebot code (http://turtlebot.com/) and a Kinect or Xtion, you can map rooms and then it becomes possible, in theory, to program it to do things like "go to fridge and fetch me a beer".