• Arduino
  • Optical Odometry (Part 2)

    This is the second part of a series investigating the use of optical sensors for robot odometry.

    In part one of this project I pulled apart an old Microsoft Intellimouse for the optical chip and managed to extract some readings using an Arduino Uno. The aim now is to repackage those components in a way that they could be mounted underneath a small wheeled robot. (more…)

  • Arduino
  • Optical Odometry (Part 1)

    For the last few years I’ve taken part in the local Rampaging Chariots competition along with a group of graduates. One of our most recent challenges has been to get a rover to autonomously navigate the assigned assault course. So lately I’ve been thinking a lot about odometry, that is, estimating the position of a robot over time. Typically, a cheap method of tracking the position of a rover is by attaching rotary encoders to the output shaft of the drive wheels. Unfortunately as the traction of the drive wheels isn’t perfect, they will slip occasionally and introduce errors into the estimated position.

    Computer mice perform a very similar task. By taking low resolution photos a surface they’re able to very accurately track their relative position. If you were able to mount one (or more) of these under a rover, it might prove to be a better odometry solution. (more…)

  • Arduino
  • LED Matrix

    This post is a sort of eulogy. About 5 years ago I decided to teach myself a little more about electronics and thought building an LED matrix from scratch would be a good idea. Not just any old LED matrix, a 16×8 LED matrix. That’s 128 individual LEDs along with a whole bunch of resistors, transistors and a couple of shift registers for good measure.


  • 3D Printing
  • STS Pi Adapters

    These next two prints were a little less ambitious than the Unicorn HAT diffuser. Needing a little platform to experiment with robotics I bought a STS-Pi kit with the intention of mounting a Raspberry Pi Zero (with Explorer pHAT) on it to make a teeny rover. I didn’t realise until I received it, that it’s designed to bolt a full size Raspberry Pi directly to the chassis and while you can mount a Pi Zero, you’d need extra bolts to mount one in it’s case. Not wanting to ditch a case (or buy any extra bolts), I set about designing something to fix the problem. (more…)