Thanks for visiting.

I occasionally make things that might by useful to other people. I thought it was time I shared some of them. I've also added some commentary.

Most of the code examples are on GitHub

See also my company Software Machines Ltd.


RISC-V SoC

SoC in Verilog wrapping the SERV RISC-V soft processor


Web Proxy

Make your own remote web proxy server.

To secure your communications and prevent hostile governments eavedropping. Or just because it is none of their business.


OTA Arduino programming

A replacement bootloader for the Arduino to allow OTA (over-the-air) programming.

Code updates can be sent to a device over a radio network and saved on an I2C EEPROM. The bootloader can then flash the processor with the new code. This allows remote updates to Arduino based radio devices.


Gas Meter

Reading the dial on an old gasmeter - using a mouse chip as a video camera.

Featured on Hackaday


Laser Cutter

Code for generating DXF files for a laser cutter


UK Maps

UK maps showing linguistic clusters of placenames


Modified RANSAC algorithm

Modified RANSAC algorithm, part of an image processing project to detect the position of a guitar neck.


MISRA

Why it may make your code worse.


Smart Power Controller

Remote controlled phase controlled mains switch


Home Energy Monitor

Monitor your houshold electricity supply

Featured on Hackaday


Triac Power Control

Power control using an Arduino and a triac. Use all your excess solar power without having to import any.


Electricity Meter Reader

An Arduino based project to read Watt-hour data from an Elster A100C electricity meter.

Featured on Hackaday


3D Photos

A simple way to make 3D photos (red-green) with any digital camera.


Mobile Phone Stand

A very cheap and easy to make stand for a mobile phone.


Reversing Sonar

Reverse Engineering a commercial reversing sonar product.