Projects
A selection of projects spanning embedded systems, simulation, and tools. Each one is something I built from the ground up — or debugged down to the register level.
Notable Projects
Telematics Edge Application
Pierce Manufacturing — production system
Designed and implemented the on-vehicle telematics system from scratch. Rust on embedded Linux reading CAN bus data via an RTOS-based microcontroller collector. Encrypted cellular transmission. Production in ~2 years.
CAN Driver Race Condition Debug
Pierce Manufacturing — deep-dive debugging
Traced a ~5% intermittent corruption rate to a mutex race in the vendor's CAN driver. Built a bench setup that replayed traces for a week to reproduce. Patched the driver locally, rolled out to all customers.
Hardware-in-the-Loop Test Framework
Pierce Manufacturing — test infrastructure
Designed an automated HIL testing framework with a Python abstraction layer. Became the standard for new product testing at Pierce.
Active Projects
JefSCAD
Programmatic 3D modeling kernel — from CSG to BRep to mesh, with Python bindings.
Improves on OpenSCAD by reducing floating-point errors and avoiding immediate meshing. Includes a numerical meshing module for CFD solver integration (voxelized volumes, boundary-intersection maps, warped hex-grids).
Tech: Rust, Python bindings, CSG, BRep, NURBS, numerical meshing
Pixel World
Hybrid 2D/3D pixel-art game engine in Rust — top-down exploration with 8-angle camera rotation.
Combines the feel of classic top-down adventure games (Zelda, CrossCode) with camera rotation inspired by Fez. Fixed-timestep game loop, OkLab color system, WGPU rendering pipeline with separate mesh and sprite passes.
Tech: Rust, WGPU, OkLab color, fixed-timestep physics
Terminal Graphics Ecosystem
High-resolution terminal graphics in Rust — treating the terminal as a pixel canvas using Unicode half-block characters.
Three projects in one: Termcanvas (core rendering library), Termsaver (procedural screensaver), and Termtet (interactive Tetris in the terminal). Layered architecture with shared rendering foundation.
Tech: Rust, crossterm, ANSI TrueColor
WS281x Lights Controller
Raspberry Pi LED controller in Rust — with Home Assistant integration.
Controls addressable RGB LED strips with precise timing. Integrates into smart home ecosystems for automated lighting scenes.
Tech: Rust, Raspberry Pi, WS281x, Home Assistant, MQTT
LLM Agent Harness
LLM agent runtime — system prompt composition, tool execution, and conversation loop management.
Explores the architecture that bridges a large language model with the outside world. Dynamic system prompt assembly, tool call routing, and context management patterns.
Tech: Rust, LLM APIs, tool-use architecture, context window management
Projects in Progress
Z-Synth
Bare-metal DSP synthesizer in Zig — running on RP2040 and ESP32 microcontrollers.
A subtractive synthesizer built from first principles. Pre-calculates sine tables at compile-time using Zig's comptime. Talks to I2S DACs with zero-overhead I/O. No operating system, no runtime — just deterministic timing and direct register access.
Tech: Zig, RP2040, RP2350, ESP32, I2S, MMIO
Chess Engine / NACE
Rust-based chess engine exploring neural network evaluation — with a focus on extracting human-understandable heuristics from attention weights.
Standard search infrastructure (minimax, alpha-beta, iterative deepening, transposition table) with a Transformer-based evaluation function. The research goal: derive interpretable chess concepts from the neural network.
Tech: Rust, Transformer networks, UCI protocol
Quantum Canvas
Interactive quantum mechanics visualizer — browser-based Schrödinger equation solver.
Users draw potential landscapes or initial wavefunctions and watch the probability amplitude evolve in real time. Uses Crank-Nicolson integration with Cayley transform for unitary evolution.
Tech: JavaScript, HTML5 Canvas, FEM, Cayley transform
GPU Fluid Dynamics
Lattice Boltzmann Method solver on GPU — high-performance fluid dynamics using WGPU compute shaders.
Models fluid flow around airfoils, turbines, and rocket bodies. Uses interpolated bounce-back for accurate boundary handling — avoids the stair-stepping artifacts of naive voxelization.
Tech: Rust, WGPU compute shaders, LBM, CFD
Past Projects
Browser-Based Physics Simulations
Union College / Lawrence University — teaching tools
Interactive physics simulations (orbital mechanics, coupled oscillators, projectile motion) written in Rust and compiled to WebAssembly with WebGL rendering. Used in introductory lab sections.
Viral Self-Assembly Simulation
UC Riverside — research
Coarse-grained molecular dynamics of viral capsid assembly on HPC clusters. Showed that minimal models reproduce the full range of observed shell symmetries. Published in Biophysical Journal.
C-Method Casimir Calculations
UC Riverside / OU — research
First application of the C-method (from optics) to Casimir force calculations. Matched experimental measurements on periodic gratings. Published in Physical Review Letters.