Nineteen electrodes sit on a stylised head in the classic 10-20 layout. Each one continuously emits a synthetic trace built from three frequency bands — alpha (8–12 Hz, idle/relaxed), beta (13–30 Hz, active motor cortex) and gamma (30–45 Hz) — plus white noise. This is exactly how a real EEG amplifier reports voltage: a mix of oscillations riding on a noisy baseline, never a single clean tone.
Imagining a left- or right-hand movement produces event-related desynchronisation (ERD): beta power drops over the motor cortex on the side of the brain opposite the imagined hand (C4 desyncs for left-hand imagery, C3 for right-hand). The simulator drives a hidden "ground-truth" intent that cycles between left / right / rest and dips the matching electrode's beta amplitude accordingly.
βpower(e) = mean(bandpass(signal(e), 13-30 Hz)²)
asymmetry = βpower(C4) − βpower(C3)
command = asymmetry < −τ ? "left" (C4 desync = contralateral left-hand imagery)
: asymmetry > +τ ? "right" (C3 desync = contralateral right-hand imagery)
: "stop"
- Signal strength — how strongly the imagined intent desynchronises beta power; low values make left/right barely distinguishable from rest.
- Noise — random voltage fluctuation added to every electrode; push it high enough and the decoder starts misreading intent, same as a loose scalp contact in a real headset.
- Electrode — pick any of the 19 sites to inspect its live raw trace in the chart above.
- Decode accuracy — rolling percentage of frames where the decoded command matches the hidden ground truth, a stand-in for classifier accuracy in a real BCI training session.
Real-world relevance: this left/right/rest beta-asymmetry scheme is the textbook basis of motor-imagery BCIs used in stroke-rehabilitation robotics and assistive wheelchairs — cheap, non-invasive, and exactly as noise-sensitive as shown here.