Every commercial prosthetic hand switches between a handful of pre-programmed grips. None of them respond continuously and proportionally to muscle intent the way a biological hand does.
This started as my undergraduate dissertation in Automatic Control and Systems Engineering at Sheffield in 2015-16, and the core question (can this be done continuously rather than as discrete gestures) never stopped being interesting.
The original iOS app captured EMG via a Myo armband, but hit a hard platform limit: the SDK only exposed processed gestures, not raw signal, which forced a pivot to a Windows tool for raw 8-channel EMG capture, feeding a MATLAB pipeline (bandpass filtering, mean-absolute-value feature extraction, k-NN classification across six gestures). The current system is a Python pipeline synchronising EMG with MediaPipe hand-landmark tracking for ground-truth labelling, built against an explicit five-level movement taxonomy (single-finger, combinations, wrist coordination, transitions between movements, and naturalistic tasks), with transitions being the project's own original contribution.
The most important result in this whole project was a negative one: the near-perfect within-session number that fell apart under real cross-validation. Reporting that honestly, and figuring out why, mattered more than any accuracy figure would have.
Knowledge base and synchronised EMG/MediaPipe capture are built. Next: synergy decomposition, continuous EMG-to-joint-angle regression, cross-session personalisation, and eventual hardware interfacing.