J1 · Final-year project · Riphah International University · 2024–25
Moving a robotic hand with three EEG channels
A motor-imagery BCI integrating EEG processing, machine-learning inference, Raspberry Pi control and physical robotic actuation.
- Role
- Protocol, pipeline, hardware, software
- Signals
- EEG · C3, Cz, C4 · OpenBCI Ganglion
- Decoder
- CSP + LDA
- Runs on
- Raspberry Pi · LSL

Research question
How far can motor-imagery decoding be simplified while still supporting responsive physical control?
My role
- Designed the stimulus protocol in PsychoPy and refined it over several pilot rounds (cue timing, trial structure, instructions).
- Built the real-time streaming and processing pipeline on Lab Streaming Layer.
- Implemented filtering, artefact removal, CSP feature extraction and LDA classification.
- Designed the 3D-printed headband and deployed control on a Raspberry Pi driving the servo hand.
- Collected an EEG dataset of more than 30 participants.
Protocol
One trial, to scale · 14 s
System architecture
Raspberry Pithree threads, running in parallel
Robotic hand3D-printed, servo-drivenHardware
EEG was recorded with an OpenBCI Ganglion board. I designed and 3D-printed a headband to hold the electrodes against the scalp during recording. Gold-cup or dry electrodes sit inside it.
It's an acquisition aid, not a complete headset: its job is to keep the electrodes steady so the signal stays clean.

Evidence

Interpretation
Offline accuracy was not the bottleneck. Cross-session and cross-subject transfer limited real-time performance: a decoder trained on one session or person lost ground on the next.
Next question
Three channels keep the hardware simple, but leave CSP little spatial information to work with. The next step is a direct comparison of within-subject, cross-run, cross-subject and three-channel performance.