Web apps, software development, CAD design, 3D printing, PCB design, CNC machining and prototyping. Open for hire.
A mist-fed grow box I designed and built: a printed enclosure, a custom circuit board, Raspberry Pi Pico firmware and a web dashboard with live cameras, grow phases and sensor history.
VueNodeInfluxDBRaspberry Pi PicoKiCad
A smart watering valve for outdoor use. It has its own circuit board with a built-in AC/DC supply, so it runs straight off 230 V, and Wi-Fi and Bluetooth. It is controlled from Home Assistant through ESPHome and has run without problems in the garden for two years.
ESPHomeHome AssistantKiCad
A quiz game for learning the 20 amino acids: names, abbreviations and structures, drilled until they stick.
VueSCSSNode
Renders hydrogen orbitals from the Schrödinger solutions. Pick n, l and m and see the probability density.
VueVite
Upload Gerber files and get milling G-code for isolation routing and drilling, wrapping pcb2gcode in a web UI.
NodeEJSShell
A reader for sheet music, built for practising at the instrument.
VueViteTailwind
Lead sheets in the style of a jazz fakebook: melody, chords and form on one page.
NuxtTypeScriptDrizzle
A rewrite of the LumenPnP paste dispensing tool. Talks to the machine over Web Serial and uses OpenCV.js to locate pads from the camera feed.
VuePiniaWeb SerialOpenCV.js
A board I designed for my solder paste dispensing rig. The syringe hangs from two load cells, and an HX717 reads them and sends the force to the Klipper controller, so the rig can feel when the nozzle touches the board.
KiCadHX717Klipper