A discontinued controller, rebuilt end to end
A 1989 Nintendo Power Glove stripped to its shell and rebuilt as a working Bluetooth input device, across mechanics, electronics, firmware and gesture classification.
Why it earns its keepThat a piece of hardware with no usable documentation and no surviving vendor can be taken apart, understood, and rebuilt across every layer at once: mechanical, electrical, firmware and software. The estimator is the part that transfers: raw flex readings cross a threshold repeatedly on noise alone, so the gesture only becomes stable once the signal is filtered. Every instrumentation project meets that problem, and it is usually mistaken for a bad sensor.
What it is notA university capstone sponsored by Lockheed Martin, delivered by a student team, and not a commercial engagement of this firm. One unit, built to prove the rebuild rather than to be produced: no design-for-manufacture pass, no environmental qualification, no fleet. The filter core is TinyEKF (Simon D. Levy, MIT), adapted here to two different state dimensions and made to run on the microcontroller; the estimator models, the gesture classification and the hardware are the team’s own.
- MCU
- nRF52840, Bluetooth LE
- Sensing
- 6-DoF IMU + 5 flex
- Gestures
- 31 finger combinations
- Output
- Bluetooth HID
// Per-finger thresholds: a pinky does not travel as far as a thumb.#define THUMB_THRES 60 // INDEX 40, MIDDLE 50, RING 35, PINKY 42 // Filtered values, not raw: an unfiltered flex reading crosses its// threshold repeatedly on noise alone.static inline Gestures gesture(float thumb, float index, float middle, float ring, float pinky){ int mask = (thumb > THUMB_THRES) << 4 | (index > INDEX_THRES) << 3 | (middle > MIDDLE_THRES) << 2 | (ring > RING_THRES) << 1 | (pinky > PINKY_THRES); switch (mask) { /* ... 31 named combinations: TIMRP, TI, T, I ... */ }}