Things I've
built.
Hardware, embedded systems, and software — spanning bare metal to the browser.
8-Bit CPU — FPGA
Custom processor designed and implemented in SystemVerilog on a Basys3 FPGA. Full datapath with instruction fetch, decode, and execute.
- ›4 × 8-bit general-purpose registers (R0–R3)
- ›ALU supporting arithmetic and logic operations
- ›Control unit + ROM for instruction fetch/decode
- ›Closed timing at 100 MHz, validated on hardware
ESP32 Embedded Systems
Suite of bare-metal and FreeRTOS projects on the ESP32, from register-level peripheral drivers to a full Tetris game with real-time TFT rendering.
- ›Tetris: joystick input, collision detection, TFT rendering
- ›Tic-Tac-Toe over ESP-NOW peer-to-peer Wi-Fi
- ›Custom GPIO, ADC, DAC, and GPTimer drivers
- ›Concurrent state machines with optimized ISR handling
Light-Seeking Robot
Autonomous ATmega robot with ADC light sensing, PWM motor control, and custom-soldered motor driver circuitry. Debugged with oscilloscope and multimeter.
Smart Doorbell
Raspberry Pi doorbell with a multithreaded image capture pipeline, TCP-based transmission, and thread-safe synchronization for concurrent camera and network ops.
Chess Web App
Real-time multiplayer chess with WebSocket-synchronized game state. Players share a live board with no polling.