Contributions:DAS ADC

From BCI2000 Wiki
Jump to: navigation, search


The DAS_ADC component handles A/D boards from Measurement Computing (previously called ComputerBoards).




Source Code Revisions

  • Initial development: <46
  • Tested under: 1531
  • Known to compile under: 1531
  • Broken since: --

Functional Description

Boards with large data buffers (FIFOs) such as the PC-Card-DAS16/16 are supported. Previous versions could not handle a situation where the board's FIFO would hold more than twice the amount of data corresponding to a sample block (as determined by the settings in the parameters SampleBlockSize and SourceCh); instead of immediately sending each block to the signal processing module, it would wait for multiple blocks to arrive before sending all of them within a short period of time. This has been fixed now.

NOTE: To support boards with large data buffers (FIFOs), the DAS_ADC source module internally chooses a higher board sampling rate, and downsamples the recorded signals to obtain the sampling rate and sample block size set from BCI2000. There is no low-pass filter applied prior to downsampling, so you should make sure that the input to the ADC board is low-pass filtered accordingly. Typically, when the input to the ADC board is the output of an EEG amplifier, this is already the case.

Support for 12-bit boards (untested). The previous version would handle data from 12-bit boards as if it were 16-bit data, i.e. it would output the data multiplied by 16, and treat the least 4 bits as data instead of the channel number they actually contain. If you corrected for this using the SourceChGain and SourceChOffset parameters you should adapt these settings to the new behavior.


The DAS source module uses Measurement Computing's system wide driver and configuration files. If there is an error message saying that loading the DLL failed, you need to download and install a recent version of InstaCal from (free of charge), and then use it to configure your board.

For the source module to work properly, you need to delete any files cbw32.dll and cb.cfg from the directory containing the source module. It would also be a good idea to delete all other files called cbw32.dll and cb.cfg, except the ones located in the directory where Measurement Computing's InstaCal.exe resides (usually C:\mmc or C:\Program Files\mmc).

Boards Tested

Board names as displayed by the InstaCal program:




The A/D Board number as displayed by the InstaCal program.


A/D input range in Volts, e.g. -5 5 or 0 10. Only certain values are supported, depending on the board used.



See also

User Reference:Filters, Contributions:ADCs