CASE FILE // EMBEDDED / HARDWARE

EMG INTERFACE CONTROLLER.

ROLE — EMBEDDED SYSTEMS DEVELOPER & HARDWARE DESIGNERTIMELINE — ACADEMIC PROJECTSTATUS — COMPLETED
EMG INTERFACE CONTROLLER cover

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
Embedded EMG Signal Processing Pipeline

STACK

FIRMWARE

  • ESP32-S3
  • Arduino framework
  • C/C++

PC

  • Python
  • pyserial
  • matplotlib
  • NumPy
  • pynput

DESIGN

  • KiCad
  • Fusion 360

UPLINKS

SYS_UPLINK // DOWNLOAD