Contributions:NIDAQLogger
Synopsis
National Instruments Data Acquisition Module
Location
Not yet in the repository. (It would be in the following directory: http://www.bci2000.org/svn/trunk/src/contrib/SignalSource/NIDAQLogger)
Versioning
Author
Justin Renga (justin.renga@gmail.com)
Version History
Source Code Revisions
- Initial development: --
- Tested under: --
- Known to compile under: --
- Broken since: --
Functional Description
Acquires/Generates signals to/from National Instruments Data Acquisition boards, other devices, and the computer. Device must be connected to computer beforehand.
Parameters
Command Line Parameters
Initializing NIDAQLogger
To begin using the NIDAQLogger module, use the --LogNIDAQ flag (on SignalGenerator.exe), set equal to 1.
To activate device(s) for specific functions, use the following flags:
--LogNIDIO(for digital input/output)--LogNIAI(for analog input)--LogNIAO(for analog output)
The format for the inputs for the above flags is as follows: [flag]="[device name]-[port specification]"
Note that if --LogNIDAQ is used, that at least one of the three above flags MUST be used.
Device Specification
The device name (usually) is to be written as "dev1" or "dev2" (without the ""). Afterwards, use a - to indicate the device name is finished.
Digital Port Specifications
There are three acceptable states that the user can specify for each digital port:
- 0 - this indicates the port is INACTIVE.
- 1 - this indicates the port is to be used as INPUT
- 2 - this indicates the port is to be used as OUTPUT
Analog Port Specifications
There are two acceptable states that the user can specify for each analog port (both input and output):
- 0 - this indicates the port is INACTIVE
- 1 - this indicates the port is ACTIVE
Example
Here is an example on the correct usage of the command line parameters:
SignalGenerator.exe --LogNIDAQ=1 --LogNIDIO="dev1-000100200100" --LogNIAO="dev1-10"
BCI2000 Parameters
If either the --LogNIAI or the --LogNIAO flags are used, there will be a parameter in the configuration box (under Source)
that will allow users to specify the voltage range they want the device to work under. There will be as many range parameters as there are devices connected
that use analog functionality. It will be labeled as dev#VRanges, where # represents the device number.
States
The states that are available are dependent on the port specifications declared in the command line parameters. The format for the states is the following:
NIdev#[A:D][INPUT:OUTPUT]#
- The first # refers to the device number.
- The second # refers to the line number (starting at 0).
- The [A:D] denotes if the state refers to an analog (A) or a digital (D) channel.
If the user specifies --LogNIDIO="dev1-000100200100" as a parameter, then the states that will be created are the following:
- NIdev1DINPUT3
- NIdev1DOUTPUT6
- NIdev1DINPUT9
The similar states are generated for both analog input and analog output.