Last updated: 2018/12/10

This is a list of projects that I’ve completed, that I’m building, and ideas for future projects.


Dog Speedometer

First project I did getting back into Arduino in 2012.

Full documentation here

Lissajous drawing machine

Super-simple drawing machine for creating lissajous figures.

3D Printer

A very, very homebuilt 3D printer. Melamine chipboard, shafts from inkjet printers, skateboard bearings, fishing line, and lots of hot glue. It uses my own drive design (a bit like an Ultimaker, but very different) for the XY axis and a Sarrus linkage for the Z-axis.

Perpetual Pendulum Wave

A perpetual pendulum wave machine, using wound coils under each pendulum to keep them going and in time.

Coil Winder

I had to build a coil winder to wind the coils for the Perpetual Pendulum Wave. It’s somewhat wonky, but I did take photos…

Masking tape labelling machine

A machine to create labels on masking tape using a sharpie, one stepper and one servo. 11 hours from nothing to hello world, done during a makeathon.

In Progress


A simple, low-speed (Human-readable) comms library using Morse code


We’re building a MaslowCNC for plywood machining.

CNC hot wire cutter

My 3D printer XY stage can be removed from the machine. While building the 3D printer, I played around with suspending it over the edge of a table and hanging a guitar string from it using weights and a counterbalance system to tension the weights. I managed to make some nice cuts, but the wire would swing when moving too fast. Since then, I figured out a way to passively magnetically damp the swinging, so it should work really well.

Videos of the cutter and the damping:



Future Projects/Ideas

I have many ideas of things I want to build. Listing some of them, in rough order that I want to see them happening:

  • For the masking tape printer, I’d like to have a series of bumps on the rotating part so that I can pick up quickly where in the rotation I am, so that I can remove the sensors on the tape itself. You have to see the printer to know what I mean.
  • A steampunk clock using a chain with hanging gears to indicate time, moon phases etc. This needs a drawing to explain.
  • A head on the 3D printer that uses a pencil lead to do CNC EDM machining.
  • An infinity zoetrope: Put a mirror on a record player turntable or similar, with the mirror spinning. Then put a zoetrope image on a transparency on top of that. The lid that goes over this has a half-silvered mirror and the LEDs to make it an infinity mirror. If you pulse the LEDs in time with the rotation, you have a moving infinity mirror thingy.
  • MRMR: Multiply Redundant Media Repository: Use erasure encoding, sshfs and the python fuse filesystem bindings to set up a virtual drive with drives that can be removed at will.
  • Garage automation: Switching on lights as you enter, notifications of the door opening, alarms if the door stays open too long, RFID entry.
  • An electric rc-controllable monocopter with one moving part. Google “monocopter charybdis”. If you can modulate the power to the motor sinusoidally during the course of a single rotation of the main blade, you should be able to get it to move in any direction.
  • An electric bicycle with no visible controls. It uses accelerometers to pick up its orientation and noises. It will always provide enough of a boost to simulate a 5% downhill gradient, that ends up being about 15km/h steady speed. Detect pedaling by listening for the rear wheel ratchet sounds. When not pedaling, calibrate and compensate for wind. When backpedaling, apply a virtual backpedal brake. Measure sideways angle to detect when rider is stopped and/or pushing.
  • An accurate, strong robot arm using my Spectra line drive and a physical layout like the Tizio lamp to get accuracy, strength and a large working area.
  • A replica sonic screwdriver, with mems gyro, accelerometer and compass, as well as a neopixel strip inside. Lots of funny effects, like sputtering at first, then working correctly when tapped a few times, and showing a specific colour when pointing towards London.
  • Using a magnet underneath a box filled with a thin layer of sand, then put a metal bearing ball into the sand and moving it around using the magnet. This is a known project, but I have a few twists on the idea.
  • Strand beach has a very shallow slope, so the exposed sand at low tide is quite big. I want to put up 2 cameras on poles 10m apart, and then use an RC car with a light on it and a rake to draw pictures in the wet sand, using triangulation from the cameras to provide positioning info. It would be nice to draw images that are distorted to show correctly when viewed from a specific spot on the boardwalk.
  • Using a projector and camera for 3D mapping and using color to show where a surface should be higher or lower. Can be used for fine sculpting, but basic use would be to sculpt a face in sand, and then animate it.
  • A high-altitude balloon that generates hydrogen from electrolysis of water to replenish the gas needed to stay aloft, and gets water using a Peltier element to condense it from the atmosphere. Solar power supplies power to do the electrolysis.
  • A solar oven/boiler using the cheap fresnel lenses you can buy from China in largish sizes. Metallise the fresnel and use it as a mirror rather than lens. At 400mm X 400mm sizes, these can be fitted on any flat surface and provide large reflection area. The lenses can be different types, each has a focal distance and a focal offset.
  • A device attaching to the strap of swimming goggles, that detects heading and position, and uses vibratory motors to guide a swimmer to waypoints without having to sight the whole time.
  • I use a popcorn maker to roast coffee, but it gets too hot. I want to build a PID heat controller for the heating element.
  • Using a heated build plate to heat wax for coating a pcb surface, then rest the pcb on the surface and let it cool to fix it in place. Scratch out PCB designs using the 3D printer head, and etch.
  • Gerber hole driller: Using my cheapo XY stage to position a board, then mount drills with the correct bits on a constrained live hinge to provide small up/down movements to drill holes.
  • Collaborative pick and place: A pick and place table where your hand and the vacuum picker rests on the XY gantry, and it moves to the correct place for picking up and placing, with your manual dexterity providing the final placement. Auto-learning, so you can handle multiple boards.
  • A device that drips water with strobing leds to make the droplets appear still or making patterns. Use a piezo for drop timing and a sideways speaker for distortion. I saw all the elements of this in separate places, but not well executed together.
  • Seeing strips of cloth fluttering in the wind, I’m thinking that you can pick up the flutter with microphones and compute wind speed from that.
  • Small vibrobots on a pcb surface etched to power them and position indication, so that they can collaborate. Something similar has been done.
  • Build a string shooter. I just like them.
  • In a bug box, detect the frequency of the bug’s wingbeats and strobe LEDs at that frequency or slightly slower, to show the movement in slow motion.
  • A coin holder that, at the press of a button, doles out from the available coins a combination that will enable me to have exact change for any cash purchase up to where I need bank notes. This is more for the challenge of figuring out the correct change from available coins than the utility of the project. I figure it should be nice as a 3D print/laser project.
  • A Neopixel line showing different sort methods. It starts out random colours, then the colours move up and down until sorted.
  • An online system for building simple UI elements for Arduino controls. Each layout would get a unique URL and QR code so you can control the project with your phone with minimal setup. This will probably use my Morsel library.
  • Lasercut or 3D printed parts to make a scary sharp jig with exact angles.
  • Use Voronoi patterns overlaid on images to encode data like QR codes. Probably not very data-dense, but pretty.
  • A pendulum clock using a dippy bird-type setup to virtually vary the pendulum length. Each side of the dippy is halfway in shadow, and the clock pendulum does one rotation per solar day. In this way, it slows down or speeds up to keep time according to the sun.
  • A pendulum clock using a solar-powered ‘climber’ that climbs up the winding rope to keep it perpetually wound.
  • Single pendulum drawing machine: Have something like 2 vertical pinion racks with the racks pointing towards each other. Hang a pendulum between them so that it swings, and with each swing it steps down one of the rack teeth to keep momentum. Attach a pen with a solenoid to the swinging part, so that it can draw for part of the swing on a canvas. Difficult to implement, but should be cool to see.
  • A POV display that uses accelerometers to determine that it’s being swung in a circular motion, and can detect the cadence of that swinging to display words. Because it does this, it can be affixed to bicycle wheels, or can be tied to a string and swung around.