Selected Work

sEMG-Controlled Rover

Driving a wheeled rover wirelessly from surface-EMG muscle activation

C++PythonUDPsEMGArduino Uno R4Surface EMG sensorsWheeled rover chassisMotor driver
sEMG-Controlled Rover
Timeline
Jan 2025 - Mar 2025
Stack
C++ · Python · UDP · sEMG

Overview

A surface-EMG interface that turns muscle activation into drive commands for a wheeled rover, letting a user steer the platform hands-free.

Signal Acquisition

Surface EMG is captured and conditioned on an Arduino Uno R4 through hardware bandpass filtering, rectification, and enveloping, then thresholded into discrete control signals.

Wireless Control

A Direct Access Point on the Uno R4 carries low-latency UDP commands to the rover, bypassing router overhead for responsive wireless control of the motors.

Demo

Steering the rover hands-free, with each muscle activation mapped to a drive command.

Mecanum wheel test: checking omnidirectional drive before wiring the EMG control in.