top of page
BrainFlow Signal

BrainFlow Signal

Category:

AddIn:

Scope:

Code Snippets:

Supports Material List:

Status Screen Widgets:

License:

Signal Acquisition

BrainFlow BioBoards

Global

no

no

no

Standard EventIDE license

In this article:


Introduction


The BrainFlow Signal element provides a direct connection between EventIDE and a wide range of biosignal acquisition boards supported by the BrainFlow library, such as EEG, EMG, and ECG devices. It enables real-time data streaming, configuration of acquisition parameters, and integration of signals into EventIDE’s analysis pipeline.


This element is ideal for neuroscience, psychophysiology, BCI, and biomedical experiments requiring synchronized biosignal input. It can also emulate signals for testing purposes when hardware is not connected.


Main Features


  • Direct BrainFlow Integration – Supports a wide range of EEG, EMG, ECG, and other biosignal boards.

  • Multiple Connection Modes – Configure serial, TCP/IP, or file-based streaming.

  • Signal Generator – Simulate biosignals for development and testing without hardware.

  • Channel Selection – Choose which channels are registered in EventIDE’s signal pool.

  • Runtime Control – Reset buffers and acquisition without restarting the experiment.


Supported Bio-Amplifiers

OpenBCI Cyton (EEG/EMG/ECG)

OpenBCI Cyton Daisy (EEG/EMG/ECG)

OpenBCI Ganglion (EEG/EMG/ECG)

OpenBCI Cyton (Wi‑Fi) (EEG/EMG/ECG)

OpenBCI Ganglion (Wi‑Fi) (EEG/EMG/ECG)

BrainBit (EEG)

Callibry (EMG/ECG/RESP)

g.tec Unicorn Hybrid Black (EEG)

Neurosity Crown (EEG)

OYMotion gForcePro Armband (EMG/IMU)

FreeEEG32 (EEG)

Muse S (EEG/PPG/ACC)

Muse 2 (EEG/PPG/ACC)

Muse 2016 (EEG/ACC)

ANT Neuro eego mylab (EEG)

Enophone (EEG)

BrainAlive Headset (EEG)

Mentalab Explore 4ch (EEG)

Mentalab Explore 8ch (EEG)

EmotiBit (EDA/PPG/ACC/TEMP)

PiEEG (EEG/EMG/ECG)

Properties

Name

Description

Property Class

Type

Query Board Info

Retrieves and displays information about the selected board.

Design

String

Board Model

Defines the model of the selected board.

Design

Int32

Board Preset

Defines the index of the board preset, when supported.

Design

Int32

COM Port

Name of the serial port, if the board is connected via COM.

Design

String

Timeout (ms)

Connection timeout in milliseconds.

Design

Int32

IP Protocol

Network protocol (e.g., 0 for IP_TCP).

Design

Int32

IP Address

Board IP address for network connection.

Design

String

IP Port

Network port number.

Design

Int32

Ancillary IP Port

IP port number for ancillary communication.

Design

Int32

Auxiliary IP Port

IP port number for auxiliary communication.

Design

Int32

MAC Address

Board MAC address.

Design

String

Master Board ID

ID of the master board.

Design

Int32

Serial Number

Serial number of the board.

Design

String

Data File

Path to the main data file.

Design

String

Auxiliary Data File

Path to the auxiliary data file.

Design

String

Ancillary Data File

Path to the ancillary data file.

Design

String

Signal Generator

Enables generation of synthetic signals instead of using hardware. Useful for test runs.

Design

Boolean

Emulated Sampling Rate

Sampling rate (Hz) for emulated or file-streamed data.

Design

Double

Primary Frequency

Frequency (Hz) of the primary rhythm in the generated signal. Set to 0 to exclude.

Design

Double

Secondary Frequency

Frequency (Hz) of the secondary rhythm (half the magnitude of the primary). Set to 0 to exclude.

Design

Double

Noise Level

Noise level (% of primary frequency magnitude) added to the generated signal. Set to 0 to exclude noise.

Design

Double

Selected Channels

List of channels selected for acquisition in EventIDE. These are registered in the signal pool.

Design

List`1

Selected Channel Count

Number of currently selected channels.

Status

Int32

Total Channel Count

Total number of channels available for acquisition.

Status

Int32

Buffer Size

Size (samples) of the circular buffer storing incoming data.

Design

Int32

Reset Signals Now

Runtime command to reset signal buffers and data acquisition.

Runtime Command

Boolean

Is Enabled

If set to false, the element is completely omitted when the experiment is run.

Design

Boolean

Title

Title of the element.

Design

String


Practical Use


Live Biosignal Acquisition

  1. Connect a BrainFlow-supported board and configure the Board Model and Connection Settings.

  2. Select channels in Selected Channels to make them available for analysis.

  3. Stream the data in real time into EventIDE’s signal processing elements.


Signal Emulation for Testing

  1. Enable Signal Generator.

  2. Configure Emulated Sampling Rate, Primary/Secondary Frequencies, and Noise Level.

  3. Run experiments without requiring connected hardware.


Notes


  • Use Reset Signals Now to clear buffers if acquisition needs to restart mid-experiment.

  • The Signal Generator mode is helpful for debugging experiment logic before moving to real hardware.

  • For high-frequency sampling, ensure Buffer Size is large enough to prevent data loss.


Example


You might select EEG channels 1 or 2 in Selected Channels, enable the Signal Generator for pre-testing, and later switch to a live board model with identical acquisition parameters to ensure a seamless transition to hardware recording.

bottom of page