*.exe.config
See Also: Sample ODIS.exe.config File
The exe.config file is an XML file created along with the ODIS application. The features referenced in the file are usually set once on installation and left in place. However, as the features may require modification, a user can edit some of the features as needed.
appSettings
The file has several subsections, only the appSettings section should be altered by the user.
The exe.config file is used to store configuration information about ODIS and other programs. The file will be named the same as the application, e.g. if the application is "ODIS_NDT.exe", the configuration file will be called "ODIS_NDT.exe.config". The file is an XML file and can be edited in a text editor.
AppSettings, i.e. Application Settings, is the section in the file that is used to configure ODIS and to identify the Token File to be used to activate the program. The settings are configured as key/value pairs.
System Settings
RestoreParameters
factory use only
<add key="RestoreParameters" value="true"/>
TokenFile
The name of the token file used to activate ODIS. The name must match the Token file name exactly.
<add key="TokenFile" value="Token.xml"/>
OperatingUnits
Sets the base physical units in which ODIS will run. Possible values are "mm" (millimeters) and "in" (inches).
<add key="OperatingUnits" value="mm"></add>
Directories
These keys set common directory locations for data files.
Dir_Working
Sets the Working directory for ODIS. This is the location where Scan data is stored.
Note: This directory can be overridden by the "Set Working Directory" menu option. See Main Menu.
<add key="Dir_Working" value="C:\OKOS\ODIS_DATA\Scans"></add>
Dir_Parameters
Sets the Parameters directory for ODIS. This is the location where parameter files are stored.
<add key="Dir_Parameters" value="C:\OKOS\ODIS_DATA\Scans"></add>
Dir_Temp
Sets the Temporary directory for ODIS. This is the location where temporary files are created. Any files left behind in this directory can be deleted once ODIS exits.
<add key="Dir_Temp" value="C:\OKOS\ODIS_DATA\Temp"></add>
Dir_Palette
Sets the directory where Palette files are stored.
<add key="Dir_Palette" value="C:\OKOS\ODIS_DATA\Palettes"></add>
Dir_ScanMath
Sets the directory where ScanMath code is stored. All code in this directory must be compilable by the C# runtime, otherwise errors may occur when using the Scan Math features of ODIS.
<add key="Dir_ScanMath" value="C:\OKOS\ODIS_DATA\ScanMath"></add>
Dir_Transducers
Sets the directory where Transducer information is stored. This information is edited in the Transducers menu item.
Dir_Reports
Sets the directory where report stylesheets are stored. This includes both Cascading Style Sheets (CSS) and XML transforms (XSLT).
<add key="Dir_Reports" value="C:\OKOS\ODIS_DATA\Reports"></add>
A/D Settings
These keys are use for configuration of any A/D devices.
Board[n]
Board[n] keys determine the board ordering when loaded into ODIS, where "n" is the 0-based index. These are only used if the IGNORE tag is set to false. There can be multiple Board[n] tags in the file. The value attribute for the tag is the board serial number. The serial number or numbers must match those of the A/D boards in the system.
These tags must be present if the IGNORE tag is set to false. If a listed serial number does not match an existing board, an error will occur.
<add key="Board0" value="1103883" /> <add key="Board1" value="1103880" />
DisableHW
This will disable all hardware A/D boards in the system. Only software A/Ds (Shell and Post-Processing) will be shown.
If this key is missing, the DisableHW value is false.
<add key="DisableHW" value="true" />
DisableRTG
This will disable hardwareRTG gating. If RTG disabled, the user will gain two additional simultaneous peak detection gates. This applies only to 8xGTe boards for which RTG is enabled.
If this key is missing, the DisableRTG value is false.
<add key="DisableRTG" value="false" />
HIGHSPEED
Some Acquisition Logic boards can default to a lower sampling rate than the native sampling rate, in cases where the full sampling rate is unnecessary or generates too much data to process. if the HIGHSPEED tag is present and the value attribute is set to false, the board will operate at the reduced sampling rate.
If this key is missing, the HIGHSPEED value is true.
<add key="HIGHSPEED" value="false"></add>
IGNORE
In systems with multiple A/D boards, it is sometimes desireable to enforce a board order in ODIS, so that a particular A/D always shows as channel 1, another as channel 2, etc. (the PCI bus does not enforce a particular order). If the IGNORE tag is present and set to false, the system will use the Boardx tags to determine the order in which the A/D boards should appear in ODIS. If IGNORE is set to true, A/D boards will be loaded and presented in the order in which the PCI bus finds them.
If this key is missing, the IGNORE value is true.
If there is only one A/D board in the system, this parameter is not used.
<add key="IGNORE" value="true"></add>
PostProcessor
If this key is present and the value attribute is set to true, a Post Processing channel will be added to ODIS.
See Also: Post Processing
If this key is missing, the PostProcessor value is false.
<add key="PostProcessor" value="true"></add>
PostProcessSN0
This sets a serial number for the postprocessor. This number can be referenced by the Boardx tag to set the order of the post-processing "board" in the Digital Oscilloscope. The serial number must not match any numbers used by A/D boards or by Shell boards.
If this key is missing, the PostProcess serial number is 0.
<add key="PostProcessSN0" value="1111"></add>
ShellSN[n]
This sets serial numbers for the Shell boards, where "n" is the 0-based index. This number can be referenced by the Board[n] tag to set the order of the shell channels in the Digital Oscilloscope. The serial numbers must not match any numbers used by A/D boards or by the Post Processor.
If these keys are missing, each shell board is given a sequential serial number starting with 0.
<add key="ShellSN0" value="111"></add> <add key="ShellSN1" value="222"></add>
UseShell
If this key is present, one or more simulated A/D "boards" will be added to ODIS. Any number of boards can be added, but in practice more than three will cause system lag. The value attribute specifies the number of simulated boards. To specify the order in relation to other boards, use the ShellSnx tag.
See Also: Simulation Mode
If this key is missing, the UseShell value is 0.
<add key="UseShell" value="1"></add>
DPR Settings
These keys are used to set the type and communications mode with any Digital Pulser/Receivers (DPRs) attached to the system.
Multiple DPRs of the following two groups can be configured using only basic settings.
- DPR35G, DPR300, DPR500
OR
- PureView, DPR650
Multiple DPR types from different manufacturers or between the above groups are supported by adding additional DPR tags with a numeric postfix. The first postfix value past the first tag is 2. Examples are shown in the individual tag descriptions below.
PRType[n]
This tells ODIS which type of DPR to configure. Most DPRs also require an entry describing the ports used for communication (see Pulser Configuration Settings). Current recognized types are:
| Tag | Description |
|---|---|
| DPR650 | JSR DPR650 |
| DPR500 | JSR DPR500 |
| DPR300 | JSR DPR300, all configurations |
| PR5800 | Panametrics 5800 |
| PR5900 | Panametrics 5900 |
| DPR002 | JSR DPR002, uses special serial control |
| DPR35 | JSR DPR35, uses special serial control |
| DPR35G | JSR DPR35G |
| UPRS | PVA TePla UPRS800 or UPRS1000 |
| UTEX | UTEX-340 |
| PureView | PureView USB P/R |
| Shell | Creates a dummy Pulser/Receiver shell for simulation modes |
| Multi | Used in systems with multiple Pulser/Receivers |
| None | No Pulser/Receiver window will be displayed |
Use “None” or “Shell” if using a Pulser/Receiver that is not controlled digitially.
<add key="PRType" value="Shell"></add>
If more than one DPR type is present, "n" represents the index of the next device. minimum value is 2. First postfix is always blank.
<add key="PRType" value="DPR300"></add> <add key="PRType2" value="UTEX"></add>
The first tag will always be "PRType" (no postfix).
PRIOHW[n] (was: IOHW)
Sets the type of I/O used to communicate with the DPR, if any. Applies to DPR002 and DPR35 only. Ignored for other DPR types. Current values are:
- ETH32
- Winford ETH32
- IO24
- Elexol I/O Controller
Other types will be added as supported.
<add key="PRIOHW" value="ETH32"></add>
If more than one DPR type is present, "n" represents the index of the next device. minimum value is 2. First postfix is always blank.
<add key="PRIOHW" value="ETH32"></add> <add key="PRIOHW2" value="IO24"></add>
PRIPAddress[n] (was: IPAddress)
Optional IP Address with which to communicate with the DPR, or the I/O hardware used to talk to the DPR, if necessary. The IP address should be in standard format “XXX.XXX.XXX.XXX”, where “XXX” is from 0 to 255.
<add key="PRIPAddress" value="192.168.1.1"></add>
If more than one DPR type is present, "n" represents the index of the next device. minimum value is 2. First postfix is always blank.
<add key="PRIPAddress" value="192.168.1.1"></add> <add key="PRIPAddress2" value="192.168.1.2"></add>
NumPulsers[n]
If using multiple DPRs of the same group, this lists the number of DPRs expected. If not present, the number of DPRs is assumed to be one.
<add key="NumPulsers" value="3"></add>
If more than one DPR type is present, "n" represents the index of the next device or device group. minimum value is 2. First postfix is always blank.
<add key="NumPulsers" value="3"></add> <add key="NumPulsers2" value="1"></add>
PRPort[n] (was:Port)
Sets the communication (COM) port used to control the DPR, for DPR types that use a Serial port. Ignored for DPRs using IP addresses. Current values are:
- COMx
- Sets the COM port to use, where "x" is the assigned serial port (e.g. "COM3")
- Simulate
- tells the system to create the control for the DPR but will only simulate hardware communications. If simulation is active the NumPulsers key will be used to determine how many DPRs to simulate, and the PRType key will determine the type of DPR.
<add key="PRPort" value="COM1" />
If more than one DPR type is present, "n" represents the index of the next device. minimum value is 2. First postfix is always blank.
<add key="PRPort" value="COM1" /> <add key="PRPort2" value="COM2" />
Motor Settings
Scan Settings
Server Settings
These keys are used when running ODIS as a communication server.
ServerIP
This defines the IP address used when ODIS is configured as a server.
<add key="ServerIP" value="127.0.0.1"/>
ServerPort
This defines the port used by ODIS when configured as a server.
<add key="ServerPort" value="8800"/>
ServerID
A User-defined string identifying this instance of ODIS. Can be used to distinguish between ODIS servers if more than one system is present.
<add key="ServerID" value="ODIS"/>
BroadcastIP
The IP Address used by the ODIS server to broadcast messages.
<add key="BroadcastIP" value="127.0.0.1"/>
Other Settings
This key defines the IP address for the LightPole attachment (if any), and the IP and hardware for I/O Communications (if any). When I/O Communications are enabled, an IOConfig file should also be present.
LightPoleIPAddress (was: IPAddress)
IP Address with which to communicate with the Lightpole, or the hardware used to talk to the Lightpole. The IP address should be in standard format “XXX.XXX.XXX.XXX”, where “XXX” is from 0 to 255.
<add key="LightPoleIPAddress" value="192.168.1.1"></add>
CommDevice
Type of Communications Deviced used to send I/O. Current possible values are "ETH32".
<add key="CommDevice" value="ETH32"/>
CommIPAddress (was: IPAddress)
IP Address with which to communicate with the I/O hardware. The IP address should be in standard format “XXX.XXX.XXX.XXX”, where “XXX” is from 0 to 255.
<add key="CommIPAddress" value="192.168.1.1"></add>
Settings that were previously in other files
Recently, ODIS has been updated so most configuration settings are located in the exe.config file. The referenced files below show the features that have been imported into the appSettings section.
References to the old files can be found here. These are deprecated and will no longer be used in the future.