Software

Software

BrainAccess AI EEG recording software allows interfacing with BrainAccess devices, offers an infrastructure for setting up EEG and BCI experiments and ships with various applications. There are two major software options: BrainAccess Board and BrainAccess SDK. While BrainAccess Board is more suited for end users, BrainAccess SDK offers direct control and access to devices and can be used by integrators for the development of specific applications. 

BrainAccess Board


The BrainAccess Board is a single-point entry application to communicate with BrainAccess devices, view and record data, stream or receive EEG or other data to/from a network and launch a variety of available EEG and BCI apps.

Multiple Devices

BrainAccess Board allows connecting to multiple BrainAccess devices and streaming synchronized data. This enables the implementation of the so called hyperscanning experiments and applications, when data can be collected from multiple people and their response to various stimuli compared. 

Versatile experiment infrastructure

BrainAccess Board supports Lab Streaming Layer (LSL)* that gives enormous flexibility when setting up experiments. The EEG and other data can be streamed/received over the network. This allows, for example, some computers collecting EEG data from BrainAccess devices, other computers providing stimulus and yet another computer collecting and recording all the streams and stimuli onsets. LSL ensures synchronization between streams in time sensitive set-ups. If one has some software that supports the LSL, the BrainAccess Board can be used to catch that data stream or vice versa.

*Lab Streaming Layer is a middleware ecosystem used to stream, receive and synchronize neural, physiological and other data from various sensors. Read more on official website: https://labstreaminglayer.org/#/

BrainAccess Board LSL usage example
An example of the versatility of the BrainAccess Board working together with Lab Streaming Layer

EEG/BCI application launcher

BrainAccess Board contains a launcher for a variety of EEG and BCI applications such as EEG viewer, EEG data converter and other.

BrainAccess Board is planned to allow the users write their own applications with Python in the future. It will allow the users to use Board’s infrastructure and ease the application development.

Installation

Download BrainAccess Board from a Download Centre. It is a portable application for both Windows and Linux and extracts all the required components every time it runs.

System Requirements

Windows 10 or newer and Ubuntu 18.04 or newer are supported. The application takes up approx. 500mb on a hard drive.

BrainAccess SDK


BrainAccess SDK is a collection of libraries for controlling the devices, streaming and preprocessing EEG data. The libraries can be accessed via C/C++ or Python API. This gives the user direct control of the devices and access to EEG data and integration capabilities into user’s applications. Below is the list of software components included in the BrainAccess software installer.

Software - BrainAccess®
BrainAccess SDK component schema

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 for 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 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 BCI Connect


BrainAccess BCI connect library includes functions required for EEG signal preprocessing such as detrending, filtering and other typical utilities. It also comes with several BCI algorithms based on the main BCI paradigms, such as SSVEP and P300. Please refer to the API documentation for more information on the algorithms and the needed EEG setups as they may be different for specific algorithm.

API


BrainAccess SDK can be interfaced through C, C++ and Python API. Python API is provided as a BrainAccess Python package and should be installed using pip.

Documentation for C/C++ and Python API can be found on the respective pages below:

Installation


Download Windows installer for BrainAccess SDK 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 SDK. 

System requirements​


  • Windows 10 or newer and Ubuntu 18.04 or newer are supported.