From BCI2000 Wiki
Jump to: navigation, search


The gSTIMbox is a digital signal acquisition device with 14 digital inputs and 16 digital outputs. This page currently serves as a technical specification to a future module.






Paul Ignatenko (paul dot ignatenko at gmail dot com)

Functional Description

Allows the gSTIMbox to run as a co-Source module, allowing you to monitor inputs, and trigger outputs.


Compile the gSTIMbox module using CMake and your compiler.



The output trigger list is a matrix, where each row is an entry binding an output channel to a trigger. All fields in this matrix are required. The channel corresponds to output channels on the gSTIMbox. The table below describes the function of the other matrix parameters.

  • Channel -- output channel of gSTIMbox (1-16)
  • TriggerType -- The type of trigger, see table below.
  • TriggerName -- The identifier of the trigger. Values dependent on TriggerType, see table below.
  • Threshold -- Threshold to quantify if a output is in the triggered state. Values dependent on TriggerType, see table below.

Allowed of TriggerTypes Meaning Allowable TriggerName for TriggerType Allowable Threshold for TriggerType Triggered When
0 gSTIMbox Input Channel 1-14 corresponding to gSTIMbox Inputs 1 or 0 channel value == threshold value
1 EEG Input Channel 1 - Signal Channel Size, corresponding to EEG channels a BCI2000 recognized voltage (e.g. 125mV) channel value >= threshold value
2 State With Equality Threshold Valid State Name any integer value state value == threshold value
3 State With Inequality Threshold Valid State Name any integer value state value >= threshold value

Below is an example OutputTriggerList which triggers the first output channel on the first input channel of the gSTIMbox when the value is 1, the second output channel on the first EEG channel when the value is greater than or equal to 125 mV, the third output channel when the space bar is pressed, the fourth output channel when the value of SomeState is greater than or equal to 13.

Channel TriggerType TriggerName Threshold
1 0 1 1
2 1 1 125mV
3 2 KeyDown 20
4 3 SomeState 13


A matrix that describes output port states, and how they react to being triggered.

  • Channel -- Output Channel of the gSTIMbox
  • State -- 0 or 1 meaning port disabled or port enabled respectively
  • Mode -- 0 or 1 meaning on off mode or frequency modulation mode respectively
  • Freq -- 1-50, integer number of Hz port is modulated on if mode is 1.
  • Default(State/Mode/Freq) -- When a port is not triggered this sets its (State/Mode/Freq)
  • Triggered(State/Mode/Freq) -- When a port is triggered by the OutputTriggerList this sets its (State/Mode/Freq)


Channel DefaultState DefaultMode DefaultFreq TriggeredState TriggeredMode TriggeredFreq
1 1 0 0 0 0 0
2 0 0 0 1 0 0
3 1 1 30 1 1 50
4 1 0 0 1 1 15

See also

User Reference:Filters, Contributions:ADCs