Simple Arduino Robot Control

One of the simplest bits of functionality that is useful for small-scale robotics is the ability to control robots over the serial port, which can easily be made wireless using Pololu Wixels, XBee, bluetooth, or any other wireless serial connection. Since the Arduino Serial Monitor only sends out messages rather slowly, and it’s usually nice to have a fast response from computer to robot, I wrote a short Java application that handles the communication for you.

Read more on Simple Arduino Robot Control…

Status Update: Rolling Along

I’m still not quite done with all of the updates for my robot—most notably the wheels. I’ve actually run into a little trouble: the wheels I was intending to use are actually too good at sticking to the ground to turn easily—the rubber tires fall off every once in a while. To solve this, I’m planning to use some omniwheels for the front, which should convert the drive system from four drive wheels to only two, and thus reduce the shearing force on the wheels.

Read more on Status Update: Rolling Along…

Snapshot: Work in Progress

Over the summer, I’ve been working on restructuring much of the robot—both to reduce its physical size and to reduce its power requirements.

A short (and incomplete) list of changes:

  1. Switch from old laptop motherboard to an Artigo pico-itx computer
  2. Move the Kinect down—empirical data shows that it does not need to be placed very high to get useful readings
  3. Elevate the base (by using bigger wheels): I’ve had troubles getting over bumps due to low ground clearance
  4. Change microcontrollers from an ATMega328P to a ATMega2560
  5. Add an LCD for quick feedback on important things like battery voltage and motor speed

Source code is available for download—there’s a Git repository at

git clone git://

Alternatively, browse the repository over the internet here


Replaced the computer and moved the kinect. It's a lot smaller now!

Read more on Snapshot: Work in Progress…