Software
Software
EEG Software
BrainAccess hardware products come with free software for controlling the devices, streaming and preprocessing EEG data. The software is provided as libraries and can be accessed via C/C++ or Python API. This gives the user direct control of the devices and access to EEG data and easy integration capabilities into the user’s applications. The software also comes with a Viewer, which gives access to the main functionality of the libraries through a graphical user interface. Below is the list of EEG software components included in the BrainAccess software installer.
BrainAccess Core
BrainAccess Core library provides an interface with BrainAccess electroencephalographs. It enables control of the device, configuration of acquisition parameters and streaming of EEG data to the computer.
The library has full control of the device and can be used to access raw EEG recording. It enables setting required channels for recording and their gains, measuring impedance, streaming EEG and other additional input data if available on the device. It also allows monitoring of the state of the device such as battery voltage and level.
BrainAccess Core library features asynchronous requests, callback-driven EEG data acquisition and supports multiple devices through the same Bluetooth adapter.
BrainAccess Processor
BrainAccess Processor library has functions for EEG signal preprocessing such as detrending, filtering, FFT and other typical utilities.
BrainAccess Viewer
BrainAccess Viewer is a Python application that provides a GUI for most of BrainAccess Core and Processor functionality. A user can measure impedances, stream and save data using the Viewer.
BCI Software
BrainAccess software also includes some BCI algorithms as part of the BCI Connect library. It comes with C/C++ and Python API. Different BCI algorithms may need different EEG setups so please pay attention to the description of a particular algorithm.
SSVEP Classifier
The steady-state visual evoked potential (SSVEP) is a repetitive evoked potential that is produced when viewing flashing stimuli. Activity at the same frequency as the visual stimulation can be detected in the occipital areas of the brain.
SSVEP Classifier can recognize steady-state visual evoked potentials (SSVEP). If a person is presented with some visual stimuli flickering at different frequencies, SSVEP classifier can determine at which stimulus a person is focusing on.
This can be used as motionless control, where a user can choose between different presented options or even type a keyboard by only focusing his attention to a particular flickering letter.
The SSVEP classifier requires 2-6 electrodes placed in the occipital region (for example, O1, O2, P3, P4, Oz, Pz) with reference at Fp1 and bias at Fp2.
Please see Python API documentation for more information on how to use the SSVEP classifier, which also includes an example of an SSVEP based keyboard and SSVEP based 4-direction movement classifier.
P300 Classifier
The P300 (P3) wave is an event-related potential (ERP) component elicited in the process of decision making. The P300 is thought to reflect processes involved in stimulus evaluation or categorization.
It is usually elicited using the oddball paradigm, in which low-probability target items are mixed with high-probability non-target (or “standard”) items. It surfaces as a positive deflection in voltage in EEG recordings with a latency (delay between stimulus and response) of roughly 250 to 500 ms. The signal is typically measured most strongly by the electrodes covering the parietal lobe. The P300 wave is present/most pronounced when a user is presented with target items, in other words target stimuli. The P300 classifier can be used as lie detector, speller (keyboard) and other.
Please see Python API documentation for more information on how to use the provided P300 classifier, which also includes an example of an P300 based keyboard (speller).
API
BrainAccess libraries can be interfaced through C, C++ and Python API. Python API is provided as a BrainAccess Python package and should be installed using pip. Python package also includes BrainAccess Viewer as well.
Documentation for C, C++ and Python API can be found on the respective pages below:
Installation
Download Windows installer from the Download Centre. It is a single installer that installs all the BrainAccess software. For linux users download the debian package for installation of BrainAccess software.
The Download Centre becomes accessible after the purchase of one of our products.
System requirements
- Windows 10 or newer and Ubuntu 18.04 or newer are supported.