Selected Work

sEMG-Controlled VR Environment

Streaming muscle-activation triggers into an interactive VR environment over a low-latency link

C++PythonFastAPIUDPUnitysEMGArduino Uno R4Surface EMG sensorsVR headset
sEMG-Controlled VR Environment
Timeline
Mar 2025 - May 2025
Stack
C++ · Python · FastAPI · UDP

Overview

A surface-EMG human-system interface that lets a user drive interactions inside a VR environment through muscle activation instead of a controller. Flexing a monitored muscle group produces a trigger that the VR scene reacts to in real time.

Signal Pipeline

Surface EMG is acquired and conditioned on an Arduino Uno R4 using hardware bandpass filtering, rectification, and enveloping, then reduced to discrete activation triggers via voltage thresholding.

VR Integration

An asynchronous FastAPI backend streams the EMG triggers to the VR environment over UDP, using non-blocking I/O to keep interaction latency low and jitter imperceptible.

Demo

Driving interactions in the VR scene by flexing, with no controller in hand.