Lupa Espresso

Digital upgrade of an E61 style espresso machine, with custom round LCD ‘analog’ displays and a Home-Assistant enabled ESP32 motherboard.


A low-cost DisplayPort switch for sharing a single monitor/keyboard/mouse between two PCs, using simple logic and a high-speed DP mux chip.


Datasheets2 is a simple datasheet/document/PDF organizer that allows you to quickly search your collection and open specific files


pyMATE is a python library that can be used to emulate an Outback MATE unit, and talk to any supported Outback device such as an MX charge controller, an FX inverter, a FlexNET DC monitor, or a hub with multiple devices attached to it.

Viscons Icon Set

Viscons is a hand-crafted icon set for common filetypes used in development (eg. C header files, binary objects, schematics, 3D models), using a nice eye-soothing sky-blue theme


Over the last year or so I have been working on this project; a custom-built smartwatch! It is still very much a work in progress, and I have plans to build a new hardware platform in the future… Everything was built from the ground-up: the schematics, PCB, firmware, and PC software.


This project uses the Kinect face-tracking SDK to replace a user’s face with another, warping it to match the user. It was developed for my computer vision research project at the University of Canterbury.

Fire Hotspot Detection using an RPAS

As part of a Summer Scholarship at the University of Canterbury, I developed a system for detecting fire hotspots using thermal imaging cameras and remotely piloted aircraft systems (RPAS).

OLED Watch Rev 2

After making a mistake in my last design, I took the opportunity to re-design the PCB and add some extra features. This will be a work in progress so look in here for related blog posts!

OLED Watch

As a side project, I decided it’d be neat to have a programmable wrist watch. I had an OLED lying around with the right dimensions, but I needed a breakout board to be able to use it. So instead of simply making a breakout board, I decided I’d turn it into a smart-watch platform!