Jump to content

Contributions:BrainFlow: Difference between revisions

From BCI2000 Wiki
Rlellis (talk | contribs)
No edit summary
Rlellis (talk | contribs)
Line 16: Line 16:
(please follow [https://www.youtube.com/watch?v=91SGaK7_eeY this] tutorial if you are unsure how to do this). After pressing enter, the release libraries will begin downloading--at this point you will now be asked to add the directory to the release libraries to your systems path ({BCI2000 Folder}\src\extlib\brainflow\installed\lib), done in the same manner as with the debug libraries.
(please follow [https://www.youtube.com/watch?v=91SGaK7_eeY this] tutorial if you are unsure how to do this). After pressing enter, the release libraries will begin downloading--at this point you will now be asked to add the directory to the release libraries to your systems path ({BCI2000 Folder}\src\extlib\brainflow\installed\lib), done in the same manner as with the debug libraries.


Make sure under "BUILD" that "BUILD_ALL_SOURCEMODULES" is selected. In the batch file to be used, append '''start executable BrainFlowADC --local''' to the line corresponding to the source module.
In CMake, make sure under "BUILD" that "BUILD_ALL_SOURCEMODULES" is selected. In the batch file to be used, append '''start executable BrainFlowADC --local''' to the line corresponding to the source module.


==Parameters==
==Parameters==

Revision as of 21:51, 29 March 2024

Synopsis

This module integrates the data aquistion capabilities from BrainFlow into BCI2000, allowing for compatibility with several new boards.

BrainFlow Installation/Setup

Before installation, please install git bash and python.


Automatic Installation

Note that instillation will take around 500MB

Libraries generated from BrainFlow are needed for this module, which requires the user to download and build the project. The download process (and configuring the solution) can be automated using this scripts located in SignalSource\BrainFlow:

All that needs to be done to use this scripts is: locate them in {BCI2000 Folder}\src\contrib\SignalSource\BrainFlow, and double click on "BrainFlowInstall.bat". This will clone the BrainFlow repository into the src\extlib. The script will build libraries for both debug and release configurations, so there will be two folders installed. After the first set of libaries (for debug config) are installed, you will be told to add the directory {BCI2000 Folder}\src\extlib\brainflowDebug\installed\lib to your systems PATH (please follow this tutorial if you are unsure how to do this). After pressing enter, the release libraries will begin downloading--at this point you will now be asked to add the directory to the release libraries to your systems path ({BCI2000 Folder}\src\extlib\brainflow\installed\lib), done in the same manner as with the debug libraries.

In CMake, make sure under "BUILD" that "BUILD_ALL_SOURCEMODULES" is selected. In the batch file to be used, append start executable BrainFlowADC --local to the line corresponding to the source module.

Parameters

BoardID

Identifier for the board in use, compatible with any board able to be used with BrainFlow.

RecordingChannels

Sets which board channels will be used for data acquisition. Some boards will not have all listed channel types, in which case no data will be collected from such types. If channels are found and ChannelNames is set to auto, listed channels will be given their designated names.


The following information might not be needed for specific boards. Search for your board here to see what parameters are necessary 

COM

Specifies the port the device is connected to (this must be found by the user--the program will not search ports to find which the device is connected to. Open your systems device manager to determine this) if needed. If not needed, leave as auto.

MAC

Specifies the MAC address of the device if needed. If not needed, leave as auto.

IPPort

Specifies the address of an IP port if needed. If not needed, leave as auto.

SerialNumber

Specifies the serial number of the device if needed. If not needed, leave as auto.