# Hardware Configuration Files

Important: Use the information described in this page carefully.

### Introduction

SuperLab uses configuration files to describe the features of hardware products, e.g. response pads and I/O cards. These files are stored in the Plug-Ins/Config folder within the SuperLab folder. Here is an example:

[DeviceInfo] DeviceID = 10 DeviceName = PCI-DIO24 [Port0] PortName = Port A NumberOfLines = 8 BitFormat = Parallel DefaultIoDirection = Input IoDirectionChangeablePerGroup = Yes IoDirectionChangeablePerLine = No UseableAsDigitalOutput = No UseableAsResponse = Yes [Port1] PortName = Port B NumberOfLines = 8 BitFormat = Parallel DefaultIoDirection = Output IoDirectionChangeablePerGroup = Yes IoDirectionChangeablePerLine = No UseableAsDigitalOutput = Yes UseableAsResponse = No

### The [DeviceInfo] Section

The [DeviceInfo] section is required and accepts the following keywords. Both are required:

Keyword | Values | Default Value
DeviceID | 1000-1999 for Measurement Computing devices 2000-2999 for National Instruments devices 3000-3999 for Cedrus Corporation XID devices | None, it is required
DeviceName | A text string, e.g. "PCI-DIO24" or "RB-530" | None, it is required

The following keywords apply only to XID devices (e.g. RB-730, SV-1, or Lumina):

Keyword | Values | Default Value
XidProductID | Device ID stored internally, returned by the XID "_d2" command | None, it is required
XidModelID | Model ID stored internally, returned by the XID "_d3" command | None, it is required

### The [PortN] Sections

You can have as many [PortN] sections as necessary, with N starting at zero, e.g. [Port0], [Port1], and so forth. The numbering is important because this is what SuperLab uses to "talk" to the I/O device.

The following tables summarizes the keywords that SuperLab recognizes. None of them are required:

Keyword | Values | Default Value
PortName | A text string, e.g. "Port A" or "Accessory Connector" | The same as the section name, e.g. "Port1"
NumberOfLines | The number of lines for this port (1 to 8) | 8
BitFormat | Parallel or Serial | Parallel
DefaultIoDirection | Input or Output | Output
IoDirectionChangeablePerGroup | Yes or No. If Yes, this port's lines can be configured as either input or output as a set | No
IoDirectionChangeablePerLine | Yes or No. If Yes, individual lines within this port can be made as either input or output | No
UseableAsDigitalOutput | Yes or No. If Yes, this port will appear in the Event Editor dialog when the user sets the event type to "Digital Output" | No
UseableAsResponse | Yes or No. If Yes, this port will appear in the Participant Input dialog when the user chooses to create a response | No
IoLinesPrefix | A text string, e.g. if you set the value to "PA", the names of the I/O lines in SuperLab will appear as "PA0", "PA1", and so forth. | None
IoLinesBaseNumber | The first number to use in an I/O line's name, e.g. if you set the value to 1 and the value of IoLinesPrefix to "AC", the lines will be named "AC1", "AC2", etc. | 0 if this keyword has never been used, otherwise it is the last value specified
DebouncingTime | The time during which SuperLab should ignore all input on an I/O after input has been detected. | 0

### File Names

Configuration files must have the extension ".devconfig". When starting up, SuperLab looks for the following file patterns in the Plug-Ins/Config folder within the SuperLab folder:

- Measurement Computing *.devconfig (Windows only)

- XID *.devconfig