The system-defined error/event numbers are chosen on an enumerated (“1 of N”) basis. The SCPI-defined error/event numbers and the <error/event_description> portions of the full queue item are listed here. The first error/event described in each class (for example, -100, -200, -300, -400) is a “generic” error.

7.1. Command Error [-199, -100]

An <error/event number> in the range [-199, -100] indicates that a syntax error has been detected by the PSU’s SCPI command parser. The occurrence of an error in this class cause the command error bit (CME, bit 5) in the Standard Event Status Register (see Section 3.1) to be set.

 

Return string

Description

0,"No error"

The queue is completely empty. Every error/event in the queue has been read, or the queue was purposely cleared by a power-on event, *CLS, etc.

−100,"Command error"

Generic syntax error.

-101,"Invalid character"

An invalid character was found in the command string. There may be a character such as #, $, or % in the command keyword or within a parameter.

 

Example:

OUTP:STAT #ON

-103,"Invalid separator"

An invalid separator was found in the command string. There may be a comma instead of a colon, semicolon, or blank space, or a blank space instead of a comma.

 

Example:

TRIG:SOUR,BUS

-104,"Data type error"

The wrong parameter type was found in the command string. A string might have been sent when a string was expected, or vice versa.

 

Example (the password must be a quoted string):

CAL ON, 123

-108,"Parameter not allowed"

More parameters were received than expected for the command. There may be an extra parameter, or parameter added to a command that does not accept a parameter.

 

Example:

INST CH1, CH2

-109,"Missing parameter"

Fewer parameters were received than expected for the command. One or more parameters that are required for this command was not received.

 

Example:

APPL

-113,"Undefined header"

A command was received that is not valid for this PSU. The command may have been misspelled, or it may not be a valid command. Short forms of commands, may contain up to four letters.

 

Example:

MEASU:CURR?

-114,"Header suffix out of range"

The numeric suffix attached to a command header is not one of the allowable values.

 

Example:

STAT:QUES:INST:ISUM3?

-131,"Invalid suffix"

A suffix was incorrectly specified for a numeric parameter. It may have been misspelled.

 

Example (use A instead of V):

VOLT 3A

-138,"Suffix not allowed"

A suffix was received following a numeric parameter which does not accept a suffix.

 

Example (SEC is not a valid suffix):

STAT:QUES:ENAB 10 SEC

-151,"Invalid string data"

An invalid character string was received. Check to see if you have enclosed the character string in single or double quotes.

 

Example:

DISP:TEXT ’ON

7.2. Execution Error [-299, -200]

An <error/event number> in the range [-299, -200] indicates an error has been detected by the PSU’s execution control block. The occurrence of any error in this class sets the execution error bit (EXE, bit 4) in the Standard Event Status Register (see Section 3.1). One of the following events has occurred:

  • A <PROGRAM DATA> element following a header was evaluated by the PSU as outside of its legal input range, or as otherwise inconsistent with the PSU’s capabilities.
  • A valid program message could not be properly executed. Probably due to some PSU condition.

Execution errors will be reported by the PSU after rounding and expression evaluation has taken place. Rounding a numeric data element, for example, will not be reported as an execution error. Events that generate execution errors will not generate Command Errors, device-specific errors, or Query Errors; see the other error definitions in this section.

 

Return string

Description

-200,"Execution error"

This is the generic execution error when more specific error is not assigned in the case that command execution failed.

-221,"Settings conflict"

Indicates that a legal program data element was parsed but could not be executed due to the current device state.

 

Example (an attempt to enter low ripple mode while remote programming is activated):

VOLT:PROG EXT

LRIP ON

-222,"Data out of range"

A numeric parameter value is outside the valid range for the command.

 

Example:

VOLT 166

-223,"Too much data"

A character string was received but could not be executed because the string length was more than 32 characters. This error can be generated by the CALibration:REMark command.

-224,"Illegal parameter value"

A discrete parameter was received which was not a valid choice for the command. You may have used an invalid parameter choice.

 

Example:

VOLT ON

-230,"Digital pin function mismatch"

Operation with digital pin is not possible due to incorrect function definition.

 

Example:

DIG:PIN1:FUNC INH

DIG:INP:DATA? 1

-240,"Hardware error"

Command or query could not be executed because failure is detected during power-up self-test. Use the *TST? command to query self-test results. See also Section 7.3.1

-241,"Hardware missing"

Command or query could not be executed because of missing PSU hardware.

 

Example (remote sense cannot be activated when BP_OPTION is false):

OUTP:SENS ON

-242,"CH1 fault detected"

A POWERGOOD signal failure has been detected on Channel 1. If such a condition has happened, PSU firmware will be immediately put into the stand-by mode.

-243,"CH2 fault detected"

A POWERGOOD signal failure has been detected on Channel 2. If such condition has happened, the PSU firmware will be immediately put into the stand-by mode.

-245,"CH1 output fault detected"

A prohibited state has been detected on the Channel 1 output (e.g., negative power is measured for extended period of time). The Channel 1 output will be turned off.

-246,"CH2 output fault detected"

A prohibited state has been detected on the Channel 2 output (e.g., negative power is measured for extended period of time). The Channel 2 output will be turned off.

-250,"Mass storage error"

Indicates that a SD card error occurred. This error message is generated when the firmware cannot detect the more specific errors described for errors -251 through -258.

-251,"Missing mass storage"

Command or query could not be executed because of missing mass storage; SD card option was not installed. (Not implemented yet)

-252,"Missing media"

Command or query could not be executed because of a missing SD card. (Not implemented yet)

-253,"Corrupt media"

Command or query could not be executed because of corrupt media; for example, bad SD card or wrong format. (Not implemented yet)

-254,"Media full"

Command or query could not be executed because the SD card is full. (Not implemented yet)

-256,"File name not found"

Command or query could not be executed because the file name on the device media was not found; for example, an attempt was made to read or copy a nonexistent file.

-257,"File name error"

Command or query could not be executed because the file name on the device media was in error; for example, an attempt was made to copy to a duplicate file name.

-258,"Media protected"

Command or query could not be executed because the SD card access is locked (MMEMory:LOCK command).

-259,"File transfer aborted"

Command or query for file transfer is aborted before transfer is completed.

7.3. Device-Specific Error [-399, -300], [1, 32767]

An <error/event number> in the range [-399, -300] or [1, 32767] indicates that the PSU has detected an error which is not a command error, a query error, or an execution error. Most likely, some PSU operations did not properly complete, possibly due to an abnormal hardware or firmware condition. These codes are also used for self-test response errors. The occurrence of any error in this class sets the device-specific error bit (DDE, bit 3) in the Standard Event Status Register (see Section 3.1).

 

Events that generate device-specific errors do not generate command errors, execution errors, or query errors; see the other error definitions in this section.

 

Return string

Description

-211,"Trigger ignored"

A *TRG was received but the trigger was ignored. The trigger source should be set to the BUS and the trigger subsystem should be initiated by the INITiate[:IMMidate] command.

-213,"Init ignored"

An INITiate command was received but could not be executed because a measurement was already in progress.

-220,"Cannot set range"

The measurement range cannot be set because the currently measured value is higher then range max value.

 

Example:

CURR?

2.33

SENS:CURR:RANG 0.5

-310,"System error"

An internal firmware error has been detected.

-330,"Self-test failed"

The PSU’s complete self-test failed from the remote interface (*TST? command). In addition to this error, more specific self-test errors are also reported. See also Section 7.3.1

-350,"Queue overflow"

The error queue is full because more than 16 errors have occurred. No additional errors will be stored until errors have been removed from the queue. The error queue is cleared when power has been turned off, or after a *CLS (clear status) command has been executed.

-363,"Input buffer overrun"

Input buffer overrun. The Serial or Ethernet port input buffer has lost data due to an overflow.

100,"Channel not found"

A non existing channel number has been specified.

 

Example:

SOUR3:VOLT?

101,"Calibration mode is off"

Calibration is not enabled. The PSU will not accept calibration commands.

102,"Invalid password"

The calibration password is incorrect.

104,"Bad sequence of cal commands"

Calibration commands have not been entered in the proper sequence.

105,"Password too long"

A calibration password was received which contained more than 16 characters.

106,"Password too short"

A calibration password was received which contained less than 4 characters.

107,"Cal value out of range"

The specified calibration value (CALibration:CURRent:DATA or CALibration:VOLTage:DATA) is not valid for the PSU's present measurement function and range.

108,"Cal output disabled"

The Calibration operation has been aborted by sending the OUTPut OFF command during an output calibration.

109,"Invalid cal data"

One or more calibration data values are impossible or out of range, and will prohibit the calibration parameters calculation.

 

For example the MID value is lower then MIN, or the MIN value is higher then MAX, or the MID value is so out of accepted tolerance that it cannot be predicted with newly calculated calibration parameters.

110,"Cal params missing or corrupted"

Calibration parameters activation started by the CALibration:STATe ON, "<password>" command failed because calibration has never been conducted or existing parameters are corrupted.

111,"No new cal data exists"

There was an attempt to save calibration data with the CALibration:SAVE command without calibration data.

150,"Power limit exceeded"

The product of voltage and current exceeds channel power limitation.

 

For example if channel power limit is 160 W and the following sequence is executed:

VOLT 38

CURR 4.4

151,"Voltage limit exceeded"

Set voltage exceeds channel capability.

 

Example:

VOLT 60

152,"Current limit exceeded"

Set current exceeds channel capability.

 

Example:

CURR 5.5

201,"Cannot execute before clearing protection"

Example: a command such as OUTP ON cannot be executed on a channel where one or more protections will be tripped.

270,"CH1 ADC timeout detected"

Channel 1 has been switched off after 3 consecutive ADC timeouts were detected.

304,"Incompatible transient modes"

For example, VOLTage and CURRent cannot be in both STEP and LIST modes at the same time (see [SOURce[<n>]]:CURRent:MODE and [SOURce[<n>]]:VOLTage:MODE)

306,"Too many list points"

Too many list points have been specified.

307,"List lengths are not equivalent"

One or more lists are not the same length.

 

For example, number of CURRent steps is not equal to one or number of VOLTage steps

LIST:VOLT 0, 5, 10, 15, 20

LIST:CURR 1, 2

308,"Cannot be changed while transient trigger is initiated"

An attempt to change a setting which cannot be changed while the instrument is waiting for or executing a trigger sequence.

309,"Cannot initiate while in fixed mode"

Cannot initiate transient generator. Either the VOLTage or CURRent function is set to FIXed mode.

310,"List not found"

A list cannot be found on the SD card.

311,"List is empty"

A list cannot be started because it’s empty.

312,"Cannot execute when the channels are coupled"

Cannot execute a command when the channel outputs are coupled.

313,"Cannot execute in tracking mode"

Cannot execute a command when the tracking mode is active.

320,"Firmware update error"

An attempt to upload firmware via LAN has failed due to communication error, checksum error, etc. (Not implemented yet).

400,"Cannot load empty profile"

An attempt has been made to recall an empty or erased user profile with *RCL command.

500,"Down-programmer on CH1 switched off"

The down programmer has been switched off because a negative output power (DP_NEG_LEV) has been measured on Channel 1 that has lasted more then DP_NEG_DELAY seconds.

501,"Down-programmer on CH2 switched off"

The down programmer has been switched off because a negative output power (DP_NEG_LEV) has been measured on Channel 2 that has lasted more then DP_NEG_DELAY seconds.

505,"External voltage on CH1 detected"

An external voltage has been measured (e.g., from a battery or other power source intentionally or mistakenly left connected) on Channel 1 while output is switched from off to on. (Not implemented yet).

506,"External voltage on CH2 detected"

An external voltage has been measured (e.g., from a battery or other power source intentionally or mistakenly left connected) on Channel 2 while output is switched from off to on. (Not implemented yet).

615,"External EEPROM save failed"

If non-volatile memory (an external EEPROM) is not installed, damaged or not responsive, and OPTION_EXT_EEPROM is set to 1 (conf.h) this error will be reported.

7.3.1. Self-Test Error Messages

During power-up, the PSU will start self-test sequences when communication with all SPI devices that is marked as installed will be established. The scope of the self-test depends on device capability and it could vary from simply reading device registers, and waiting for expected responses to more complex operations such as setting DAC registers and reading back those values using the ADC (if ADC test passed). Every test failure will be announced by an error beep, and one error message per failed test will be inserted into the error queue. The device-specific error bit (DDE, bit 3) in the Standard Event Status Register (see Section 3.1) will also be set.

 

Return string

Description

210,"CH1 IOEXP test failed"

Communication with the Channel 1 I/O expander is not possible. Probably because the I/O expander is not functional.

211,"CH2 IOEXP test failed"

Communication with the Channel 2 I/O expander is not possible. Probably because the I/O expander is not functional.

220,"CH1 ADC test failed"

Communication with the Channel 1 ADC is not possible. Probably because values written into various registers are not equal to the returned values.

221,"CH2 ADC test failed"

Communication with the Channel 2 ADC is not possible. Probably because values written into various registers are not equal to the returned values.

230,"CH1 DAC test failed"

The Channel 1 DAC is not functional. Possibly because communication has failed, or because there's a difference between the test voltage data sent to the Channel 1 DAC and that read back.

231,"CH2 DAC test failed"

The Channel 2 DAC is not functional. Possibly because communication has failed, or because there's a difference between the test voltage data sent to the Channel 2 DAC and that read back.

240,"External EEPROM test failed"

The non-volatile memory on the Arduino board has failed the checksum integrity test.

250,"RTC test failed"

The RTC (real time clock) on the Arduino board is not present, or the date or time values returned are not valid, or the last datetime value stored into non-volatile memory is greater then RTC datetime.

260,"Ethernet test failed"

The Ethernet controller on the Arduino Shield board test failed.

630,"Fan test failed"

The measured fan speed during the self-test procedure is not within expected range.

 

For example, if SPI-bus cable is accidentally not connected, or wrongly wired, on Channel 1 two errors will be generated and placed into the error queue which can be checked using the following command sequence:

 

SYST:ERR:COUN?

2

SYST:ERR?

210,"CH1 IOEXP test failed"

SYST:ERR?

220,"CH1 ADC test failed"