David Farrell
FPGA systems · embedded compute · developer tools · Sydney

David Farrell

$ whoami --short

I'm an engineer working across FPGA systems, embedded compute, audio DSP and developer tooling. I like turning ideas into working hardware quickly, then building better abstractions around what I learned.

Projects.

A few things I keep coming back to: programmable hardware, tools that make it easier to reason about systems, and projects where software has to meet the physical world.

01 / FPGA audio

Kestrel

A real-time FPGA audio DSP platform built around per-sample effects processing, flexible control, and low-cost hardware.

audio in → FPGA DSP → audio outActive · SystemVerilog · DSP · embedded UI
02 / FPGA audio

Lyrebird

A sixteen-voice polyphonic synthesizer on an AMD Kria KV260. A USB MIDI controller is read on the Linux side and written into registers in the programmable logic, where an HLS DSP core generates 24-bit, 48 kHz audio: phase-modulation voices with wavefolding, filters, envelopes and LFOs, and a shared reverb, played out over I2S.

MIDI → Linux → PL registers → HLS → I2SActive · Vitis HLS · SystemVerilog · KV260
03 / HDL

Pigen

Pipeline Generator: An experimental hardware description language centered on pipelines, implicit flow control and making streaming hardware easier to express.

buf · port · fifo[n] · skidActive · compiler design · RTL · dataflow
04 / Agent infrastructure

Knowledgetrees

A semantic filesystem for agent knowledge: small, addressable pieces of technical state that can be updated, checked and reused across long-running work.

kt where am iActive · agents · MCP · verification
05 / Agent infrastructure

CointOS

Local-first orchestration for my personal AI agents. It turns requests from the terminal or Telegram into durable agent work, coordinates local model inference, and keeps resource use in check on my own machine.

request → durable work → local inferenceActive · Python · agents · local inference
06 / Animation

Whiteboard

A text-driven animation tool for hand-drawn-style maths explainer videos. You write a spec, it renders the video, and it uses my own captured handwriting for the notation. I built it to make Boarbarktree videos practical again.

write spec → render → adjust → publishIn progress · C · animation · maths

Boarbarktree.

My maths YouTube channel. Currently inactive, but it may well come back.

The channel

Hand-drawn explainer videos on algebraic topology, including a three-part series, You Could Have Invented Homology. Each video was an enormous amount of hand animation in Adobe Animate.

Where it's at

It went quiet when I started my PhD, because I couldn't keep up that pace alongside it. I still want to make the videos, which is why I'm building Whiteboard: a way to make them without animating everything by hand.

Field Notes.

Experiments and things I found out by poking at them. One note, one day.

DateTitleTopic
2026-10-20A Video for the QuestionAgentic learning · video · explanation
2026-09-30Four Cameras, Coming HomeFPGA · MIPI · embedded Linux · episode 1
2026-09-28Adrift In U-Boot ShellEmbedded Linux · U-Boot
2026-09-24EDF 103FPGA · embedded Linux
2026-09-23EDF 102FPGA · embedded Linux
2026-09-22EDF 101FPGA · embedded Linux
2026-09-21PetaLinux 101FPGA · embedded Linux
2026-09-21Jev Can Not Detect Counterexamples To The Jacobian ConjectureJev · correction
2026-09-21Jev Can Detect Counterexamples To The Jacobian ConjectureJev · first result

Contact.

GitHub · davidjfarrell96@gmail.com