Appendix B - Error Codes

The following list identifies error codes by category. Codes may apply universally or to only a particular board type.

Error Value
Cause/Symptom
Solution
RESOURCE ERRORS:
0
No Error
 
-2000
Unable to allocate the necessary memory.
There is not enough memory for the DIO Driver to operate. Close other applications to free up more memory.
-2001
Too many open files.
More than eight DIO files are open. Close one or more as needed.
-2002
The specified file name could not be found in the given path.
Check the file name, path and access rights.
-2004
The file could not be opened for Read-Only since its attributes are not set properly.
Check file properties, one or more of the following file properties are not set correctly:
The file attribute should be Read-Only.
The file attribute should not be Hidden or System.
-2005
The file could not be opened for read/write since its attributes are not set properly.
Check file properties, one or more of the following file properties are not set correctly:
The file attribute should not be Read-Only, Hidden or System.
-2006
Source and destination paths and file names are the same.
Change the destination path or file name.
-2007
One or more of the specified file paths are invalid.
Change the file path.
-2009
Unable to delete temporary DIO file.
The driver was unable to delete the temporary DIO file created using DIOEasy 1.x.
Delete the temporary file, named “~temp.dio”, that resides in the same directory as the problem file.
-2020
A board handle is specified, but a DIO File board handle is required.
The driver function can only accept a File board handle. Use another function or use a DIO File board handle.
-2021
Unable to invoke WinHelp.
“Windows Help“ could not be invoked. Check for the existence of WinHelp.exe in the Windows or WinNT folder, as appropriate for the operating system.
-2022
The string is too short.
Increase the string length or set it to 255.
-2026
Valid configuration must be set before initializing this master.
Use the front panel to create new configuration file.
-2028
The driver was unable to find Windows directory.
 
-2029
Invalid OS version.
 
PARAMETER ERRORS:
-3000
Invalid parameter
A parameter passed to the specified function is invalid. The cause may be one of the following:
Wrong type (for example, float instead of long).
Out of range (for example, valid values are 0 or 1 and 2 is passed).
A NULL pointer is assigned instead of a valid one.
-3001
The Master board number is out of range.
Master indices range from 0 to 15 (16 allowed).
-3002
A domain Slave board number is out of range.
Slave numbers range from 1 to 7. Number 0 is always reserved for the Master board.
-3003
The number of memory module banks is out of range.
Total installed memory banks range from 1 to 4.
-3004
The memory module density is out of range.
Memory density ranges from 0 to 2.
-3005
Invalid base address.
Valid base addresses range from 0x100 to 0xFFFF.
-3006
Invalid board or File board handle.
The handle passed to a function is invalid. Use the  “DioGetSlaveHandle” or “DioFileGetBoardHandle” function to retrieve the correct handle.
-3007
This function is not supported for the specified board.
A called function is not supported for the specified board. See the Function Reference section in your Software User Guide and Function Reference manual to determine the supported functions.
-3008
Invalid file type.
The given file could not be identified. Check if the file is corrupted or needs to be converted.
-3009
Invalid board handle.
The given handle is not a valid board handle. Use “DioGetHandle” to a valid handle for he specified board number.
-3010
Parameter is out of range.
 
-3011
Invalid Interface Standard Level value.
 
-3012
Specified External Frequency is out of the allowed range
 
-3014
Unable to detect the 3.0 Reference Voltage.
 
-3015
Unable to detect the 3.3 voltage supply.
 
-3016
Unable to detect positive voltage supply.
 
-3017
Unable to detect negative voltage supply.
 
-3100
Invalid calibration mode
 
-3101
Bad or Wrong board EEPROM
 
MAIN BOARD ERRORS:
-4000
A board type could not be detected at the given base address.
Check the DIP Switch base address setting for the DIO board. Make certain the board is configured with that base address specified and that this does not conflict with any other board’s base address. Change the base address to resolve conflicts. See the appropriate hardware user guide for the specified board DIP Switch setting.
If the board is installed in a GTXI chassis, then check that the specified base address is enabled (using GTXI.CFG). Check that the carrier board DIP Switch is set correctly.
-4001
This function requires a Master board handle.
The function was called with a Slave handle instead of a Master handle. See the Function Reference section in the Software User Guide and Function Reference to find out which functions apply to a Master and which to a Slave.
-4002
Invalid attempt to initialize a Master board as a Slave.
A Master board cannot be initialized or used as a Slave. Check the base address and the DIP Switch settings of the DIO board.
-4003
A specified Slave cannot be associated with the specified Master handle.
Check the Slave board number. Call the “DioSetupinitialization” function to add a missing Slave to the DIO domain, or use the Configuration panel in the GTDio Panel in order to add a Slave board.
-4004
The write/read command tries to access memory past its configured depth.
Attempts to write/read to DIO Data or Control Memory beyond the available physical memory. This error is trapped before invalid data is stored or retrieved. Check the code. Add memory to DIO boards as needed.
-4005
Incompatible memory size.
The DIO board could not be initialized since it contains different SIMM densities. SIMMs of different capacity (density) cannot be mixed on a board. SIMMs can be different for each board.
-4006
Bank 0 is not installed.
Memory Bank 0 could not be detected on the DIO board. Any DIO board must have bank (0) installed.
-4007
The Program Counter value is out of range.
Make sure the Program Counter specifies an address within the range of physical memory. Add additional memory as required.
-4008
Control Memory is not installed.
Control Memory must be installed for DIO to operate.
-4009
I/O board direction is invalid.
Set the DIO direction to “input” before calling the “GetIOPins” function.
-4010
The Program Counter value does not reside on 32-bit boundaries.
Check the following:
If the width is 32 bits, then the Program Counter value modulo 2 must be zero.
If the width is 16 bits, then the Program Counter value modulo 4 must be zero.
If the width is 8 bits, then the Program Counter value modulo 8 must be zero.
-4011
Mismatching board types are not allowed.
Adding a Slave to a Master in another DIO family is not allowed.
-4012
The memory module(s) was not installed in consecutive slots.
Check that the all memory modules are installed in consecutive slots, for example, bank 0, 1, 2 etc.
-4013
Unrecognized SIMM was detected.
 
-4014
Invalid I/O width.
 
-4015
Data could not be written correctly to the specified address.
 
-4016
Could not find Master board.
 
-4017
Unable to find DIO board.
 
-4018
In memory not installed
 
-4019
Out memory not installed
 
-4020
Illegal timeout or not enough time to finish the operation.
 
-4021
Groups directions needs to be all inputs or all outputs.
 
-4022
Invalid Signal Active Mode.
 
-4100
Unable to set the Control Memory register.
These are hardware problems. The specified register cannot be set properly. Check for a conflict with another installed device in the specified DIO domain. Call Marvin Test Solutions Technical Support for assistance.
-4101
Unable to set the Path register.
 
-4102
Unable to set the Control register.
 
-4103
Unable to set the Data Memory value.
 
-4104
Unable to Reset the DIO Board.
 
-4105
Unable to reset Timing board.
 
-4106
Invalid command operation code
 
-4107
Invalid command register
 
-4108
Invalid command condition
 
-4109
Invalid command address
 
-4110
Invalid command bit number
 
-4111
Invalid Loop command start address, the address must be an even number.
 
-4112
Invalid Loop command end address, the address must be an odd number.
 
-4113
Invalid Firmware
These are hardware problems. Check for a conflict with another installed device in the specified DIO domain. Call Marvin Test Solutions Technical Support for assistance.
-4200
GX5150 Data memory failed self-test.
 
-4201
GX5150 Control memory of failed self-test.
 
-4202
GC50050 Memory In failed self-test.
 
-4203
GC5050 Memory Out failed self-test.
 
-4204
Direction memory failed self-test
 
-4205
Valid data memory failed self-test
 
TIMING MODULE ERRORS:
-5000
Arm command fails.
Executing the ARM command failed. One of the following may be the cause:
Using an external clock with no signal present.
TBD
-5001
This command requires that boards be in the PAUSE state.
Call “DioPause” function before calling the command that failed.
-5002
Halt command failed.
Executing the HALT command failed. One of the following may be the cause:
TBD
-5003
The Step command was unable to pause the boards after running the designated steps.
Possible causes are:
The External Trigger Event/Mask setting caused the board to trigger.
The Sequencer encountered a command that caused it to enter the RUN mode.
-5004
Trigger (TRIG) Command fails.
The PAUSE External Event setting may have set the board in a permanent PAUSE mode.
-5005
PAUSE command fails.
Possible causes are:
An External Trigger Event/Mask setting caused the board to trigger.
The Trigger source was set to External and the external trigger line is low.
-5006
The board must be in the PAUSE or HALT mode before calling this command.
Call any of the following functions before the command that failed: “DioPause”, “DioHalt” or “DioReset”.
-5007
The board must be in the HALT mode before calling this command.
Call "DioHalt" or "DioReset" before the command that failed.
-5100
Unable to set the specified frequency.
These are hardware problems. Check for a conflict with another installed device. Call Marvin Test Solutions Technical Support for assistance.
-5101
Unable to set the Trigger External Events register.
 
-5102
Unable to set the Trigger External Events Mask register.
 
-5103
Unable to set the PAUSE External Events register.
 
-5104
Unable to set the PAUSE External Events Mask register.
 
-5105
Unable to set the D Events register.
 
-5106
Unable to set the D External Events Mask register.
 
-5107
Unable to set the External Events register.
 
-5108
Unable to set the External Events Source.
 
-5109
Unable to set the Program Counter.
 
-5110
Unable to set the Counter Overflow mode.
 
-5111
Unable to set the I/O pins.
 
-5112
Unable to reset the RUN flag.
 
-5113
Unable to set the trigger mode.
 
-5114
Unable to program the Interface Standard Level
 
I/O MODULE ERRORS:
-6000
Invalid Group number.
A Group number can only be 0 or 1.
-6001
I/O Module does not exist.
The function could not detect an I/O Module. Check that an I/O module is mounted and properly seated.
-6002
The installed I/O Module does not support termination.
Check the Specification section of your I/O Modules User Guide for modules that support terminations.
-6003
Unrecognized I/O module.
 
-6004
In valid Carreir number.
 
-6005
A specified Carrier cannot be associated with the specified handle.
 
-6006
Maximum number of Carreir boards.
 
-6007
Carrier board could not be detected at the given base address.
 
-6100
Unable to set the Frequency-Doubler I/O width.
These are hardware problems. The specified register could not be set properly. Check for a conflict with another device installed in the specified DIO. Call Marvin Test Solutions Technical Support for assistance.
-6101
Unable to set the Frequency-Doubler clock source.
 
-6102
The Frequency-Doubler cannot be set up correctly.
 
-6110
The specified Frequency-Doubler frequency is out of range.
 
-6200
The specified level shifter voltage is out of range.
Check the specification section in your I/O Modules and Interface User Guide to verify the allowable voltage range.
-6201
The low-level voltage is out of range.
 
-6202
The high level voltage is out of range.
Enter a valid voltage value.
-6203
The threshold level voltage is out of range.
 
-6204
The Level Shifter is not calibrated.
 
-6205
An invalid calibration value was found in the EEPROM.
 
-6206
User does not have permisson to set the Level shifter EEPROM data.
 
-6207
Writing data to the EEPROM failed.
 
-6208
Invalid Level Shifter gain.
 
-6209
Invalid Level Shifter offset.
 
-6210
Failed to program the specified DAC.
 
-6211
The EEPROM CS can not be set.
 
-6300
Timeout:Unable to write correctly to the pin electronics memory register.
 
-6301

 

Timeout:Unable to write correctly to the pin electronics settings register
 

 -6202

The high level voltage is out of range.
Enter a valid voltage value.
-6203
The threshold level voltage is out of range
Enter a valid voltage value.
-6204
The Level Shifter is not calibrated.

 

-6205
An invalid calibration value was found in the EEPROM.
 
-6206
User does not have permission to set the Level shifter EEPROM data.
 
-6207
Writing data to the EEPROM failed.
 
-6208
Invalid Level Shifter gain.
 
-6209
Invalid Level Shifter offset.
 
-6210
Failed to program the specified DAC.
 
-6211
The EEPROM CS can not be set.
 
-6300
Timeout:Unable to write correctly to the pin electronics memory register.
 
-6301
Timeout:Unable to write correctly to the pin electronics settings register.
 
-6302
The specified output voltage low is out of range.
 
-6303
The specified output voltage low is out of range.
 
-6304
The specified output voltage high is out of range.
 
-6305
The specified input threshold voltage low is out of range.
 
-6306
The specified input threshold voltage low is out of range.
 
-6307
The specified input threshold voltage high is out of range.
 
-6309
The specified input current load sink is out of range.
 
-6310
The specified input current load source is out of range.
 
-6311
The specified output current limit is out of range.
 
-6312
Invalid low voltage commutating value.
 
-6313
Invalid high voltage commutating value.
 
-6314
Invalid PMU comparator low voltage.
 
-6315
Invalid PMU comparator high voltage.
 
-6316
Invalid PMU comparator voltage.
 
-6317
Invalid skew delay.
 
-6318
The specified forced voltage is out of range.
 
-6319
Unable to detect all ICs.
 

-6320

Unable to detect the 3.0 reference voltage.
 

-6321

Unable to detect the 3.3 voltage supply.
 

-6322

Unable to detect positive voltage rail or positive voltage rail is out of range.
 

-6323

Unable to detect negative voltage rail or negative voltage rail is out of range.
 

-6324

Voltage between positive and negative rails is out of range.
 

-6325

Invalid slew rate settings.
 

-6326

Invalid channel number.
 

-6327

Unable to communicate with all Pin Electronics ICs.
 

-6328

Error: channel not in PMU mode.
 

-6329

Error: channel not in PMU forced current mode.
 

-6330

Error: channel not in PMU forced voltage mode.
 

-6331

Error: PMU forced voltage over the specified current limit.
 

-6332

Invalid current range value.
 
DIO FILE ERRORS:
-7000
Invalid DIO board type in DIO file.
An invalid board type was found while creating or editing a DIO file.
-7001
Invalid number of steps for this board.
The “DioFileSetNumberOfSteps” function contains an invalid number of steps.
-7002
File type does not match board type.
The DIO file can only be loaded for a specific board type. Mismatched types are not allowed.
-7003
The specified file was opened for reading only.
Reopen the file for read/write.
-7004
The specified DIO files have deferent width.
When comparing two files, both files must have the same width.
-7005
Deferent files types.
When comparing two files, both files must have the same board type.
-7006
Not a DIOEasy 2.0 file.
File functions needs a DIOEasy 2.0 file. Convert the file to DIOEasy 2.0 format before calling those functions.
-7008
The specified file requires GTDIO driver upgrade.
 
-7009
The specified file has zero steps.
 
-7010
The specified number of steps to be saved is less than the minimum required.
 
-7011
Unable to load DIO file. The file has more boards then physical boards.
 
-7012
Invalid file name.
 
-7013
The specified DIO file is currently been used by another application.
 
-7100
The ASCII file has an invalid width specified.
An invalid width was found while loading or editing a DIO ASCII file.
-7101
The ASCII file has an invalid DIO board type specified.
An invalid board type was found while creating or editing a DIO ASCII file.
Use any editor to set this value correctly.
-7102
Unable to continue loading ASCII file. Invalid character was found.
Use any editor to set this value correctly.
-7103
Illegal number of steps
 
-7104
Illegal number of channels.
 
-7105
Illegal number of boards. (1 to 8 is allowed)
 
-7106
Illegal board type.
 
-7107
Illegal frequency.
 
-7108
Illegal ext frequency.
 
-7109
Illegal index of strobe delay.
 
-7110
Illegal frequency.
 
-7111
Illegal ext frequency.
 
-7112
Illegal index of strobe delay.
 
-7114
Illegal index of clock source.
 
-7115
Illegal index of strobe source.
 
-7116
Illegal DEvent.
 
-7117
Illegal DMask.
 
-7118
Illegal PEvent.
 
-7119
Illegal PMask.
 
-7120
Illegal TEvent.
 
-7121
Illegal TMask.
 
-7122
Illegal index of trigger mode.
 
-7123
Illegal ext. event x register.
 
-7124
Illegal index of ext. event source.
 
-7125
Illegal registerA or registerB.
 
-7126
Invalid Clock delay for the specified frequency settings
 
-7127
Invalid Strobe delay for the specified frequency settings
 
-7200
Unable to open old DIO file.
The driver encountered a problem while reading an old DIO file (created using DIOEasy 1.x). The file may be corrupt. Try to open the file using DIOEasy 2.x and re-save, or simply create a new DIO file.
-7201
Unable to read old DIO file Control Memory.
 
-7202
Unable to read old DIO file data.
 
-7203
Unable to read the old DIO file header.
 
-7500
Can not open the specified JAM file.
 
-7501
Jam file can not be accessed.
 
-7502
Can not read JAM file.
 
-7503
JAM file failed the CRC check.
 
-7504
Unexpected end of file in JAM file.
 
-7505
JAM file has an invalid board type.
 
MISCELLANEOUS ERRORS:
-8xxx
Internal error.
Internal errors range between -8000 and -8999. These errors are internal to the program. They are caused by unhandled exceptions. Record error numbers of this type and report them to Marvin Test Solutions Customer Support for help in resolving them.