Tabletop Telepresence Robot

Two weeks ago I saw the Sparkfun new product post and instantly knew their new product would make a perfect telepresence robot. Now all of my parts arrived and I finally got it all put together! It’s basically a mashup of an Arduino, Adafruit motorshield, Pololu Wixel, iPhone with Facetime, and, of course, the Sparkfun Magician robot chassis.

Video and more pictures after the break!

I’m using an iPhone with Facetime to provide the onboard video feed from the robot. I run the terminal alongside Facetime to provide motor commands over the Wixel wireless link.

As you can see, the Magician chassis is having serious problems on my carpet. I’m running four fresh AA batteries using the provided battery holder. It works fine on my smooth table but barely moves on the carpet and the bumpy linoleum in my kitchen. The chassis has limited power from the motors, one of the wheels fits on it’s axel poorly, and the bearing castor feels like it’s got sand in it, *BUT* I still feel I got my fourteen dollars worth. As a proof of concept (e.g. fun) this has been great. Some upgrades I’m considering are lower geared motors and an improved castor from Pololu.

The motors are currently controlled by a serial connection to the Arduino routed over the Pololu Wixel wireless dongle. The Wixels are fantastic little devices that provide a wireless connection equivalent to the USB cable that usually tethers my projects to my laptop. In addition to the motor controls, I can also program the Arduino with sketches remotely, which is super liberating. I will definitely use this in the future, even just for development.

The Wixels have many more capabilities and could probably handle all of the processing requirements of this project directly without the Arduino by using a custom program, but the wiring is so much simpler this way. I was also very happy to see that I could just double-stack the Wixel and Motor shields with a couple of extra pin blocks I had lying around. Xbee would also have worked here, but the Pololu devices are much cheaper and I didn’t need all of the extra mesh networking capabilities or range of the Xbee.

I built an iPhone holder out of matte board and double-sided foam taped it to the robot chassis. It’s hard to see but I added some horizontal braces that are glued in to help keep the V-shape and provide a surface for the double-sided foam tape holding it in place.  I even made cutouts for a rubber band to hold the phone in place but forgot to find some rubber bands, string will work in the meantime. In testing I’ve noticed that the camera needs to be pointed up a bit more, but a servo-based tilt mount would be more awesome I think.

Other future improvements include the chassis upgrades mentioned above and adding a more pretty control interface so that I can send people a program to control my robot from their computer and they can call my phone with Facetime so that we can have remote meetings!  I also ordered up some distance sensors that I’m going to use to detect impending table edges.  My officemate already asked me “Tabletop telepresence robot huh, can it dump itself off the table autonomously?” In a future dream revision I’d like to have more of the control take place from the phone directly so I won’t need the Wixel connection to the motor controllers.  I think some sort of iPod touch or Android phone-based solution would work really well (but $$$).

UPDATE: Cool company (Romotive) doing this stuff.  I like their idea of using the audio jack but don’t like the idea of losing access to the built in speakers to use them for motor control.  I wonder what is their solution.

This entry was posted in Projects, Tabletop Telepresence Robot. Bookmark the permalink.

6 Responses to Tabletop Telepresence Robot

  1. Paul G says:

    Hi Peter,

    I am glad to hear that you like the Wixel! Are you getting decent range with it? That chassis really is an amazing value for $15, but if I were you I would try to get access to a laser cutter and make my own somewhat-larger version that could more comfortably drive around the carpet. But I seem to never get around to building anything anymore :)

    Anyway, keep it up – I look forward to seeing more projects here.

    -Paul

  2. Pingback: Small tabletop telepresence robot - Hack a Day

  3. Ryan says:

    Hey, just saw your post on hack-a-day, thought you might be interested in my masters project. I’m working on the same thing (magician chassis, arduino, and motor shield) but I’m actually controlling the Arduino from my on-board iPhone. I have a working prototype that allows me to control the robot wirelessly from my computer via an app that I have written and installed on my iPhone. When my project is complete, I plan on using the app to also stream video to the computer. Let me know if you’re interested and I can send you the link to my project blog.

    • peter says:

      That sounds great. I’d love to see it, please email the link to me at peter@peterklemperer or feel free to post here in the comments.

  4. Awesome work! I have a little robot of my own I have been working on, and telepresence was definitely something I have been wanting to add. Maybe not to my current one (he is too small), but my next robot will be bigger and your approach is a big inspiration! Does the Wixel accept serial commands, like the XBee? I got the Sparkfun Joystick shield which I have been using as a remote control for my robot. Check it out, all the code I used is there if you are interested.

    Keep up the good work!

  5. mom says:

    Nice robot! What’s a dongle?

Leave a Reply