Engineering
4 pieces · Notes from building systems — embedded, RTOS, and computer architecture.
2026
-
I Wrote an FFT to Play Music: An Over-Engineered Terminal Player
The browser ate gigabytes to play a song, so I wrote a 2,000-line terminal music player with no pip deps. Along the way it grew a hand-rolled Fourier transform, a filesystem-as-LRU cache, two mpv processes, and an LLM that scores my songs by vibes. A field report on accidental over-engineering.
-
Does an AVR Need SIMD? A Roofline Study That Said No
I set out to design a wide-SIMD coprocessor for an 8-bit MCU. Then I measured twelve real kernels in a validated gem5 model. A roofline analysis talked me out of the vector unit — and pointed at what to build instead.
-
Teaching a Drone to Tune Itself: Closed-Loop PID Autotuning in SITL
We built a closed-loop PID autotuner that flies its own experiments in simulation and searches the gain space — eight optimizers, a chatter-aware cost, and two failure modes that looked solved but weren't. A deep dive into the system, the algorithms, and the fixes.
-
Benchmarking VAIOS Against FreeRTOS and Zephyr
We measured our in-house real-time operating system against FreeRTOS and Zephyr on the same flight-controller hardware — scheduling, IPC, memory, timing, and footprint. Here is the full set of results.