/

Keithley

/

Keithley 2308

SCPI COMMAND REFERENCE

Keithley 2308

Keithley 2308

The Keithley 2308 is Keithley's battery/charger simulator in the Series 2300 — Model 2308 Portable Device Battery/Charger Simulator family. Its SCPI remote-control interface exposes 250 commands across 41 subsystems - 149 settable and 101 queries - and every command is documented here with its parameters, accepted values, return format, and a copy-paste PyVISA example for automating test and measurement.

250

Commands

149

Settable

101

Queries

41

Subsystems

SCPI

Verified

2026-07-16

All commands

*IDN?query

Returns the device identification string.

string - Returns the device identification string.
*TST?query

Returns 0 if the instrument passes its internal self-test, or an error code if the test fails.

integer - 0 indicates the self-test passed; a nonzero value indicates failure.
*RCLset / query

Recalls a saved setup to memory location SAV0-SAV3, or restores the RST defaults. For GPIB operation, setups are recalled using the *RCL command.

NameTypeValuesDescription
stateenumRST | SAV0 | SAV1 | SAV2 | SAV3Setup location to recall.
*SAVset / query

Saves the present power supply setup to a memory location. The available saved setups are SAV0 through SAV3.

NameTypeValuesDescription
locationenumSAV0 | SAV1 | SAV2 | SAV3Memory location to save the current setup to.
*STBset / query

Reads the status byte register. When *STB? is used, bit B6 is the MSS bit; during serial poll, the same byte uses B6 as the RQS bit.

integer - Returns the status byte register value.
*SRE?query

Reads the service request enable register.

integer - The current value of the service request enable register.
*ESE?query

Sets or queries the standard event status enable register. The register enables individual standard event status bits such as power on, user request, command error, execution error, device-dependent error, query error, and operation complete.

NameTypeValuesDescription
valueinteger0 - 255Bit mask for the standard event status enable register.
integer - Returns the current value of the standard event status enable register.
*TRGset / query

Triggers buffer data. The programming example shows it used after enabling the measurement event register to start buffer acquisition.

*TRG
*WAIset / query

Pauses execution until all previously received commands have finished executing, or until a parser/command error occurs.

*RSTset / query

Sets the power supply to default reset conditions.

*RST // Set the power supply to default reset conditions
*SREset / query

Enables SRQ generation on error when the EAV bit is set. The manual shows the example `*SRE 4` for this use.

NameTypeValuesDescription
valueinteger-Sets the service request enable register value.
*SRE 4
*STB?query

Returns the status byte. Test bit 2 (EAV) to see whether an error is available in the error queue.

integer - The status byte.
*CLSset / query

Clears the status registers. Sending *CLS also clears the error queue and operation complete status.

*ESEset / query

Enables the operation complete bit in the standard event enable register. In the calibration workflow, sending *ESE 1 allows operation complete status to set ESB when *OPC is detected.

NameTypeValuesDescription
valueinteger0 - 255Bit mask written to the standard event enable register.
*ESR?query

Returns the contents of the standard event status register. Reading the response clears the standard event status register.

integer - Standard event status register value; reading it clears the register.
*OPCset / query

Used to indicate operation complete at the end of a calibration command sequence. It is typically sent immediately after a calibration command so the controller can detect when the step has finished.

:CAL:PROT:STEP0 14;*OPC
*OPC?query

Operation complete query. The instrument places an ASCII 1 in the output queue when it has completed each step.

integer - Returns ASCII 1 when operation complete has been detected.
*OPC?
:CAL:PROT:STEP0 14;*OPC?

:RCLset / query

Recalls a previously saved instrument state from nonvolatile memory. The command takes a register number as its single parameter.

NameTypeValuesDescription
NRfinteger0 - 9Register number to recall.

Reads the detected line frequency of the instrument's power input. The manual notes that line voltage and frequency are automatically sensed.

real (Hz) - The detected line frequency.
:SYSTem:POSetupset / query

Selects the setup to use at power-up. The available choices are RST or SAV0-SAV3.

NameTypeValuesDescription
setupenumRST | SAV0 | SAV1 | SAV2 | SAV3Power-on setup to select.

Sets the auto zero state, which controls whether background readings are taken. Turning auto zero off improves measurement speed.

NameTypeValuesDescription
stateenum0 | 1 | OFF | ONEnables or disables auto zero state.

Sets or queries the Message Exchange Protocol (MEP) state. A returned value of 1 means MEP is enabled and the SCPI protocol is selected; 0 means MEP is disabled and the 488.1 protocol is selected.

NameTypeValuesDescription
stateenum1 | ON | 0 | OFFSelects the GPIB protocol state.
enum - Returns 1 if MEP is enabled and the SCPI protocol is selected, or 0 if MEP is disabled and the 488.1 protocol is enabled.
:SYSTem:MEP[:STATe]?
:SYSTem:MEP[:STATe] <1 or ON>
:SYSTem:MEP[:STATe] <0 or OFF>

Queries the state of Message Exchange Protocol (MEP) to determine whether SCPI or 488.1 protocol is enabled. A returned value of 1 means MEP is enabled (SCPI), and 0 means MEP is disabled (488.1).

integer - Returns 1 when MEP is enabled and SCPI protocol is selected; returns 0 when MEP is disabled and 488.1 protocol is selected.
:SYSTem:MEP[:STATe]?

Sets trigger-on-talk behavior. Set 1/ON to enable 2-reading trigger on talk, or 0/OFF to disable it and read the active channel.

NameTypeValuesDescription
benum1 | ON | 0 | OFFEnables or disables trigger-on-talk mapping.

Reads and clears the oldest message in the error queue.

string - Returns the oldest error message from the error queue, then removes it from the queue.

Queries the power line frequency setting.

real - The present power line frequency setting.

Queries the power-on setup setting.

enum - Returns the current power-on setup setting.

Queries the SCPI version level.

string - The SCPI version level.

Queries the selected auto zero state.

enum - Returns whether auto zero is enabled or disabled.

Sets trigger continuous mode. Enabling it automatically turns the display off; disabling it turns the display back on.

NameTypeValuesDescription
stateboolean-Enables (ON or 1) or disables (OFF or 0) trigger continuous mode.

Queries the trigger continuous mode state. The mode enables automatic triggering and turns the display off; when disabled, the display turns back on.

enum - Returns whether trigger continuous mode is enabled or disabled.

:CURRent:RANGeset / query

Sets the current measurement range for the current function. The expected current range is specified in amps.

NameTypeValuesDescription
upperoptreal0 - 5Specify the expected current in amps.

Enables or disables auto range for the current measurement range.

NameTypeValuesDescription
stateboolean-Turns auto ranging on or off.

Set the current limit value for source channel 1. The range is 0.006 to 5 A with 100 µA resolution.

NameTypeValuesDescription
nreal0.006 - 5Current limit value in amps.

Sets the voltage amplitude for the specified source channel. The command applies to battery channel 1 when used as [SOURce[1]]:VOLTage, and the manual states the amplitude range is 0 to 15 V with 1 mV resolution.

NameTypeValuesDescription
nreal0 - 15Voltage amplitude to set.

Returns whether the current limit condition is active for the selected channel. With LIMit selected, it returns "1" when the power supply is operating as a constant-current source; with TRIP selected, it returns "1" if the output has tripped off due to current limit.

integer - Returns "1" if current limit is reached, or if TRIP mode is selected and the output has turned off due to current limit; returns "0" when the output is turned back on.

Specifies the output bandwidth for the battery channel. The command accepts HIGH or LOW bandwidth and can be programmed at any time.

NameTypeValuesDescription
nameenumHIGH | LOWBandwidth setting.

Sets the battery channel output impedance. This battery-channel-only command may be set while the output is ON or OFF.

NameTypeValuesDescription
NRfreal0 - 1Output impedance in ohms, in 0.01 Ω steps.
:OUTPut[1]set / query

OUTPut subsystem for battery channel #1.

NameTypeValuesDescription
stateoptenumON | OFFTurn output ON or OFF.

Specifies HIGH or LOW bandwidth for the output when the output is ON. When the output is OFF, the bandwidth is LOW and the user setting is not applied.

Queries the bandwidth setting for when the output is ON. The manual states that bandwidth can be HIGH or LOW, but does not document a returned value format for this query.

Specifies the output impedance to apply. The allowed range is 0 (OFF) to 1 Ω in 10 mΩ steps.

NameTypeValuesDescription
NRfreal0 - 1Output impedance value to apply.

Queries the output impedance setting for output channel 1.

real (Ω) - Returns the output impedance setting applied to channel 1.

Closes or opens relay control circuit 1 for output channel 1. The manual states ONE closes the circuit and ZERO opens it.

NameTypeValuesDescription
nameenumONE | ZEROControls relay 1 control circuit state.

Queries the value at relay 1 port pin digital I/O for output channel 1.

enum - Returns the relay 1 port pin digital I/O value.

Turns output ON or OFF for output channel 1. The query returns the current output state.

NameTypeValuesDescription
benumON | OFFSets the output state.
enum - Returns the output state.

Queries the state of output 1. Returns whether the output is ON or OFF.

enum - State of output 1.

Sets or reads the averaging configuration for the specified sense channel. The manual slice indicates this is part of measurement configuration, but it does not document any syntax, parameters, or return value for this command on the provided page.

Selects the function for sense channel 1. The slice does not document the available function values or any query form for this command.

Sets the integration rate, in line cycles, for voltage and current measurements on channel 1. The allowed range is 0.002 to 10.

NameTypeValuesDescription
nreal0.002 - 10Integration rate in line cycles for voltage and current measurements.

Queries the average count for voltage and current on battery channel 1. The command is part of the SENSe subsystem for the battery channel.

integer - Returns the average count for voltage and current.

Enable or disable auto range for the current measurement range. This command is part of the :SENSe[1]:CURRent[:DC]:RANGe path.

NameTypeValuesDescription
stateenumOFF | ONTurns auto ranging off or on.

Queries whether auto range is enabled for the current measurement range. This is the query form of the current DC range auto setting.

boolean - Returns the state of auto range for the current measurement range.

Sets the upper current measurement range for the current measurement function. The value selects one of four ranges: 5 mA, 50 mA, 500 mA, or 5 A.

NameTypeValuesDescription
NRfreal5.0Range value used to change the current measurement range.

Queries the upper current measurement range for the :SENSe[1]:CURRent[:DC]:RANGe subsystem. The range is based on one of four ranges designated by the current NRf setting.

real - Returns the current measurement range upper value.

Queries the selected measurement function for SENSe[1].

enum - Returns the current measurement function.

Queries the integration rate in line cycles for voltage and current on the selected battery channel. The rate applies to voltage and current measurements.

real - Returns the integration rate in line cycles.

Specifies the average count for pulse-current measurements. This command belongs to the :SENSe[1]:PCURrent subsystem and is used to configure averaging for that measurement function.

NameTypeValuesDescription
NRfinteger1 - 100Average count for pulse-current measurements when SYNC:STAT is ON.
NRfinteger1 - 5000Average count for pulse current digitization when SYNC:STAT is OFF.

Queries the average count for pulse-current measurements. The count is dependent on SYNC:STATe.

integer - Returns the pulse-current average count, dependent on SYNC:STATe.

Selects the pulse-current measurement mode. The available modes are HIGH, HIGH LOW, and AVERage.

NameTypeValuesDescription
nameenumHIGH | HIGH LOW | AVERagePulse-current measurement mode.

Queries the pulse-current measurement mode for the selected battery channel. The mode can be HIGH, HIGH LOW, or AVERage when set with the corresponding command.

enum - Returns the current pulse-current measurement mode.

Power supply sets the pulse-current integration times, accounting for internal trigger delay but not user delay (:DEL).

Sets the pulse-current high integration time. The value is applied when SYNC:STATe is ON and does not account for internal trigger delay or user delay.

NameTypeValuesDescription
NRfreal33.33E-06 - 0.8333Integration time for high pulse measurements.

Queries the high pulse-current integration time for the pulse-current measurement function. The setting applies when SYNC:STATe is ON.

real (s) - Returns the high integration time in seconds.

Sets the state for performing step measurements. The setting can be ON or OFF.

NameTypeValuesDescription
stateenumOFF | ONState for performing step measurements.

Sets the step delay. The delay range is 0 ms to 100 ms in 10 ms steps.

NameTypeValuesDescription
delayreal0msec - 100msecStep delay value.

Defines a delay sequence for step measurements using an index and a time value. Up to 19 delay sequence values can be specified.

NameTypeValuesDescription
indexinteger1 - 19Sequence index to set.
timereal0 - 100e-3Delay time value for the specified sequence index.

Sets the number of DOWN steps for step measurements. The value range is 0 to 20, with a maximum of 1 for both up and down combined.

NameTypeValuesDescription
countinteger0 - 20Number of DOWN steps.

Queries the number of DOWN steps specified for step measurements.

integer - Returns the number of DOWN steps specified.

Specify step integration time for UP plus DOWN steps. The allowed range is 33.3 µsec to 100 msec, with a default of 200 µsec.

NameTypeValuesDescription
timereal33.3µsec - 100msecStep integration time for UP plus DOWN steps.

Queries the step integration time specified for UP plus DOWN steps. The setting applies to step measurements in the SENSe:PCURrent:STEP subsystem.

real (s) - Returns the step integration time specified for UP plus DOWN steps.

Specifies the step timeout for all steps except the first step. The allowed range is 2 ms to 200 ms.

NameTypeValuesDescription
time-outreal2ms - 200msecStep TimeOUT for steps other than the first step.

Sets the TimeOUT for the first step. The allowed range is 10 msec to 60 secs.

NameTypeValuesDescription
valuereal10msec - 60secsTimeOUT for the first step.

Queries the TimeOUT setting for the first step. This is the initial timeout value for step measurements; the manual gives a range of 10 msec to 60 s.

real (s) - The TimeOUT setting for the first step.

Queries the step TimeOUT setting for all steps but the first step.

real - Returns the step TimeOUT setting for all steps but the first step.

Sets the number of UP steps for step measurements. The maximum is 20, with UP and DOWN combined limited to 20.

NameTypeValuesDescription
countinteger0 - 20Number of UP steps specified.

Queries the number of UP steps specified for step measurements.

integer - Returns the number of UP steps specified.

Queries the state for performing step measurements.

enum - Returns the state for performing step measurements.

Sets the integration time in seconds for pulse average measurements. The setting applies when SYNC:STATe is ON and does not include internal trigger delay or user delay.

NameTypeValuesDescription
timereal33.33E-05 - 0.8333Integration time for pulse average measurements.

Queries the average integration time for pulse measurements when SYNC:STATe is ON.

real (s) - Returns the average integration time in seconds.

Specifies the integration time in seconds for digitizing or burst measurements. This setting applies when SYNC:STATe is OFF, and the valid range is 33.33e-6 to 0.8333 s.

NameTypeValuesDescription
timereal33.33e-6 - 0.8333Integration time for digitizing or burst measurements.

Queries the integration time for digitizing or burst measurements when SYNC:STATe is OFF.

real (s) - Returns the integration time for digitizing or burst measurements.

Specifies the integration time in seconds for low pulse measurements when SYNC:STATe is ON. The setting neither includes internal trigger delay nor user delay.

NameTypeValuesDescription
NRfreal33.33E-06 - 0.8333Integration time for low pulse measurements.

Queries the low integration time used for pulse measurements when SYNC:STATe is ON.

real (s) - The low integration time in seconds.

Queries the specified step delay setting for pulse current measurements or pulse current digitization, depending on the pulse measurement type. No separate return format is given beyond the fact that it is a query.

real (s) - Specified trigger delay in seconds; dependent on the pulse current measurement type.

Sets the trigger level for each TLEV step. The step index x is 1–20, and maximum settings depend on the selected current range, so the current range must be selected before setting these values.

NameTypeValuesDescription
valuereal0.0Trigger level value for the specified TLEV step.

Queries the trigger level for each TLEV step. x corresponds to steps 1 through 20.

real - Returns the trigger level for the specified TLEV step.

Pulse detection triggering synchronization for pulse current measurements or digitization.

NameTypeValuesDescription
stateoptboolean-Selects pulse current measurements ON or OFF to select pulse current digitization.

Specifies the trigger delay in seconds for pulse current synchronize operation. The valid range depends on whether pulse current measurements or pulse current digitization is selected.

NameTypeValuesDescription
delayreal0.0 - 0.1Trigger delay in seconds for pulse current measurements.

Queries the specified trigger delay for pulse current synchronization. The returned value depends on the synchronize state.

real (s) - Specified trigger delay in seconds, dependent on SYNC:STAT.

Sets the trigger level used by pulse current synchronization. The page shows the TLEVel subtree with range-specific subcommands for different current ranges, and notes that the current range must be selected before setting step trigger levels.

Sets the trigger level in amps for use on the 50 mA current range. The allowed range is 0.0 mA to 50 mA in 0.05 mA or 50 A steps.

NameTypeValuesDescription
valuereal0.0 mA - 50 mATrigger level to use on the 50 mA current range.

Sets the trigger level in amps for use on the 5 mA current range. The valid range is 0.0 mA to 5 mA in 0.005 mA or 5 μA steps.

NameTypeValuesDescription
<NRf>real0.0 mA - 5 mATrigger level for the 5 mA current range.

Queries the trigger level in amps for use on the 5 mA current range. No short form exists for this query.

real (A) - Returns the setting of the trigger level in amps for the 5 mA current range.

Sets the trigger level in amps for use when on the 500 mA current range. The allowed range is 0.0 mA to 500 mA in 0.5 mA or 500 μA steps.

NameTypeValuesDescription
valuereal0.0 mA - 500 mATrigger level used on the 500 mA current range.

Sets the trigger level in amps for pulse current measurements on the 5 A current range. The manual states this level is 0.0 A to 5.0 A in 5 mA steps.

NameTypeValuesDescription
ampoptreal0.0 A - 5.0 ATrigger level in amps for use on the 5 A current range.

Sets or queries the trigger level in amps for pulse current synchronization. The setting applies when using the 5 A current range.

real (A) - Returns the trigger level in amps for pulse current synchronization on the 5 A current range.

Pulse detection triggering control for current measurements. The optional state selects pulse current measurements ON or OFF, or queries the present pulse current measurement type.

NameTypeValuesDescription
stateoptboolean-Send ON to select pulse current measurements or OFF to select pulse current digitization.
enum - Returns the present pulse current measurement type.

Selects pulse current measurements or pulse current digitization for synchronize pulse detection triggering. The state is queried with :SENSe[1]:PCURrent:SYNChronize[:STATe]?

NameTypeValuesDescription
stateoptenumON | OFFSelect pulse current measurements or pulse current digitization.
enum - Returns the pulse current measurement type.
:SENSe[1]:DETectset / query

Enable or disable pulse current detection mode.

NameTypeValuesDescription
benumOFF | ONTurns pulse current detection mode on or off.

Enables or disables pulse current detection mode, or queries the current detection mode setting.

enum - Returns the pulse current detection mode setting.
:SENSe[1]:FASTset / query

Enables or disables pulse current fast readings.

NameTypeValuesDescription
stateenumOFF | ONEnable or disable pulse current fast readings.

Queries the pulse current fast reading setting.

enum - Returns the pulse current fast reading setting.

Sets the trigger edge used to start long integration measurements.

NameTypeValuesDescription
nameenumRISING | FALLING | NEITHERSelects the trigger edge.

Sets the trigger edge used to start a long integration measurement.

NameTypeValuesDescription
nameenumRISING | FALLING | NEITHERTrigger edge to use for starting long integration measurements.
enum - Returns the current trigger edge setting.

Sets the integration time in seconds for long integration measurements. The valid range is X to 60, where X is 0.850 for 60 Hz line frequency or 0.840 for 50 Hz line frequency.

NameTypeValuesDescription
timerealX - 60Integration time in seconds.

Queries the integration time setting for long integration measurements. This command is part of the :SENSe[:LINTegration] subtree.

real (s) - Returns the integration time in seconds.

Sets the trigger level path for long integration measurements. The command has range-specific trigger level forms for the 5 A, 500 mA, 50 mA, and 5 mA current ranges.

NameTypeValuesDescription
ampoptreal0.0 A - 5.0 ATrigger level in amps for use on the 5 A current range.
hundredoptreal0.0 mA - 500 mATrigger level in amps for use on the 500 mA current range.
fiftyoptreal0.0 mA - 50 mATrigger level in amps for use on the 50 mA current range.
fiveoptreal0.0 mA - 5 mATrigger level in amps for use on the 5 mA current range.

Queries the trigger level setting for the long integration measurement path. The slice lists separate query forms for the 5 A, 500 mA, 50 mA, and 5 mA ranges.

real (A) - Returns the trigger level setting for the selected current range.

Queries the pulse current search setting.

boolean - Returns the pulse current search setting.

Specifies the pulse current timeout length.

NameTypeValuesDescription
timeoutreal5ms - 32sLength of the timeout, in seconds, with 1 ms increments.

:CURRset / query

Sets the current limit for the selected channel. In the example, `CURR 750e-3` sets the current limit to 750 mA.

NameTypeValuesDescription
currentrealACurrent limit value to set.
:CURR:TYPEset / query

Selects the current limit operating mode. The example shows TRIP for the battery channel and LIM for the charger channel.

NameTypeValuesDescription
modeenumTRIP | LIMCurrent limit mode.

Enables or disables automatic current range selection for the SENS2 current measurement subsystem.

NameTypeValuesDescription
stateenumON | OFFTurns auto ranging on or off.
SENS2:CURR:RANG:AUTO ON
:SENS2:CURR:RANGset / query

Selects the current measurement range for the active channel. The manual shows four available ranges: 5 A, 500 mA, 50 mA, and 5 mA.

NameTypeValuesDescription
rangerealACurrent range to use for pulse current measurements.
SENS2:CURR:RANG 5

Enables or disables pulse detection mode for long integration measurements.

NameTypeValuesDescription
benumON | OFFTurns pulse detection mode on or off.
:SENS2:LINT:FASTset / query

Enables or disables long integration fast readings.

NameTypeValuesDescription
benumON | OFFEnable or disable long integration fast readings.

:SOUR2:CURR:TYPEset / query

Sets the current type for the charger channel. The programming example shows TRIP and LIM as the available modes.

NameTypeValuesDescription
modeenumTRIP | LIMCurrent type mode.
SOUR2:CURR:TYPE TRIP
SOUR2:CURR:TYPE LIM

Specify the average count for pulse current measurements or pulse current digitization. The manual lists a default of 1 and a range of 1 to 100 for pulse current measurements or 1 to 5000 for pulse current digitization.

NameTypeValuesDescription
countinteger1 - 100Average count to use.
:PCURrent:MODEset / query

Selects the pulse current measurement mode. The available modes are HIGH, LOW, or AVERage.

NameTypeValuesDescription
nameenumHIGH | LOW | AVERageMeasurement mode to use.

Controls pulse current detection triggering for pulse current measurements. It can enable pulse current measurements versus pulse current digitization, and provides trigger level settings for different current ranges.

NameTypeValuesDescription
stateoptenumON | OFFSelect pulse current measurements or pulse current digitization.
trigger level--Trigger level settings for pulse current detection.
:PCURrent:TIMEset / query

Set the integration time for pulse current measurements in seconds. This command is part of the :PCURrent:TIME subsystem, which also supports AUTO and range-specific integration time settings.

NameTypeValuesDescription
timereal33.33e-6 - 0.8333Integration time for pulse current measurements.

Sets the pulse current integration time selection to automatic. This is part of the pulse current configuration time settings.

Sets the average count for pulse current measurements or pulse current digitization. The manual lists a default of 1 and notes different numeric ranges depending on the measurement type.

NameTypeValuesDescription
countinteger1 - 100Average count for pulse current measurements; the manual also notes 1 to 5000 for pulse current digitization.

Sets the pulse current digitize integration time. The value is specified in seconds and applies to digitizing or burst measurements.

NameTypeValuesDescription
timereal33.33e-6 - 0.8333Integration time for digitizing or burst measurements.

Sets the trigger level for high pulse current measurements. The slice specifies this setting as part of pulse current measurement timing/trigger configuration.

NameTypeValuesDescription
nrfreal33.33e-6 - 0.8333Integration time in seconds for high pulse measurements.

Sets the low integration time for pulse current measurements. The time is specified in seconds and is available for the low pulse current mode.

NameTypeValuesDescription
NRfreal33.33e-6 - 0.8333Integration time in seconds for low pulse measurements.
:PCURrent:TLEVelset / query

Sets the pulse current trigger level for the selected current range. The specific trigger-level setting available depends on the range in use.

NameTypeValuesDescription
rangeenumAMP | HUNDred | FIFTy | FIVESelects which current range the trigger level applies to.
levelreal0.0 - 5.0Trigger level value in amps.

Sets the trigger level in amps for the 5 A current range. The manual shows this as the :TLEVel branch under pulse current synchronization.

NameTypeValuesDescription
ampoptreal0.0 A - 5.0 ATrigger level to use when on the 5 A current range.

Sets the trigger level used for pulse current measurements. The available level command depends on the selected current range, with separate forms for 5 A, 500 mA, 50 mA, and 5 mA ranges.

NameTypeValuesDescription
ampoptreal0.0 A - 5.0 ATrigger level in amps for use on the 5 A current range.

Set the trigger level in amps for use when on the 50 mA current range. The level is adjustable from 0.0 mA to 50 mA in 0.05 mA or 50 µA steps.

NameTypeValuesDescription
levelreal0.0 mA - 50 mATrigger level to use on the 50 mA current range.

Set the trigger level in amps for use when on the 5 mA current range. The value is adjustable from 0.0 to 5 mA in 5 µA steps.

NameTypeValuesDescription
NRfreal0.0 - 5 mATrigger level value in amps for the 5 mA current range.

Set the pulse current trigger level for the 500 mA current range. The level is specified in amps and applies only for the 500 mA range.

NameTypeValuesDescription
countreal0.0 mA - 500 mATrigger level in amps for use when on the 500 mA current range.
:PCURrent:FASTset / query

Enable or disable pulse current fast readings.

:PCURrent:STEPset / query

Sets the pulse current step method configuration.

Specifies the trigger delay in seconds for pulse current step measurements. The documented range is 0.0 to 0.1 for pulse current measurements or 0.0 to 5.0 for pulse current digitization.

NameTypeValuesDescription
delayreal0.0 - 0.1Trigger delay in seconds.

Sets the number of downward steps used in the pulse current step method. The allowed range is 0 to 20, with the maximum applying to the combined up and down counts.

NameTypeValuesDescription
countinteger0 - 20Number of down steps.

Defines the delay sequence length for pulse current stepping. A value of zero causes the instrument to always use the :PCURrent:STEP:DELay value.

NameTypeValuesDescription
lengthinteger0 - 19Length of the delay sequence.

Defines up to 19 delay sequence values for pulse current step measurements using an index and a time value. The sequence length can be set separately, and zero length uses the :PCURrent:STEP:DELay value.

NameTypeValuesDescription
indexinteger1 - 19Sequence entry index.
timereal0 - 100e-3Delay time value for the indexed sequence entry.

Specify whether sequential triggers are skipped. A value of 1 requires only one trigger; 0 requires multiple triggers.

NameTypeValuesDescription
bboolean-Specifies whether sequential triggers are skipped.

Sets the pulse current step integration time. The allowed range is 33.3 μsec to 100 msec, with a default of 200 μsec.

NameTypeValuesDescription
timereal33.3μsec - 100msecIntegration time for pulse current step measurements.

Set the trigger level for each TLEV step. x identifies the step number from 1 to 20; the current range must be selected before setting the step trigger level values.

NameTypeValuesDescription
levelreal0.0Trigger level value for the specified step.

Specifies the timeout for step measurements other than the first. The first timeout is set separately with :INITial <NRf>.

NameTypeValuesDescription
timereal2 msec - 200 msecTimeout for step measurements other than the first.

Sets the initial timeout step for pulse current step measurements. The value controls the first TimeOUT step and is specified in seconds.

NameTypeValuesDescription
timereal10msec - 60secsFirst TimeOUT step value.

Sets the step-up count used by pulse current step measurements. The manual lists it as part of the :PCURrent:STEP configuration and gives a value range of 0 to 20.

NameTypeValuesDescription
countinteger0 - 20Number of up steps to perform; the maximum is shared for up and down combined.

Specifies the timeout length for pulse current measurements. The first timeout uses :INITial; this command sets the timeout for other steps.

NameTypeValuesDescription
timereal2 ms - 200 msecTimeout for pulse current measurement steps other than the first.

Triggers and returns an array of pulse current readings. The manual notes that for MEASure:ARRay? the average count specifies how many pulse current measurement conversions are placed in the array.

array - Returns an array of pulse current readings.

Triggers and returns one pulse current reading. The notes say that for single readings, the average count specifies how many conversions are averaged for the result, and for array readings it specifies how many measurements are placed in the array.

real - Returns one pulse current reading.

Performs a READ:ARRay? on the specified battery or charger channel function. It is the array form of :MEASure[1][:<function>]?.

NameTypeValuesDescription
functionoptenum-Measurement function to use.
returns - Returns the specified array of readings.

Performs a READ? on the specified battery channel and function.

NameTypeValuesDescription
functionoptenum-Specified measurement function.
returns

Sets the pulse current integration time for the selected channel. The note says AUTO time accounts for the internal trigger delay, but HIGH, LOW, and AVERage do not account for user trigger delay.

NameTypeValuesDescription
timerealsIntegration time used for pulse current measurements.

Enables or disables FAST pulse current mode for the selected channel. The manual refers to detailed usage information for FAST, SEARch, and DETect.

NameTypeValuesDescription
stateenumON | 1 | OFF | 0Turns FAST pulse current mode on or off.

Configures pulse current detection for the selected sense channel. The manual notes it applies to battery channel (#1) and charger channel (#2) and refers to the FAST, SEARch, and DETect usage section for details.

NameTypeValuesDescription
bboolean-Enables or disables pulse current detection.

Sets the timeout length used for searching for the pulse in pulse current measurements. The default setting is 1 second, and the value should allow enough time for detection of the pulse edge plus the pulse period.

NameTypeValuesDescription
timeoutrealsTimeout length for searching for the pulse.

Reads and clears the oldest error/status message from the status queue. This query is part of the STATus subsystem error queue handling.

string - Returns the oldest error/status message and clears it from the queue.
:STATus:PRESetset / query

Resets the status subsystem enable registers to 0 at power-up; the manual also notes it has no effect on the event registers. It resets the operation, measurement, and questionable enable registers, but not *ESE.

Read the measurement status condition register.

integer - Returns the condition register value for the measurement status subsystem.

Programs the enable register for the measurement event status subsystem. The corresponding query reads the enable register.

NameTypeValuesDescription
NRfreal0Enable-register mask value.

Reads the measurement status enable register.

integer - The current value of the measurement event enable register.

Reads the measurement event register in the status subsystem.

integer - Returns the measurement event register contents.

Programs the enable register for the operation status registers. The command is part of the :STATus subsystem and is not affected by *RST.

NameTypeValuesDescription
valueinteger-Value to program into the enable register.

Reads the operation status event register.

integer - Returns the contents of the operation status event register.

Specifies messages not to be placed in the error queue.

NameTypeValuesDescription
liststring-Messages to disable from being placed in the queue.

Reads the disabled messages in the error queue.

string - Returns the disabled messages.

Specifies the error and status messages that are enabled for the queue. This command belongs to the :STATus:QUEue subsystem.

NameTypeValuesDescription
listenum<list>Error and status messages to enable for the queue.

Read the enabled list of messages for the error queue status subsystem.

enum - Returns the enabled list of messages.

Reads the least recent error message from the error queue.

string - The least recent error message in the error queue.

Reads the questionable condition register. The register is real-time and read-only, reflecting the present operating conditions of the instrument.

integer - Returns the questionable condition register value as a bit field.

:ENABleset / query

Sets the enable register for the questionable event status. The register controls which questionable event bits are enabled.

NameTypeValuesDescription
NRfinteger0 - 65535Numeric register value to load into the questionable event enable register.

Reads the questionable event enable register. The register controls which questionable-event bits contribute to the status byte.

integer - Returns the questionable event enable register value.

Reads the questionable event register. The register is latched until read, and reading it clears the bits in that register.

integer - The questionable event register value.

Returns the channel 1 and channel 2 readings in a single message, separated by a comma. After completion, the display is set for Channel #1.

string - A message containing a value for channel 1, a comma, and then a value for channel 2.

:BOTHFUNCset / query

Sets the battery channel (#1) and then the charger channel (#2) to the function specified by name. Valid names are VOLTage, CURRent, PCURrent, or LINTegration.

NameTypeValuesDescription
nameenumVOLTage | CURRent | PCURrent | LINTegrationFunction to assign to both channels.

:BOTHTRGset / query

Triggers a reading on channel 1 and then channel 2. After the command completes, the display is set for Channel #2.

Returns the last array of readings from battery channel (#1). Triggered before reading(s).

array - The last array of readings from battery channel (#1).

Returns the last reading from battery channel (#1). The reading is triggered before the reading(s).

string - Returns the last reading from battery channel (#1).

Switches to the 5 A range and takes a measurement on battery channel (#1).

Triggers and returns a new array of battery channel (#1) readings.

definite_length_block - Returns the last array of readings from battery channel (#1).

Triggers and returns a new battery channel (#1) reading in the 50 mA range. This command switches to the 50 mA range before taking the measurement.

string - Returns a new battery channel (#1) reading.

Triggers and returns a new 5 mA-range battery channel (#1) reading.

real - Returns a new battery channel (#1) reading after switching to the 5 mA range.

Switches to the 500 mA range and then takes a measurement on battery channel (#1).

returns - Returns the new battery channel (#1) reading after switching to the 500 mA range.
:READ[1]:HUNDred?

Triggers and returns a new battery channel (#1) reading.

returns

:SYST:MEPset / query

Sets or clears the Message Exchange Protocol (MEP). The manual notes that when the 488.1 protocol is selected, MEP is disabled to speed up GPIB operation.

NameTypeValuesDescription
stateenumON | OFFEnables or disables MEP.
SYST:MEP ON
SENS:NPLC 1.5; :SYST:MEP OFF

Returns the reading for the active channel. If Trigger on talk both channels is enabled, it returns two readings comma-delimited, one from each channel.

string - The active-channel reading, or two comma-delimited readings when Trigger on talk both channels is ON.

Sets the VFD display brightness. The allowable range is 0 to 1.0, where 0 blanks the display and 1.0 is full brightness.

NameTypeValuesDescription
brightnessreal0 - 1.0Brightness setting for the VFD display.
:DISPlay:CHANnelset / query

Changes the active display channel. Channel 1 selects the battery display and channel 2 selects the charger display.

NameTypeValuesDescription
channelreal1 - 2Active display channel to select.
:DISPlay:DUALviset / query

Enables or disables the dual V and I display. The power-on value is 0.

NameTypeValuesDescription
stateenum1 | 0Enables or disables dual V and I display.
:DISPlay:ENABleset / query

Enables or disables the front-panel display circuitry. When disabled, the instrument operates at a higher speed and the display is blank.

NameTypeValuesDescription
benum0 | OFF | 1 | ONControls display on/off state.

Defines a text message for the display. The message is up to 32 characters long; spaces are counted and an indefinite block message must be the only command or the last command in the program message.

NameTypeValuesDescription
astring-ASCII characters for the display message.

Enables or disables the text message mode. When enabled, the text message is displayed; when disabled, the message is removed from the display and the normal display state returns.

NameTypeValuesDescription
stateenum0 | OFF | 1 | ONEnables or disables text message mode.

Queries the display brightness setting. Power-on value is 0.

real - Returns the present brightness of the VFD display.

Enables or disables the dual V and I display. Use 1 to enable and 0 to disable.

NameTypeValuesDescription
stateboolean-Turns the dual V and I display on or off.
boolean - Returns the dual V and I setting.

Query the state of the display.

enum - Returns whether the display is enabled or disabled.

Queries the text message defined for the display window. The command is part of the display text subsystem under :DISPlay[:WINDow[1]]:TEXT.

string - Returns the current user text message.

Queries the state of the user text message mode in the display subsystem. The message mode is controlled by the :DISPlay[:WINDow[1]]:TEXT:STATe setting.

enum - Returns whether user text message mode is enabled or disabled.

:BOTHset / query

Sets whether trigger-on-talk returns two readings or only the active channel reading. 1 or ON enables the mode; 0 or OFF disables it.

NameTypeValuesDescription
benum1 | ON | 0 | OFFEnables or disables trigger on talk behavior.
:BOTH <b>
:BOTH?query

Queries trigger on talk.

enum - Returns the trigger-on-talk state.

Queries the trigger-on-talk setting.

enum - Returns whether trigger on talk is enabled or disabled.

:FORMset / query

Selects the data format for readings. The example shows using SRE to select SReal format for faster reading speed.

NameTypeValuesDescription
formatenumSRESelects the reading format.
FORM SRE

:FORMat:BORDerset / query

Selects the data format used for transferring readings over the bus. The reading format depends on the presently selected function.

NameTypeValuesDescription
typeenumASCii | SREal | DREalData format to use for transferred readings.
:FORMat[:DATA]set / query

Selects the data format used when transferring readings over the bus. The available formats are ASCII, IEEE-754 single precision, and IEEE-754 double precision.

NameTypeValuesDescription
typeenumASCii | SREal | DREalData format to use for reading transfers.

Queries the byte order setting.

enum - Returns the present byte order.

Queries the current data format.

enum - Returns the current data format.

:BOTHOUTOFF*set / query

Turns both power supply channels OFF.

:BOTHOUTON*set / query

Turns both power supply channels on or off depending on the command variant shown in the table. The manual notes that no query or short form exists.

Queries the pulse current trigger level setting. The trigger level is used for pulse current measurements and is set in 5 mA steps over 0 to 5 A.

real (A) - The trigger level setting in amperes.
:SENSe2:BOTHFUNCset / query

Sets the battery channel (#1), then the charger channel (#2) to the specified function. Valid function names are VOLTage, CURRent, PCURrent, and LINTegration.

NameTypeValuesDescription
nameenumVOLTage | CURRent | PCURrent | LINTegrationFunction to assign to the battery and charger channels.

Queries the state of the current limit. It reports 1 when the output is in current limit for LIMit type or tripped for TRIP type, and 0 when not in LIMit/TRIP.

integer - 1 = in current limit (for LIMit type) or output tripped (for TRIP type); 0 = not in LIMit/TRIP.

Selects the current limit type for the source current limit path. The manual lists the available types as LIMit or TRIP, with a default of LIM.

NameTypeValuesDescription
nameenumLIMit | TRIPSelect the current limit type.

Queries the current limit type for the selected source channel. The documented choices for the corresponding setter are LIMit or TRIP.

enum - Returns the current limit type.

Sets the current limit value for the source current path. The value is specified in amps with 100 bcA resolution.

NameTypeValuesDescription
valuereal0.006 - 5Current limit value.

Queries the current limit value for the source current subsystem. The manual states this query returns the configured current limit.

real (A) - Current limit value in amps.

Sets the VPT offset for the battery channel. The offset range is 0 to 8 V.

NameTypeValuesDescription
NRfreal0 - 8VPT offset value.

Sets the VPT clamp mode for the selected source channel. The mode can be set to ON or OFF.

NameTypeValuesDescription
benumON | OFFClamp mode state.

Sets the VPT clamp mode for the battery channel. The mode can be turned ON or OFF.

NameTypeValuesDescription
modeenumON | OFFSets the VPT clamp mode.

Queries the setting for the VPT offset for source channel 1. The offset is part of the source voltage protection path.

real (V) - Returns the present VPT offset setting.

Queries the voltage amplitude for the immediate voltage level in the source subsystem. The command is part of the voltage path under :SOURce[1]:VOLTage[:LEVel][:IMMediate][:AMPLitude].

real (V) - Returns the voltage amplitude in volts.

Selects a calibration step number for protection calibration. Table 13-2 notes that step numbers correspond to this command’s values.

NameTypeValuesDescription
stepinteger0 - 20Calibration step number.

:CAL:PROT:CODEset / query

Unlocks calibration when the correct code is sent. The manual shows it being used before :CAL:PROT:INIT to begin remote calibration.

NameTypeValuesDescription
codestring-Calibration unlock code.
CAL:PROT:CODE ‘KI002308’
:CAL:PROT:INITset / query

Initiates the remote calibration procedure after calibration has been unlocked with the correct code. It starts the sequence of calibration steps performed over the IEEE-488 bus.

CAL:PROT:INIT
:CAL:PROT:DATEset / query

Sets the calibration date. The year, month, and date must be separated by commas, with year range 2008 to 2107, month 1 to 12, and date 1 to 31.

NameTypeValuesDescription
yyyyinteger2008 - 2107Year of the calibration date.
mminteger1 - 12Month of the calibration date.
ddinteger1 - 31Day of the calibration date.
:CAL:PROT:LOCKset / query

Locks out calibration after the calibration constants are saved.

:CAL:PROT:SAVEset / query

Saves the calibration constants to EEROM. Calibration data will not be saved if calibration is locked, invalid data exists, or all steps were not completed in the proper sequence.

:CAL:PROT:SAVE

Returns the number of times the instrument has been calibrated. Used for remote acquisition of the calibration count.

integer - The calibration count.

Returns the last calibration date. Use CAL:PROT:COUN? to read the calibration count.

string - The calibration date.

Resets the protected calibration code to the default value. The command saves the password as "KI002308" so calibration can be unlocked with that code.

:COUNt?query

Returns the number of remote calibration commands that have been executed in the current calibration session. It is part of the calibration subsystem summary, with the count reported as a numeric value.

integer - The number of calibration commands executed.

:DATEset / query

Programs the calibration date parameters. The appendix lists it as a miscellaneous calibration command.

:DATE?query

Returns the current date parameter for calibration-related programming.

string - The current programmed date parameter.

:INITset / query

Initiates the calibration procedure by unlocking calibration with the password code. The correct code must be sent before any other calibration command; the default remote code is KI002308.

NameTypeValuesDescription
codestring-Up to an 8-character ASCII string, including letters and numbers, enclosed in single quotes.
:CAL:PROT:CODE 'KI002308' Send default code of KI002308.

:LOCKset / query

Locks out calibration-protected commands until the correct calibration code is sent. The code must be sent before any other calibration command, and the default remote code is KI002308.

:CAL:PROT:CODE 'KI002308'

:SAVEset / query

Saves calibration data, but only if calibration was unlocked and the calibration procedure completed properly. The manual notes that calibration data will not be saved if invalid data exists or the steps were not performed in the proper sequence.

:CAL:PROT:CODE 'KI002308'

:STEP10set / query

Performs calibration step 10, which outputs 5 mA nominal current for Channel 1 5 mA range full-scale calibration.

:CAL:PROT:STEP10