Tutorial – Level 1 – Choosing the BCI paradigm


Brain-Computer Interfaces (BCI) is an exciting research field that in the future may allow people to control computers using thoughts alone. Presently there is a good reason why this is not already the case and why we are still using mouse and keyboard: EEG-based BCIs are difficult to get to work with as good speed, accuracy and ease-of-use. Due to this, EEG/BCI remains mainly used in research, medical and clinical contexts. In these areas, BCIs are commonly implemented using different approaches, often called “paradigms”. A paradigm can be understood to consist of two parts: what the user is supposed to do mentally, and what is presented to the user.

In the following we give a casual overview of the current mainstream paradigms that are featured in OpenViBE.

BCI paradigms in OpenViBE

OpenViBE is shipped with demos of several BCI paradigms. These are intended to illustrate how to build BCIs with OpenViBE. It would be normal for a serious BCI researcher to either modify the existing materials or add new components to test specific questions of interest.

Each current BCI paradigm has its pros and cons. Here we give a quick overview allowing the reader to understand the main differences. If interested, the reader is invited to take a look at research papers and textbooks on the subject (see e.g. here for a good collection of links). All paradigms should be possible to get to work using good quality EEG equipment (within normal limits of BCI technology, user capabilities, etc) having sufficient number of electrodes placed appropriately.

Regardless of paradigm, it may not be unusual to obtain something like a communication speed of 1 selection per 5 seconds, with a selection accuracy of 70% (in motor imagery). Some users do better, some do worse. Different paradigms may suit different users better. This is the ‘reality’ of current BCI.


P300 is a paradigm where the user is requested to focus on something, like a specific letter on a screen, or a specific sound. When a letter is suddenly highlighted, or a focused event occurs, a specific weak EEG pattern can be detectable approximately 300ms later. Repeating many targets and non-targets, the system can detect what the user is focusing on. P300 is usually used to develop spellers (typing). To implement a P300 system, machine learning is typically used to learn a classifier to predict if each signal chunk is either “P300” or “no-P300”. These predictions are then aggregated over several repeats to make a more robust selection. The ideal electrode placement for P300 may depend on the type of stimulation used.

  • Pros: User does not need skill. Good for multiple choice selection.
  • Cons: The repetitions can become annoying. P300 signal processing can be very sensitive timing: the event markers must be aligned correctly wrt the EEG.
  • Electrodes: Around and including OZ for visual P300. Widely distributed set may also work.
  • Usual pace: One letter after tens of flashes. Not usually used to mimic continuous control.

OpenViBE distribution includes several P300 speller demos using visual P300.


Example of a P300 speller grid. The rows and columns flash in random order while the user focuses on the letter he wants to choose.


Steady-State Visually Evoked Potentials (SSVEP) is an example of a paradigm where elements flicker steadily on a screen, but with different frequencies. When the user focuses on a specific element, the corresponding frequency can become stronger in the EEG originating from the occipital lobe. For SSVEP, machine learning can be used to learn classifiers that distinguish between the flickering frequencies. There are also novel approaches requiring no classifier training, but presently we are not providing such approaches in OpenViBE.

  • Pros: User does not need skill. SSVEP is less sensitive to time precision than P300.
  • Cons: The flicker may quickly fatigue the user. It may be difficult to reliably select between more than 3 elements.
  • Electrodes: Around and including OZ.
  • Usual pace: One prediction each few seconds of signal. Can be used to mimic continuous control (sliding window).

OpenViBE is shipped with two simple demo games based on SSVEP: the SSVEP Demo and the Mind Shooter. Both games involve controlling a spaceship and shooting at targets.

paradigm-ssvep ssvep_mind_shooter

The SSVEP Demo and the Mind Shooter. The user controls the ship by focusing on the flickering red elements (in Mind Shooter, the ship parts).

Motor Imagery

Motor imagery is based on the user kinetically(!) imagining some limb movement, such as the movement of right or left hand. The user should imagine the “sensation” of the movement, rather than how it looks. Classifiers are typically trained to detect differences in spectral band powers (in range ca 8hz-20hz) between the two conditions.

  • Pros: Motor imagery does not need stimuli (e.g. flicker or flashes). MI is less sensitive to timing than P300.
  • Cons: Users may need training to become good in motor imagery. The imagining itself can be tiring. Detecting more than 2 classes can be difficult.
  • Electrodes: Configure around and including C3 and C4.
  • Usual pace: One prediction after ~4 seconds of single class imagery. Can be used to mimic continuous control (sliding window).

OpenViBE has a demo of the classic “Graz” Motor Imagery. The user is instructed to imagine left and right hand movement in trials. Data is recorded to train a classifier, and once built, the user can be provided an online session where the computer tries to guess which movement the user is imagining.


Example of collecting motor imagery data for classifier training in the Graz paradigm.


Although not a BCI paradigm in the usual sense, neurofeedback is another way to use the EEG signal. Instead of using the EEG to predict some discrete choice of the user, the signal is processed in some manner and then provided back to the user as feedback. For example, the user may get a display visualizing some measure of relaxation. Subsequently, the user may attempt to improve this measure with the hope that it also trains the underlying state, assuming a connection between the two.

The “handball” and “lift the spaceship” visualization demos in OpenViBE can be used to build neurofeedback settings. The Mind Shooter and Graz Motor Imagery also contain neurofeedback-like elements (as they can illustrate the strength of the prediction).

Handball and Lift the Spaceship demos in OpenViBE. These can be rigged for Neurofeedback purposes.


OpenViBE contains demos of all the current major BCI paradigms: P300, SSVEP, Motor Imagery (and neurofeedback). Nevertheless, OpenViBE is not simply a collection of these demos, but rather a tool that researchers and enthusiasts can use to research, explore, design and build BCI-based system prototypes. This happens by using and improving the components provided in the OpenViBE framework. Although you can put on a headset and try out the BCI demos in OpenViBE, the intent of the platform is to present a toolkit that works as a starting point and environment for further exploration on the field.

All users are warmly invited to modify the source code or add new components to test approaches and questions of interest.

For more detail on each specific paradigm demo, please see the example scenario documentation in the documentation index.

Happy hacking!

This entry was posted in Tutorials. Bookmark the permalink.