OS Switcher

Black plastic project enclosure with a 3-state toggle switch on the side, with 3 positions: Linux, ?, and Win.

The OS Switcher is a little USB device for dual-booters. The physical switch lets you select the operating system (OS) you want to use for the next boot. It saves time by eliminating the need to have the boot manager wait for a selection before continuing with the default option. It also removes the need to interrupt the boot process at the right time and manually select the operating system using a keyboard or mouse if not booting into the default OS.


This little Overwolf application uses a Tobii EyeX eye tracker to detect when you’re looking at your screen. When you turn away from the screen to talk to someone, it mutes TeamSpeak (a voice chat tool used by gamers) to avoid your mates overhearing private conversations. You can find a video made by the Overwolf …

ROBERt the Recycling-Of-Bottles Encouragement Robot

A robot aiming to improve the recycling rate, tested at Imperial College London. We made a YouTube video (embedded below) of our robot, which contains a little introduction as well as some footage of people’s reactions to it roaming around the university campus 🙂


This project is about creating an airplane instrument (such as an altimeter) for a flight simulator running on a PC. It is implemented using a 2×16 character Text LCD display and an mbed microcontroller connected to the PC using a USB cable. My next iteration on this project extracted data from Crysis (a PC game) …

Docs Compiler

This little web-app allowed you to use a bookmarklet (a JavaScript bookmark) to compile C++ code entered into a Google Docs document.

Since Google deprecated the API it used it is no longer live.

Google Docs elements shown in screenshot are ©2018 Google LLC, used with permission. Google, the Google logo and Google Docs are registered trademarks of Google LLC.

Tiny temperature logger with Google Docs data upload

This project uses a TMP102 temperature sensor, an mbed microcontroller and a Python script to make temperature measurements, and add them as new rows to a Google Docs spreadsheet. The data can either be plotted directly with gnuplot or the Google Docs spreadsheet can be visualised using a time series chart gadget.

Google Docs is a trademark of Google LLC.

Multi Robot Learning by Demonstration (Final Year Project)

This project investigated the feasibility of a Multi Robot Learning by Demonstration system, which allowed multiple teachers to simultaneously demonstrate a task to multiple robots. This project received the Head of Department Prize for Best ISE Project, and was published at the AAMAS 2012 conference as an extended abstract.