A Triple-Modal Brain-Computer Interface (SSVEP, Alpha Rhythm, EMG) for Real-Time Multi-Class Control of an RC Car
Developed at Neurotech@Davis, University of California, Davis.
Our team, Wheelatronic, developed and implemented a real-time Brain-Computer Interface (BCI) that integrates three signal modalities:
- SSVEP (Steady-State Visual Evoked Potentials): To select directional commands via gaze fixation
- Alpha Rhythms: To detect eye closure or neutral/resting state
- EMG (Electromyography): To detect jaw clenching as a stop command
The system enables intuitive, multi-class robotic control using a wearable EEG headset and muscle sensors, interfaced with an Arduino-powered RC car.
| Signal | Function | Detection |
|---|---|---|
| SSVEP | Directional control (Fwd, Back, Left, Right) | FFT peak classification of 7–13 Hz flickering |
| Alpha | Neutral/rest state | Mean amplitude in 8–12 Hz |
| EMG | Emergency stop | Amplitude threshold crossing (jaw clench) |
- Signal acquisition via OpenBCI
- Real-time filtering, FFT, and feature extraction in OpenViBE
- Command classification in MATLAB
- Serial communication with Arduino Uno
- Actuation of RC car via switch-case motor logic
- EEG: OpenBCI Cyton board, dry electrodes
- Robot: ELEGOO Smart Car V4.0
- Microcontroller: Arduino Uno R3
- Software: MATLAB, OpenVIBE, OpenBCI GUI
- Serial Comm: USB interface between MATLAB and Arduino
- SSVEP Classifier Accuracy: 83% (within 0.3 Hz window, 2s window)
- Alpha Detection Accuracy: 99%
- EMG Stop Accuracy: 100%
- Overall system accuracy: 75–80%
- System latency: ~2 seconds post-stimulus
Software:
- MATLAB R2022a or Later
- OpenVIBE 3.6.0
- Arduino IDE
- Launch OpenBCI GUI and stream data to OpenVIBE
- Use OpenVIBE to route data to MATLAB (via Scripting Box or external connection)
- In MATLAB:
- Run the classifier pipeline
- Send decoded commands to Arduino via serial
- Upload the Arduino sketch to the Uno (from
/hardware/) - Control the RC car using gaze, rest, and jaw clenching.
- Zhou, C. (2023). SSVEP-based BCI Wheelchair Control System.
arXiv:2307.08703 - OpenVIBE Documentation:
https://openvibe.inria.fr/documentation/3.6.0/Doc_BoxAlgorithm_MatlabScripting.html
Selene Han, Carolyn Espinosa, Andy Vo, Nithmi Jayasundara
Viktor Rodriguez
Aneesh Bhardwaj
Grace Pei
Arnav Salu
Affiliation: Neurotech@Davis, UC Davis
This project is licensed under the MIT License. See LICENSE for details.