HardwareSoftwareBiomedical

Assistive brain-computer interface for pianists

Pianists with lower-limb motor disabilities can't use the sustain pedal. This system reads their brain and head-motion signals and presses it for them.

Problem

Pedaling needs the feet. Some pianists can't use theirs.

What I built

EEG and motion acquisition, actuator firmware, an ESP32 SMD board and a web app.

Result

Working prototype, endorsed by the dean's office for continuation by research groups.

3D model exported from KiCad, top side.

How it works

Muse headbandEEG + accelerometer, Bluetooth
Python + LSL + Node-REDfiltering, detection, MQTT publish
Web appcalibration, live monitoring
ESP32 firmware + Node-REDlow-latency C++, MQTT subscribe
Pedal actuatorpress / release

The challenge

The main challenge was latency: how fast the motors respond. A musician needs an instrument that reacts immediately, so this was a key requirement.

To get a quicker response, the user interface lets musicians adjust the detection sensitivity. Once they’re used to the device, they can rely on smaller, faster head movements.

Decisions and trade-offs

Given the academic context, we had to make trade-offs in the system architecture. The ideal design processes all the data on the chip itself, so no computer or internet connection is needed. But processing these signals takes more computing power than a typical IoT application, and the project had to stay budget-friendly. So we did the signal processing on a computer with Python and Node-RED, and sent the commands to the ESP32 over MQTT.

What I’d do next

Replace the mechanical actuator with a more precise, stronger and faster one. A custom-made mechanism would be the ideal solution, and it would also make the device look more polished.