Software developer, robotics enthusiast & tinkerer
Student from the West Coast, into embedded systems and robotics. I like making software that talks to hardware - sensor rigs, control loops, simulations.
Projects
Canopy
ESP32-based sensor network for greenhouse monitoring. Each node measures soil moisture, temperature, and light, then relays data over LoRa to a central hub that pushes to an MQTT broker. Built a web dashboard in SvelteKit to view live readings and set watering alerts.
Tumble
Custom flight controller firmware on STM32. Reads IMU at 1kHz, runs complementary filter for attitude estimation, feeds PID loops for rate and angle control. Tuning interface over serial so I can adjust gains without reflashing.
Sigil
Custom keyboard firmware for RP2040-based split keyboards. Matrix scanning, layer switching, RGB underglow, and OLED status display. Written in Rust with embassy-rs for async on bare metal.
Waveform
Real-time audio spectrum analyzer on a Lattice iCE40 FPGA. Takes line-in audio through an ADC, runs a 1024-point FFT in hardware, and drives a 64x32 LED matrix with frequency bars. All in Verilog.
Tideline
Arduino-based autopilot for a modified RC boat. Reads GPS and compass heading, computes bearing to next waypoint, and adjusts rudder servo via PD controller. Logs position to SD card for replay. Has completed a full 800m autonomous lap of the local reservoir.