CASE FILE // EMBEDDED / HARDWARE
EMG INTERFACE CONTROLLER.
ROLE — EMBEDDED SYSTEMS DEVELOPER & HARDWARE DESIGNERTIMELINE — ACADEMIC PROJECTSTATUS — COMPLETED

Real-time electromyography signal processing and visualization on the ESP32-S3 — 500 Hz acquisition through a multi-stage DSP pipeline, streamed over UART to a Python GUI, with a game-controller bridge and custom PCB + enclosure.
HIGHLIGHTS
- ▸ 500 Hz EMG sampling on the ESP32-S3 (XIAO), EMG Candy analog front-end
- ▸ Adaptive threshold calibration per user and muscle group
- ▸ Real-time Python GUI (pyserial + matplotlib) and Arduino Serial Plotter support
- ▸ pynput game bridge — muscle activations drive game input (Roblox tested)
- ▸ Custom KiCad PCB and Fusion 360 3D-printed enclosure
ARCHITECTURE
- ▸ Electrodes → EMG Candy front-end (0–3.3V pre-amped) → ESP32-S3 ADC
- ▸ On-device DSP: rectification, 20-sample RMS window, adaptive thresholding
- ▸ Clean envelope emitted over UART @ 115200 to PC consumers
STACK
FIRMWARE
- ESP32-S3
- Arduino framework
- C/C++
PC
- Python
- pyserial
- matplotlib
- NumPy
- pynput
DESIGN
- KiCad
- Fusion 360
UPLINKS