Daniel Svane

Web apps, software development, CAD design, 3D printing, PCB design, CNC machining and prototyping. Open for hire.

Smartplant

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

Open smartplant.danielsvane.dk ↗

Wi-Fi water valve

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

Amino acid memorizer

A quiz game for learning the 20 amino acids: names, abbreviations and structures, drilled until they stick.

VueSCSSNode

Open aminoacids.danielsvane.dk ↗

Hydrogen wave function visualizer

Renders hydrogen orbitals from the Schrödinger solutions. Pick n, l and m and see the probability density.

VueVite

Open wavefunction.danielsvane.dk ↗

PCB to G-code converter

Upload Gerber files and get milling G-code for isolation routing and drilling, wrapping pcb2gcode in a web UI.

NodeEJSShell

Open pcb2gcode.danielsvane.dk ↗

Sheet music reader

A reader for sheet music, built for practising at the instrument.

VueViteTailwind

Open sheets.danielsvane.dk ↗

Fakebook

Lead sheets in the style of a jazz fakebook: melody, chords and form on one page.

NuxtTypeScriptDrizzle

Open fakebook.danielsvane.dk ↗

LumenPnP paste utility

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

Open paste.danielsvane.dk ↗

Load cell board

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