Instruction Manual for KEITHLEY models including: 4200A-SCS, 4200A-KXCI-907-01D, 4200A-SCS KXCI Remote Control, 4200A-SCS, KXCI Remote Control, Remote Control, Control

Model 4200A-SCS KXCI Remote Control Programming

Keithley External Control Interface, KXCI, remote interface, SMU commands, CVU commands, PGU commands, PMU commands, communications

Keithley Instruments

Model 4200A-SCS KXCI Remote Control ...

Model 4200A-SCS KXCI Remote Control Programming

Download File

Model 4200A-SCS KXCI Remote Control Programming | Tektronix

[PDF] Model 4200A-SCS KXCI Remote Control Programming - Tektronix

With Keithley External Control Interface (KXCI), you can use a remote computer to control the ... RI (on page 5-42). Instructs a SMU to go to a specified current.


File Info : application/pdf, 192 Pages, 3.61MB

PDF preview unavailable. Download the PDF instead.

4200A-KXCI-907-01D May 2024
Model 4200A-SCS KXCI Remote Control
Programming
4200A-KXCI-907-01 Rev. D May 2024

tek.com/keithley

*P4200A-KXCI-907-01D*
4200A-KXCI-907-01D

Model 4200A-SCS KXCI Remote Control
Programming

© 2024, Keithley Instruments
Cleveland, Ohio, U.S.A.
All rights reserved.
Any unauthorized reproduction, photocopy, or use of the information herein, in whole or in part, without the prior written approval of Keithley Instruments is strictly prohibited.
All Keithley Instruments product names are trademarks or registered trademarks of Keithley Instruments, LLC. Other brand names are trademarks or registered trademarks of their respective holders. Actuate®
Copyright © 1993-2003 Actuate Corporation.
All Rights Reserved.
Microsoft, Visual C++, Excel, and Windows are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.
Document number: 4200A-KXCI-907-01 Rev. D May 2024

Safety precautions
The following safety precautions should be observed before using this product and any associated instrumentation. Although some instruments and accessories would normally be used with nonhazardous voltages, there are situations where hazardous conditions may be present.
This product is intended for use by personnel who recognize shock hazards and are familiar with the safety precautions required to avoid possible injury. Read and follow all installation, operation, and maintenance information carefully before using the product. Refer to the user documentation for complete product specifications.
If the product is used in a manner not specified, the protection provided by the product warranty may be impaired.
The types of product users are:
Responsible body is the individual or group responsible for the use and maintenance of equipment, for ensuring that the equipment is operated within its specifications and operating limits, and for ensuring that operators are adequately trained.
Operators use the product for its intended function. They must be trained in electrical safety procedures and proper use of the instrument. They must be protected from electric shock and contact with hazardous live circuits.
Maintenance personnel perform routine procedures on the product to keep it operating properly, for example, setting the line voltage or replacing consumable materials. Maintenance procedures are described in the user documentation. The procedures explicitly state if the operator may perform them. Otherwise, they should be performed only by service personnel.
Service personnel are trained to work on live circuits, perform safe installations, and repair products. Only properly trained service personnel may perform installation and service procedures.
Keithley products are designed for use with electrical signals that are measurement, control, and data I/O connections, with low transient overvoltages, and must not be directly connected to mains voltage or to voltage sources with high transient overvoltages. Measurement Category II (as referenced in IEC 60664) connections require protection for high transient overvoltages often associated with local AC mains connections. Certain Keithley measuring instruments may be connected to mains. These instruments will be marked as category II or higher.
Unless explicitly allowed in the specifications, operating manual, and instrument labels, do not connect any instrument to mains.
Exercise extreme caution when a shock hazard is present. Lethal voltage may be present on cable connector jacks or test fixtures. The American National Standards Institute (ANSI) states that a shock hazard exists when voltage levels greater than 30 V RMS, 42.4 V peak, or 60 VDC are present. A good safety practice is to expect that hazardous voltage is present in any unknown circuit before measuring.
Operators of this product must be protected from electric shock at all times. The responsible body must ensure that operators are prevented access and/or insulated from every connection point. In some cases, connections must be exposed to potential human contact. Product operators in these circumstances must be trained to protect themselves from the risk of electric shock. If the circuit is capable of operating at or above 1000 V, no conductive part of the circuit may be exposed.
Do not connect switching cards directly to unlimited power circuits. They are intended to be used with impedance-limited sources. NEVER connect switching cards directly to AC mains. When connecting sources to switching cards, install protective devices to limit fault current and voltage to the card.
Before operating an instrument, ensure that the line cord is connected to a properly-grounded power receptacle. Inspect the connecting cables, test leads, and jumpers for possible wear, cracks, or breaks before each use.
When installing equipment where access to the main power cord is restricted, such as rack mounting, a separate main input power disconnect device must be provided in close proximity to the equipment and within easy reach of the operator.
For maximum safety, do not touch the product, test cables, or any other instruments while power is applied to the circuit under test. ALWAYS remove power from the entire test system and discharge any capacitors before connecting or disconnecting cables or jumpers, installing or removing switching cards, or making internal changes, such as installing or removing jumpers.
Do not touch any object that could provide a current path to the common side of the circuit under test or power line (earth) ground. Always make measurements with dry hands while standing on a dry, insulated surface capable of withstanding the voltage being measured.

For safety, instruments and accessories must be used in accordance with the operating instructions. If the instruments or accessories are used in a manner not specified in the operating instructions, the protection provided by the equipment may be impaired.
Do not exceed the maximum signal levels of the instruments and accessories. Maximum signal levels are defined in the specifications and operating information and shown on the instrument panels, test fixture panels, and switching cards.
When fuses are used in a product, replace with the same type and rating for continued protection against fire hazard.
Chassis connections must only be used as shield connections for measuring circuits, NOT as protective earth (safety ground) connections.
If you are using a test fixture, keep the lid closed while power is applied to the device under test. Safe operation requires the use of a lid interlock.

If a screw is present, connect it to protective earth (safety ground) using the wire recommended in the user documentation.

The

symbol on an instrument means caution, risk of hazard. The user must refer to the operating instructions located in the

user documentation in all cases where the symbol is marked on the instrument.

The

symbol on an instrument means warning, risk of electric shock. Use standard safety precautions to avoid personal

contact with these voltages.

The

symbol on an instrument shows that the surface may be hot. Avoid personal contact to prevent burns.

The symbol indicates a connection terminal to the equipment frame.

If this symbol is on a product, it indicates that mercury is present in the display lamp. Please note that the lamp must be properly disposed of according to federal, state, and local laws.
The WARNING heading in the user documentation explains hazards that might result in personal injury or death. Always read the associated information very carefully before performing the indicated procedure.
The CAUTION heading in the user documentation explains hazards that could damage the instrument. Such damage may invalidate the warranty.

The CAUTION heading with the

symbol in the user documentation explains hazards that could result in moderate or minor

injury or damage the instrument. Always read the associated information very carefully before performing the indicated procedure.

Damage to the instrument may invalidate the warranty.

Instrumentation and accessories shall not be connected to humans.

Before performing any maintenance, disconnect the line cord and all test cables.

To maintain protection from electric shock and fire, replacement components in mains circuits -- including the power transformer, test leads, and input jacks -- must be purchased from Keithley. Standard fuses with applicable national safety approvals may be used if the rating and type are the same. The detachable mains power cord provided with the instrument may only be replaced with a similarly rated power cord. Other components that are not safety-related may be purchased from other suppliers as long as they are equivalent to the original component (note that selected parts should be purchased only through Keithley to maintain accuracy and functionality of the product). If you are unsure about the applicability of a replacement component, call a Keithley office for information.

Unless otherwise noted in product-specific literature, Keithley instruments are designed to operate indoors only, in the following environment: Altitude at or below 2,000 m (6,562 ft); temperature 0 °C to 50 °C (32 °F to 122 °F); and pollution degree 1 or 2.

To clean an instrument, use a cloth dampened with deionized water or mild, water-based cleaner. Clean the exterior of the instrument only. Do not apply cleaner directly to the instrument or allow liquids to enter or spill on the instrument. Products that consist of a circuit board with no case or chassis (e.g., a data acquisition board for installation into a computer) should never require cleaning if handled according to instructions. If the board becomes contaminated and operation is affected, the board should be returned to the factory for proper cleaning/servicing.

Safety precaution revision as of June 2018.

Table of contents
Introduction .............................................................................................................. 1-1
Introduction .......................................................................................................................... 1-1
4200A-SCS power supply limitations ................................................................................... 1-2
KXCI communications connections ....................................................................... 2-1
KXCI communications connections ..................................................................................... 2-1
GPIB connections ................................................................................................................ 2-2
Ethernet connections ........................................................................................................... 2-2
Using KCon to configure KXCI............................................................................................. 2-3 Set up KXCI for GPIB control .................................................................................................... 2-3 Set up KXCI for ethernet control ............................................................................................... 2-5 Setting up KXCI as a 4145B emulator....................................................................................... 2-6
GPIB communications.......................................................................................................... 2-8 GPIB status indicators (GPIB communications only) ................................................................ 2-9
Ethernet communications..................................................................................................... 2-9 KXCI ethernet client driver ........................................................................................................ 2-9 Driver functions ....................................................................................................................... 2-10 Example write and read with ethernet ..................................................................................... 2-10
Error messages .................................................................................................................. 2-11
Using KXCI ............................................................................................................... 3-1
Using KXCI........................................................................................................................... 3-1
Output data formats for SMUs ............................................................................................. 3-1 Data format for system mode readings ..................................................................................... 3-1 Data format for user mode readings.......................................................................................... 3-2
Status byte and serial polling ............................................................................................... 3-3 Status byte ................................................................................................................................ 3-3 Bit B0, Data Ready.................................................................................................................... 3-4 Bit B1, Syntax Error................................................................................................................... 3-4 Bit B4, Busy............................................................................................................................... 3-4 Bit B6, RQS (request for service) .............................................................................................. 3-4 Serial polling.............................................................................................................................. 3-5 Waiting for SRQ ........................................................................................................................ 3-5
Logging commands, errors, and test results ........................................................................ 3-5 Logging commands ................................................................................................................... 3-5 Logging errors ........................................................................................................................... 3-6 Logging test results ................................................................................................................... 3-7 Understanding the log file ......................................................................................................... 3-7 Graphing the test results ........................................................................................................... 3-8
KXCI common commands ....................................................................................... 4-1
Common commands ............................................................................................................ 4-1 DR ............................................................................................................................................. 4-2 :ERROR:LAST:CLEAR ............................................................................................................. 4-2 :ERROR:LAST:GET .................................................................................................................. 4-3

Table of contents

Model 4200A-SCS KXCI Remote Control Programming

ID .............................................................................................................................................. 4-3 *IDN? ........................................................................................................................................ 4-4 *OPT? ....................................................................................................................................... 4-4 *RST ......................................................................................................................................... 4-5 SP ............................................................................................................................................. 4-6
Calling KULT user libraries remotely ................................................................................... 4-6 Summary of commands for remote calls ................................................................................... 4-7 AB ............................................................................................................................................. 4-7 EX ............................................................................................................................................. 4-7 GD............................................................................................................................................. 4-9 GN............................................................................................................................................. 4-9 GP ........................................................................................................................................... 4-10 UL ........................................................................................................................................... 4-11 SystemUtil User Library .......................................................................................................... 4-11 instrumentinfo.......................................................................................................................... 4-12 remotemoduleinfo ................................................................................................................... 4-13 systeminfo ............................................................................................................................... 4-14
KXCI SMU commands.............................................................................................. 5-1
KXCI SMU commands ......................................................................................................... 5-1
Summary of KXCI SMU commands..................................................................................... 5-2
Summary of page commands .............................................................................................. 5-4
SMU default settings ............................................................................................................ 5-4
System mode SMU default settings ..................................................................................... 5-5
Command reference ............................................................................................................ 5-6 System mode commands.......................................................................................................... 5-6 CH ............................................................................................................................................. 5-7 VM............................................................................................................................................. 5-8 VS ............................................................................................................................................. 5-9 DT ........................................................................................................................................... 5-10 FS ........................................................................................................................................... 5-11 HT ........................................................................................................................................... 5-12 RT ........................................................................................................................................... 5-12 SC ........................................................................................................................................... 5-14 ST ........................................................................................................................................... 5-14 VC and IC................................................................................................................................ 5-15 VL and IL................................................................................................................................. 5-16 VP and IP ................................................................................................................................ 5-17 VR and IR................................................................................................................................ 5-19 DM .......................................................................................................................................... 5-22 IN ............................................................................................................................................ 5-22 LI ............................................................................................................................................. 5-23 NR ........................................................................................................................................... 5-24 WT .......................................................................................................................................... 5-24 XN ........................................................................................................................................... 5-25 XT ........................................................................................................................................... 5-25 YA ........................................................................................................................................... 5-26 YB ........................................................................................................................................... 5-26 ME........................................................................................................................................... 5-27 GT ........................................................................................................................................... 5-28 SV ........................................................................................................................................... 5-29 MP........................................................................................................................................... 5-30 SR ........................................................................................................................................... 5-30 User mode commands (US).................................................................................................... 5-31 DI ............................................................................................................................................ 5-31

Model 4200A-SCS KXCI Remote Control Programming

Table of contents

DS ........................................................................................................................................... 5-32 DV ........................................................................................................................................... 5-33 TI ............................................................................................................................................. 5-34 TV ........................................................................................................................................... 5-35 Modeless commands .............................................................................................................. 5-36 AC ........................................................................................................................................... 5-36 BC ........................................................................................................................................... 5-37 DO........................................................................................................................................... 5-37 EC ........................................................................................................................................... 5-38 EM........................................................................................................................................... 5-39 IT ............................................................................................................................................. 5-39 RD ........................................................................................................................................... 5-40 RG........................................................................................................................................... 5-41 RI ............................................................................................................................................ 5-42 RS ........................................................................................................................................... 5-42 RV ........................................................................................................................................... 5-43
Code examples .................................................................................................................. 5-43 Example 1: VAR1 and VAR2 sweep (system mode)............................................................... 5-44 Example 2: Basic source-measure (user mode) ..................................................................... 5-45 Example 3: Retrieving saved data (system mode) .................................................................. 5-45 Example 4: VAR1 sweep with real-time data retrieval............................................................. 5-46
KXCI CVU commands .............................................................................................. 6-1
KXCI CVU commands.......................................................................................................... 6-1
Summary of KXCI CVU commands ..................................................................................... 6-2
User mode commands ......................................................................................................... 6-3 :CVU:CABLE:COMP:LOAD ...................................................................................................... 6-4 :CVU:CABLE:COMP:MEASCUSTOM ...................................................................................... 6-5 :CVU:CABLE:COMP:OPEN ...................................................................................................... 6-5 :CVU:CABLE:COMP:SHORT.................................................................................................... 6-6 :CVU:MEASZ? .......................................................................................................................... 6-6
System mode commands..................................................................................................... 6-7 :CVU:BIAS:DCV:SAMPLE ........................................................................................................ 6-7 :CVU:DATA:FREQ? .................................................................................................................. 6-7 :CVU:DATA:STATUS? .............................................................................................................. 6-7 :CVU:DATA:TSTAMP? ............................................................................................................. 6-8 :CVU:DATA:VOLT?................................................................................................................... 6-8 :CVU:DATA:Z?.......................................................................................................................... 6-8 :CVU:DELAY:STEP .................................................................................................................. 6-8 :CVU:DELAY:SWEEP ............................................................................................................... 6-9 :CVU:FSTEPSIZE ..................................................................................................................... 6-9 :CVU:SAMPLE:HOLDT ........................................................................................................... 6-10 :CVU:SAMPLE:INTERVAL...................................................................................................... 6-10 :CVU:SOAK:DCV .................................................................................................................... 6-10 :CVU:STANDBY...................................................................................................................... 6-11 :CVU:STEP:FREQ .................................................................................................................. 6-11 :CVU:SWEEP:ACV ................................................................................................................. 6-12 :CVU:SWEEP:DCV ................................................................................................................. 6-12 :CVU:SWEEP:FREQ............................................................................................................... 6-13 :CVU:SWEEP:LISTDCV ......................................................................................................... 6-14 :CVU:TEST:ABORT ................................................................................................................ 6-14 :CVU:TEST:RUN..................................................................................................................... 6-14
Modeless commands ......................................................................................................... 6-15 :CVU:ACV ............................................................................................................................... 6-15 :CVU:ACZ:RANGE.................................................................................................................. 6-15 :CVU:CHANNEL ..................................................................................................................... 6-16

Table of contents

Model 4200A-SCS KXCI Remote Control Programming

:CVU:CONFIG:ACVHI............................................................................................................. 6-16 :CVU:CONFIG:DCVHI ............................................................................................................ 6-16 :CVU:CORRECT ..................................................................................................................... 6-17 :CVU:DCV ............................................................................................................................... 6-18 :CVU:DCV:OFFSET ................................................................................................................ 6-18 :CVU:FREQ............................................................................................................................. 6-19 :CVU:LENGTH ........................................................................................................................ 6-19 :CVU:MODE............................................................................................................................ 6-20 :CVU:MODEL.......................................................................................................................... 6-20 :CVU:OUTPUT ........................................................................................................................ 6-20 :CVU:RESET........................................................................................................................... 6-21 :CVU:SPEED .......................................................................................................................... 6-21 :CVU:TEST:COMPLETE?....................................................................................................... 6-24
Code examples .................................................................................................................. 6-24 Example 1 ............................................................................................................................... 6-24 Example 2 ............................................................................................................................... 6-26
KXCI PGU and PMU commands.............................................................................. 7-1
Introduction .......................................................................................................................... 7-2
Summary of KXCI PGU and PMU commands..................................................................... 7-3 :PMU:ABORT............................................................................................................................ 7-4 :PMU:CONNECTION:COMP .................................................................................................... 7-5 :PMU:DATA:COUNT? ............................................................................................................... 7-6 :PMU:DATA:GET ...................................................................................................................... 7-7 :PMU:EXECUTE ....................................................................................................................... 7-9 :PMU:INIT ................................................................................................................................. 7-9 :PMU:LLEC:CONFIGURE....................................................................................................... 7-10 :PMU:LOAD ............................................................................................................................ 7-11 :PMU:MEASURE:CONNECTION:COMP................................................................................ 7-12 :PMU:MEASURE:MODE......................................................................................................... 7-13 :PMU:MEASURE:PIV.............................................................................................................. 7-14 :PMU:MEASURE:RANGE....................................................................................................... 7-15 :PMU:OUTPUT:STATE ........................................................................................................... 7-16 :PMU:PULSE:BURST:COUNT................................................................................................ 7-17 :PMU:PULSE:TIMES .............................................................................................................. 7-18 :PMU:PULSE:TRAIN............................................................................................................... 7-21 :PMU:RETAIN:CONFIG .......................................................................................................... 7-21 :PMU:RPM:CONFIGURE........................................................................................................ 7-22 :PMU:SAMPLE:RATE ............................................................................................................. 7-23 :PMU:SOURCE:RANGE ......................................................................................................... 7-24 :PMU:STEP:DC....................................................................................................................... 7-25 :PMU:STEP:PULSE:AMPLITUDE........................................................................................... 7-26 :PMU:STEP:PULSE:BASE...................................................................................................... 7-27 :PMU:SWEEP:DC ................................................................................................................... 7-28 :PMU:SWEEP:PULSE:AMPLITUDE ....................................................................................... 7-29 :PMU:SWEEP:PULSE:BASE .................................................................................................. 7-31 :PMU:TEST:STATUS? ............................................................................................................ 7-32 :PMU:TIMES:PIV .................................................................................................................... 7-32 :PMU:TIMES:WAVEFORM ..................................................................................................... 7-34
Programming examples ..................................................................................................... 7-35 Example: Use KXCI to generate a pulse I-V drain family of curves......................................... 7-35 Example: Using KXCI to generate a pulse train ...................................................................... 7-37
Summary of Segment Arb commands ............................................................................... 7-38 :PMU:SARB:SEQ:MEAS:START ............................................................................................ 7-40 :PMU:SARB:SEQ:MEAS:START:ADD ................................................................................... 7-41 :PMU:SARB:SEQ:MEAS:STOP .............................................................................................. 7-42 :PMU:SARB:SEQ:MEAS:STOP:ADD ..................................................................................... 7-43

Model 4200A-SCS KXCI Remote Control Programming

Table of contents

:PMU:SARB:SEQ:MEAS:TYPE .............................................................................................. 7-44 :PMU:SARB:SEQ:MEAS:TYPE:ADD ...................................................................................... 7-45 :PMU:SARB:SEQ:SSR ........................................................................................................... 7-46 :PMU:SARB:SEQ:SSR:ADD ................................................................................................... 7-47 :PMU:SARB:SEQ:STARTV..................................................................................................... 7-48 :PMU:SARB:SEQ:STARTV:ADD ............................................................................................ 7-49 :PMU:SARB:SEQ:STOPV....................................................................................................... 7-50 :PMU:SARB:SEQ:STOPV:ADD .............................................................................................. 7-51 :PMU:SARB:SEQ:TIME .......................................................................................................... 7-52 :PMU:SARB:SEQ:TIME:ADD.................................................................................................. 7-53 :PMU:SARB:SEQ:TRIG .......................................................................................................... 7-54 :PMU:SARB:SEQ:TRIG:ADD.................................................................................................. 7-55 :PMU:SARB:WFM:SEQ:LIST.................................................................................................. 7-56 :PMU:SARB:WFM:SEQ:LIST:ADD ......................................................................................... 7-57
Programming example for Segment Arb............................................................................ 7-57
KXCI pulse commands for Clarius versions v1.12 and earlier........................................... 7-59 Summary of KXCI PGU commands ........................................................................................ 7-59 PA ........................................................................................................................................... 7-60 PD ........................................................................................................................................... 7-60 PE ........................................................................................................................................... 7-61 PG ........................................................................................................................................... 7-61 PH ........................................................................................................................................... 7-62 PN ........................................................................................................................................... 7-63 PO ........................................................................................................................................... 7-64 PS ........................................................................................................................................... 7-64 PT ........................................................................................................................................... 7-65 PV ........................................................................................................................................... 7-66 RP ........................................................................................................................................... 7-67 TO ........................................................................................................................................... 7-68 TS ........................................................................................................................................... 7-69 VF ........................................................................................................................................... 7-70

Section 1
Introduction
In this section:
Introduction .............................................................................. 1-1 4200A-SCS power supply limitations ....................................... 1-2
Introduction
With Keithley External Control Interface (KXCI), you can use a remote computer to control the source-measure units (SMUs), capacitance-voltage units (CVUs), pulse generator units (PGUs, and pulse generator units (PMU) in the 4200A-SCS directly. For the SMUs, the KXCI command set includes an HP 4145 compatibility mode, allowing many programs already developed for the HP4145 to be used on the 4200A-SCS instead. This document contains:
· KXCI communications connections: Describes the hardware and software set up for GPIB and
ethernet communications.
· KXCI user interface: Describes how to use the KXCI user interface, which is used to control
GPIB operation.
· KXCI common commands: Descriptions of common commands, such as ID commands, reading
commands, and reset commands.
· KXCI SMU commands: Descriptions of the commands used to set up and control SMUs in user
mode and system mode.
· KXCI CVU commands: Descriptions of the commands used to control the CVU using KXCI in
both user mode and system mode.
· KXCI PGU and PMU commands: Descriptions of the modeless commands used to control PGUs
and PMUs. For information on using Python 3 to control the 4200A-SCS, refer to Application Note Controlling the Keithley 4200A-SCS Parameter Analyzer Using the External Control Interface (KXCI) and Python 3 (1KW-74006-0).

Section 1: Introduction

Model 4200A-SCS KXCI Remote Control Programming

4200A-SCS power supply limitations
In some system configurations, the 4200A-SCS power supply cannot supply enough current if a test has too many high-power instruments enabled. Some system configurations may have enough instruments installed to exceed the power supply limit if the selected test has too many channels enabled.
Clarius tracks the instruments used in a test and calculates the maximum power required and compares it to the maximum available power. If the test requires too much power, a message is displayed and the test will not run.
The following table and the equations below it show how the power is calculated. The maximum power available for each instrument in the test module is used in the calculation. The 4210-SMU High Power SMU, 4211-SMU High Power SMU, 4225-PMU Ultra-Fast Pulse Measure Unit, and 4220-PGU High Voltage Pulse Generator draw the majority of the power in the 4200A-SCS chassis.
There are two parts to the total power supply draw. The first part is the power required for the instruments while the 4200A-SCS is idle (on, but not testing). The second part is the power required by the instruments taking part in the test. Note that medium power SMUs (4200-SMUs and 4201-SMUs), 4200 preamplifiers (4200-PAs), and 4210-CVU and 4215-CVU modules are not included in the equations, as their power draw is not significant.

4200A-SCS power requirements

Instrument

Idle power (watts)

High Power SMU (4210-SMU or 4211-SMU) Not significant

4225-PGU

29.4

4225-PMU

50.4

4225-RPM

4.2

10 V PGU or PMU channel*

Not available

40 V PGU or PMU channel*

Not available

Medium Power SMU (4200-SMU or 4201-SMU) Not significant

4210-CVU or 4215-CVU

Not significant

* There are two channels for each PGU and PMU instrument card.

Test power (watts)
45 Not available Not available Not available 8.4 54.6 Not significant Not significant

1-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 1: Introduction

Equations to calculate power:
PowerIDLE = [(29.4 × nPGU) + (50.4 × nPMU) + (4.2 × nRPM)] PowerTEST = [(45 × nHPSMU) + (8.4 × nC10) + (54.6 x nC40)] PowerTOTAL = PowerIDLE + PowerTEST PowerTOTAL = 500 W maximum. If PowerTOTAL is less than or equal to 500 W, the test proceeds.
Where:
· nPGU = number of 4220-PGU cards in the 4200A-SCS chassis (idle power draw) · nPMU = number of 4225-PMU cards in the 4200A-SCS chassis (idle power draw) · nRPM = number of 4225-RPM modules connected to PMUs (idle power draw) · nHPSMU = number of High-Power SMUs (4210-SMUs or 4211-SMUs) in the test · nC10 = number of 10 V PGU or PMU channels in the test · nC40 = number of 40 V PGU or PMU channels in the test
Example 1: 4200A-SCS with two 4210-SMUs or 4211-SMUs, four 4225-PMUs, and eight 4225-RPMs. The test uses all eight PMU+RPM channels set to the 10 V range (no SMUs in test).
PowerIDLE = [(29.4 × nPGU) + (50.4 × nPMU) + (4.2 × nRPM)] = [(29.4 × 0) + (50.4 × 4) + (4.2 × 8)] = 201.6 + 33.6 = 235.2 PowerTEST = [(45 × nHPSMU) + (8.4 × nC10) + (54.6 × nC40)] = [(45 × 0) + (8.4 × 8) + (54.6 × 0)] = 67.2 PowerTOTAL = PowerIDLE + PowerTEST = 235.2 + 67.2 = 302.4 This test has PowerTOTAL 500 W, so this test will proceed.
Example 2: 4200A-SCS with two 4210-SMUs or 4211-SMUs, four 4225-PMUs, and eight 4225-RPMs. The test uses five PMU+RPM channels set to the 40 V range (no SMUs in test).
PowerIDLE = [(29.4 × nPGU) + (50.4 × nPMU) + (4.2 × nRPM)] = [(29.4 × 0) + (50.4 × 4) + (4.2 × 8)] = 201.6 + 33.6 = 235.2 PowerTEST = [(45 × nHPSMU) + (8.4 × nC10) + (54.6 × nC40)] = [(45 × 0) + (8.4 × 0) + (54.6 × 5)] = 273 PowerTOTAL = PowerIDLE + PowerTEST = 235.2 + 273 = 508.2 This test has PowerTOTAL >500 W, so this test will not proceed. Reduce the number of PMU+RPM channels that are set to the 40 V range to less than five.

4200A-KXCI-907-01 Rev. D May 2024

1-3

Section 1: Introduction

Model 4200A-SCS KXCI Remote Control Programming

The following table shows the 4200A-SCS power requirements for valid combinations for the 4225-PMU, 4225-RPM, and high-power SMU.

4200A-SCS power requirements for valid combinations of internal system instruments

Idle power (watts)

Power used in test (watts)

nPMU
2 2 2 2 3 3 3 3 3 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6

nRPM
4 4 4 4 6 6 6 6 6 8 8 8 8 8 10 10 10 10 10 10 12 12 12 12

nC10
0 0 0 4 6 6 6 0 0 8 8 8 0 0 10 10 10 0 0 0 12 12 0 0

nC40
4 4 4 0 0 0 0 5 5 0 0 0 4 4 0 0 0 3 2 2 0 0 2 1

nHPSMU
0 1 2 2 0 1 2 0 1 0 1 2 0 1 0 1 2 0 1 2 0 1 0 1

PowerIDLE
117.6 117.6 117.6 117.6 176.4 176.4 176.4 176.4 176.4 235.2 235.2 235.2 235.2 235.2 294 294 294 294 294 294 352.8 352.8 352.8 352.8

PowerTEST
218.4 263.4 308.4 123.6 50.4 95.4 140.4 273 318 67.2 112.2 157.2 218.4 263.4 84 129 174 163.8 154.2 199.2 218.4 263.4 308.4 123.6

PowerTOTAL
336 381 426 241.2 226.8 271.8 316.8 449.4 494.4 302.4 347.4 392.4 453.6 498.6 378 423 468 457.8 448.2 493.2 336 381 426 241.2

1-4

4200A-KXCI-907-01 Rev. D May 2024

Section 2
KXCI communications connections
In this section:
KXCI communications connections .......................................... 2-1 GPIB connections .................................................................... 2-2 Ethernet connections ............................................................... 2-2 Using KCon to configure KXCI ................................................. 2-3 GPIB communications.............................................................. 2-8 Ethernet communications......................................................... 2-9 Error messages ...................................................................... 2-11
KXCI communications connections
You can communicate with the 4200A-SCS using GPIB or ethernet connections. The connections for each are described in the following topics. The locations of the connections are shown in the following figure.
Figure 1: GPIB and ethernet connectors on the 4200A-SCS

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

GPIB connections
The GPIB cable is the IEEE-488 instrumentation data bus with hardware and programming standards originally adopted by the Institute of Electrical and Electronic Engineers (IEEE) in 1975. The 4200A-SCS conforms to these standards:
· IEEE-488.1-1987 · IEEE-488.2-1992
To connect the 4200A-SCS, use a GPIB cable equipped with standard GPIB connectors, as shown in the following figure. Either end of this cable mates to the GPIB connector on the rear panel of the 4200A-SCS. Connect the other end of the cable to the GPIB connector on the computer. The connectors on the cable are stackable to allow GPIB connection to other instruments. However, to avoid damage, do not stack more than three connectors on any one unit.
To minimize interference caused by electromagnetic radiation, use shielded GPIB cables.
Figure 2: Standard IEEE-488 connectors

Ethernet connections
Use a standard cable (CAT-5, RJ-45 terminated) to connect to the 4200A-SCS, as shown in the figure in Communications connections (on page 2-1).
The ethernet cable must be connected to the network, not directly to a computer.

2-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 2: KXCI communications connections

Using KCon to configure KXCI
You use the Keithley Configuration Utility (KCon) to configure KXCI communications. If you need to set up the 4200A-SCS as a subordinate on a GPIB or ethernet system, you do the initial setup through the KCon KXCI Settings. This allows you to use an external computer to remotely control the 4200A-SCS over GPIB or ethernet. You can also use KXCI to set up emulation for Keysight 4145B Semiconductor Parameter Analyzers. In many cases, test programs developed for use with a Keysight 4145B run without modification when they are used with a 4200A-SCS running KXCI. For more information on KCon, refer to "Keithley Configuration Utility (KCon)" in Model 4200A-SCS Setup and Maintenance.
Before opening KCon to change the present KXCI configuration, you must close KXCI.
The presently selected communications interface (GPIB or ethernet) and its settings are displayed in the KXCI console. By default, the 4200A-SCS is set up for GPIB remote control. The command and message area below the KXCI settings displays sent commands, KXCI error messages, and numerical test results (refer to Using KXCI (on page 3-1)).
Set up KXCI for GPIB control
To set up GPIB control: 1. Open KCon. 2. Select KXCI Settings. The KXCI Settings dialog is displayed, as shown in the following figure.

4200A-KXCI-907-01 Rev. D May 2024

2-3

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

Figure 3: KXCI Settings dialog

3. Set Communications to GPIB.
4. Set the GPIB Address. This is the primary address of the 4200A-SCS when operating under KXCI control. If the selected GPIB address conflicts with the GPIB address of another system component, a red exclamation-point symbol (!) is displayed next to the selected address.
5. Set the Reading Delimiter to determine the output data delimiter characters that are added to the end of each KXCI output message:
 Select String Terminator to use a character.  Select Comma to terminate output data with a comma (,).
6. If you selected String Terminator, select the type of Character:
 None to use no character.  CR to use a carriage return.  LF to use a line feed.  CR/LF to use a carriage return and line feed character sequence.
7. If String Terminator is selected, select EOI ON or EOI OFF. The EOI setting determines if the 4200A-SCS asserts the GPIB End Or Identify (EOI) signal with the last byte of each output data message.
8. Select OK.

2-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 2: KXCI communications connections

When KXCI starts, the status messages look similar to the following figure when GPIB is set up. Figure 4: KXCI status when GPIB selected

Set up KXCI for ethernet control
To set up ethernet control: 1. Open KCon. 2. Select KXCI Settings. The KXCI Settings dialog is displayed. 3. Set Communications to Ethernet. 4. Set the Port Number (the default is 1225, which is acceptable for most installations). Make note
of the port number for use in the code. 5. Select a Reading Delimiter. The delimiter determines if the delimiter for output data is a string
terminator or a comma. 6. If you selected String Terminator, select the Character. The options are:
 None to use no character. Recommended to avoid extra termination characters. The 4200A-SCS automatically adds a null character as a terminator.
 CR to use a carriage return.  LF to use a line feed.  CR/LF to use a carriage return and line feed character sequence.
7. Select OK.

4200A-KXCI-907-01 Rev. D May 2024

2-5

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

When KXCI starts, the status messages look similar to the following figure when ethernet is set up. Figure 5: KXCI status when ethernet is selected

Setting up KXCI as a 4145B emulator
Although the KXCI command set is similar to the Keysight 4145B command set, the 4200A-SCS and Keysight 4145B hardware are different. To use existing 4145B code with the 4200A-SCS, you need to set up the 4200A-SCS SMUs to map to the 4145B instrument numbers. In many cases, test programs developed for use with a Keysight 4145B run without modification when they are used with a 4200A-SCS running KXCI. When a mode is selected, KXCI always starts in that mode.
The following table summarizes some differences and similarities between the modes.

Mode comparison

Mode

Characteristic String reported in response to ID query
GPIB data resolution Maximum number of sweep points Possible instrument configurations
Configuration query Instrument self test Custom A/D control 200 V, 1 A capability 1.0 pA source/measure-range capability (with preamplifier on SMU)

4200A (Normal)

4145 Emulation

KI4200A Vx.x.x (where ID HP4145B 1.1,1.0 x.x.x is the version number)

7 digits

5 digits

4096

1024

8 source-measure units (SMU), voltmeters (VM), or voltage-sources (VS)

*OPT? command

Not supported

SMUs only

Not supported

IT4 command options

Not supported

Supported

Supported

The main difference between the two instruments is that the 4200A-SCS hardware is modular and the Keysight 4145B hardware is fixed, as shown in the following table.

Hardware comparisons Instrument type Source measure units (SMUs) Voltage meter (VM)
Voltage source (VS)

Keithley Instruments 4200A-SCS
2 to 9 You can configure up to nine SMUs to function as voltage meters. You can configure up to nine SMUs to function as voltage sources.

Keysight 4145B 4 (fixed) 2 (fixed)
2 (fixed)

2-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 2: KXCI communications connections

KCon manages these hardware differences by allowing you to assign source-measure unit (SMU), voltage meter, or voltage source functions to any 4200A-SCS SMU, as shown in the following table.

KXCI SMU function assignment Function selection SMU
VM1...VM8 (voltage meter)
VS1...VS8 (voltage source)

Description
Instructs the 4200-SMU, 4201-SMU, 4210-SMU, or 4211-SMU to emulate a Keysight 4145B Source Measure Unit.
Instructs the 4200-SMU, 4201-SMU, 4210-SMU, or 4211-SMU to emulate a Keysight 4145B VM1 or VM2 and additional voltage meters (VMs). You can map up to eight VMs to SMUs. You can assign a VM any number from 1 to 8, regardless of the number of SMUs in the system. Each VM number must be unique.
Instructs the 4200-SMU, 4201-SMU, 4210-SMU, or 4211-SMU to emulate the capabilities of a Keysight 4145B VS1 or VS2 and additional voltage sources (VSs). You can map up to eight VSs to SMUs. You can assign a VS any number from 1 to 8, regardless of the number of SMUs in the system. Each VS number must be unique.

To set up 4145B emulation: 1. Open KCon. 2. Select KXCI Settings. The KXCI Settings dialog is displayed, as shown in the following figure. 3. In the Function column, select the 4145 function that the SMU will emulate. 4. In the Number column, select the number that is used for the device in your 4145B program.

Figure 6: KXCI Settings for 4145B emulation

4200A-KXCI-907-01 Rev. D May 2024

2-7

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

GPIB communications
You cannot run Clarius and KXCI at the same time. When Clarius is running, the 4200A-SCS is the controller and controls all internal and external instruments. When KXCI is running, the 4200A-SCS is a subordinate to a controlling computer. To start KXCI: 1. Close Clarius. 2. Select the KXCI icon on the desktop. The KXCI user interface opens.
The GPIB Status indicators only apply if communications are set to GPIB. Figure 7: KXCI user interface

2-8

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 2: KXCI communications connections

GPIB status indicators (GPIB communications only)
After KXCI is started, indicators in the GPIB Status box report interface status. A green indicator signals the present status:
· SRQ: Turns on when an error or operating condition occurs. · LTN: When on, instrument is in the listener active state. · TLK: When on, instrument is in the talker active state. · RMT: When on, instrument is in the remote state.

If KXCI is running as a subordinate in a GPIB system, you may see the warning, "Access to all GPIB instruments from the 4200 as controller are illegal." This error occurs if you try to control other devices through user library modules. A subordinate node cannot control devices in the system.
Ethernet communications
The 4200A-SCS is not LXI compliant, so be aware of the following communications considerations when using ethernet communications:
· Commands must always be terminated with null. If not, KXCI will not read and echo them. · Ethernet commands always return a response. Commands that do not normally return a response
respond with an acknowledge message and a null terminator (ACK\0).
· Commands that normally return a string or numerical data return that data terminated with the
character that was set in KCon and a null terminator.
If you do not receive data as expected, there may have been an error with the command. Check the KXCI console for error messages. The command may have been sent too soon or had a syntax error. Another potential problem is that there are responses waiting in the buffer that must be cleared before the data can be returned.
KXCI ethernet client driver
A KXCI client driver (32-bit or 64-bit) controls KXCI through the ethernet. You can copy this driver to your controlling computer. The DLL is stand-alone. It does not depend on any other DLLs, so it can be easily moved or copied.
The driver DLLs are named KXCIclient.dll (32-bit) and KXCIclient64.dll (64-bit) and are at the command path: C:\s4200\sys\bin
The KXCIclient.lib (32-bit) and KXCIclient64.lib (64-bit) files are at the command path: C:\s4200\sys\lib
For convenience, a C-language header file (KXCIclient.h) is included with the above paths. It is at the command path: C:\s4200\sys\include

4200A-KXCI-907-01 Rev. D May 2024

2-9

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

Driver functions
The KXCIclient.dll driver has the following functions:
· int OpenKXCIConnection_C(char *IPAddrStr, int PortNum, int *err); · IPAddrStr: IP address in string format nnn.nn.nn.nn (for example, 198.00.02.00) · PortNum: IP Port assigned in the KXCI tab of KCon · err: Socket error code returned by WSAGetLastError()
int SendKXCICommand_C(char *cmdstr, char *ReturnString, int *err);
· cmdstr: KXCI command string, for example, "DE;CH1;CH2" · ReturnString: Data returned by command, if any. If input command results in data to be
returned, it is placed here
· err: Socket error code returned by WSAGetLastError()
int GetKXCISpollByte_C(unsigned short *spbyte, int *err);
· spbyte: KXCI serial poll byte (same as GPIB byte) · err: Socket error code returned by WSAGetLastError()
void CloseKXCIConnection_C(void);

Example write and read with ethernet
The following commands and their responses were made with communications set to comma-separated data with the character set to carriage return (CR). These settings are made in KCon in the KXCI Settings option.

Written command *IDN?\0 CH1, 'VS', 'IS', 1, 3\0 ME\0 DO 'ID'\0

Response KEITHLEY INSTRUMENTS,KI4200A,1442736,V1.8.1\r\0 ACK\0 ACK\0 N 4.3555E-15,N 54.978E-15,...N 449.83E-15\r\0

2-10

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 2: KXCI communications connections

Error messages
KXCI error messages and numbers are shown in the following table.

KXCI error messages

Error number
-999 -998 -997 -996 -995 -994 -993 -992 -991 -990 -989 -988 -987 -986 -985 -984 -980 -979 -978 -975 -974 -973 -972 -971 -970 -969 -968 -967 -966 -965 -964
-963 -962 -961 -960 -959 -958 -957 -956

Error message
IEEE32.DLL GPIB driver is not loaded. Unable to initialize shared memory. Could not establish communications with console. GPIB address not sent as argv[1]. GPIB address not in 0<= addr <= 31. Could not find configuration file. KXCI argument error. KXCI command error. Illegal setup error. Trigger Master card not found. Command not valid on this page. Instrument not mapped. Skipping instrument. Unsupported command received. Unsupported file format error. Could not open specified file. Command not valid during test execution. SMU not present in system. VPU not present in system. Command not valid in User Mode Command not valid in System Mode Command not valid when CVU test is running. Could not write log file. Custom cable compensation failed. HPOT/HCUR magnitude too small. Custom cable compensation failed. LPOT/LCUR magnitude too small. Invalid PMU argument. Pulse Instrument has reached thermal limit. Invalid pulse parameter configuration. Execution Aborted. Command not valid in the present pulse mode. Maximum Source Voltage Reached: Requested voltage across DUT resistance exceeds max voltage available. Maximum number of samples per channel exceeded. Invalid segment Unknown sequence Max sequences Start and stop values for defined segmented arb violate minimum slew rate. At least 3 segments must be defined per sequence Sequence time is too short for a measurement Segment start value does not match previous segment stop value

4200A-KXCI-907-01 Rev. D May 2024

2-11

Section 2: KXCI communications connections

Model 4200A-SCS KXCI Remote Control Programming

KXCI error messages

Error number -955
-954 -953 -952 -951 -950 -949 -948
-947

Error message
SSR cannot be opened when using RPM ranges. Change SSR configuration to close relay or select PMU measure range. Maximum number of segments per PMU channel exceeded PMU Stepper cannot be used without Sweeper. Cannot adjust PMU measure sample rate for pulse configuration. Cannot adjust PMU measure sample rate for SARB configuration. This test has exceeded the system power limit. Maximum number of measure points exceeded for Pulse IV configuration. Sweep step count mismatch for the sweeping channels. All sweeping channels must have same # of steps. At least one Acquire High or Acquire Low parameter must be set to Enable for Pulse IV measurements.

2-12

4200A-KXCI-907-01 Rev. D May 2024

Section 3
Using KXCI
In this section:
Using KXCI............................................................................... 3-1 Output data formats for SMUs.................................................. 3-1 Status byte and serial polling ................................................... 3-3 Logging commands, errors, and test results ............................ 3-5
Using KXCI
To start using KXCI: 1. Close Clarius and KCon. 2. Double-click the KXCI icon on the desktop. The 4200A-SCS is ready to accept commands immediately after you start KXCI. For command information, refer to KXCI SMU commands (on page 5-1), KXCI CVU commands (on page 6-1), and KXCI pulse generator commands (on page 7-1).
To stop using KXCI: Select Exit. This stops operation and closes KXCI.
Output data formats for SMUs
The following topics describe the data formats for system mode and user mode readings. The hierarchy for data status is C, N:
· C: This channel is in compliance · N: Normal
Data format for system mode readings
For system mode operation, use the DO command to get one or more triggered readings. After sending the DO command string and addressing the 4200A-SCS to talk, the output data string is sent to the computer in the following format: X±N.NNNNE±NN,X±N.NNNNE±NN,...X±N.NNNNE±NN Where X is the data status and N is the reading.

Section 3: Using KXCI

Model 4200A-SCS KXCI Remote Control Programming

Scientific notation for the reading exponent: E+00 = 0 E-03 = 10-3 (m) E-06 = 10-6 () E-09 = 10-9 (n) E-12 = 10-12 (p)

Data format for user mode readings

For user mode operation, use the TI or TV command string to trigger and make a reading. After sending the TI or TV command string and addressing the 4200A-SCS to talk, the output data string is sent to the computer in the following format:
XYZ ±N.NNNN E±NN
Where X is the data status, Y is the instrument, Z is the measure mode, and N is the measurement. Y and Z are defined in the following tables.

Voltage measure mode specified (Z = V; see following tables).

Y =

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

SMU1 SMU2 SMU3 SMU4 VM1 VM2 SMU5 SMU6 SMU7 SMU8 VM3 VM4 VM5 VM6 VM7 VM8

Current measure mode specified (Z = I; see below)

Y =

A

B

C

D

E

F

G

H

SMU1 SMU2 SMU3 SMU4 SMU5 SMU6 SMU7 SMU8

3-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Measure mode

Z =

V

I

Voltage Current

Reading (mantissa and exponent)

±N.NNNN E±NN

Section 3: Using KXCI

Scientific notation for the reading exponent: E+00 = 0 E-03 = 10-3 (m) E-06 = 10-6 () E-09 = 10-9 (n) E-12 = 10-12 (p)

Status byte and serial polling
The status byte is an 8-bit register that provides status information on instrument operation. When a particular operating condition occurs, one or more bits of the status byte sets.
You can use serial polling to read the status byte.
The following sections describe the status byte and serial polling.

Status byte
The status byte is an 8-bit register that provides status information on instrument operation. When an operating condition occurs, one or more bits of the status byte are set. The status byte register is shown in the following table.

Status byte register

Bit

B7

B6

B5

B4

B3

B2

B1

B0

Condition Binary value

--

RQS

--

Busy

--

--

Syntax Data

error

ready

--

0/1

--

0/1

--

--

0/1

0/1

Decimal weight

--

64

--

16

--

--

2

1

The bits of the status byte register that are used are described in the following topics.

4200A-KXCI-907-01 Rev. D May 2024

3-3

Section 3: Using KXCI

Model 4200A-SCS KXCI Remote Control Programming

Bit B0, Data Ready
This bit sets (1) when all measurements are completed and data is ready to be output on the GPIB. Any of the following actions clear (0) bit B0:
· Clears (0) when the data transfer starts. · Clears (0) when the BC (buffer clear) command is sent to the 4200A-SCS. · Clears (0) when the 4200A-SCS is serial polled.
Bit B1, Syntax Error
This bit sets (1) when an invalid command string is sent to the 4200A-SCS. Any of the following actions clear (0) bit B1:
· When the 4200A-SCS is serial polled. · When a device clear command (DCL or SDC) is sent to the 4200A-SCS.
Bit B4, Busy
This bit is set (1) while a measurement is being performed. It will clear (0) when the measurement is completed.
Bit B6, RQS (request for service)
This bit sets (1) whenever bit B1 (syntax error) sets. If service request for data ready is enabled (DR1 asserted), bit B6 will set whenever bit B0 (data ready) sets. If service request for data ready is disabled (DR0 asserted), bit B6 will not be affected by bit B0.
Bit B6 remains set until one of the following actions occur:
· Clears (0) when the 4200A-SCS is serial polled. · Clears (0) when a device clear command (DCL or SDC) is sent to the 4200A-SCS.

When bit B6 sets, the SRQ (service request) indicator on the KXCI user interface turns on. It turns off when B6 is cleared.

3-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 3: Using KXCI

Serial polling
The serial poll enable (SPE) and serial poll disable (SPD) general bus command sequence is used to serial poll the 4200A-SCS. Serial polling reads the status byte. Generally, the controller uses the serial polling sequence to determine which of several instruments has requested service with the SRQ line. However, the status byte of the 4200A-SCS may be read to determine when an operating condition has occurred.
If you try to get data before all the measurements in a test are completed, an error occurs. To prevent this, you can use serial polling in a program fragment to monitor the data ready bit (B0) of the status byte. When B0 sets, which indicates that data is ready, the program obtains the measurement data.
After the source-measure testing process is triggered to start (ME1 is sent to start a sweep), the following C-language programming statement serial polls the instrument:
spoll(addr, &poll, &status);
Waiting for SRQ
Instead of serial polling the 4200A-SCS to detect an SRQ, you can monitor the service request line. When an SRQ occurs, the SRQ line is asserted.
If you are using GPIB connections, you can use the following C-language programming routine stop program execution until an SRQ occurs.
send(addr, "DR1", &status); while(!srq()); The first statement enables service request for data ready. The second command holds up program execution until the SRQ (data ready) occurs.
For ethernet connections, you can use the SP command to monitor the service request line.
Logging commands, errors, and test results
When you send commands, KXCI logs the commands, error messages, and test results as described in the following topics.
Logging commands
When you send a command, the left side of the user interface (the command and message display area) displays each command as it is received, as shown in the following figure.

4200A-KXCI-907-01 Rev. D May 2024

3-5

Section 3: Using KXCI

Model 4200A-SCS KXCI Remote Control Programming Figure 8: KXCI command and message display area

To remove existing messages, select Clear Messages. You can use Console Size to set the number of messages that are displayed. You can select 1, 100, or 1000 lines. If Log Console Messages is selected, KXCI also logs each command into the KXCI log file (C:\s4200\sys\KXCI\KXCILogfile.txt). If Timestamps is selected, KXCI logs a timestamp for each message.
Logging errors
The command and message display area displays error messages as they occur.

3-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 3: Using KXCI

Logging test results
The command and message display area also displays the numerical test results for both the 4200A and 4145 Emulation commands sets (refer to "Command Set" in Model 4200A-SCS Setup and Maintenance (4200A-908-01)).
You can turn off the graph display to better display a long sequence of test results. Select Hide Graph in the upper right to hide the graph.

The test results are 0.0000 if the interlock is disconnected.
If the sent commands include the graphics commands, the graph display area graphs the test data. Refer to Graphing the test results (on page 3-8).
Understanding the log file
If Log Console Messages is selected, KXCI logs all commands to a file named KXCILogfile.txt. You can open the text file after KXCI is closed. Note that whenever you open KXCI, the log file clears. The log file is in the directory: C:\s4200\sys\KXCI\ You can use any text editor to open the file. SMUs may return a line such as: DATA:NAI 22.329E-09 The characters after DATA: represent:
· The operating condition: N for normal or C if the SMU is in compliance. · The instrument number, converted to a letter: A for SMU1, B for SMU2 and so on to letter I. · The measurement function: V for voltage or I for current.

4200A-KXCI-907-01 Rev. D May 2024

3-7

Section 3: Using KXCI

Model 4200A-SCS KXCI Remote Control Programming

Graphing the test results
If you have sent the graphics commands (the DM1 command followed by the X-axis and Y-axis configuration commands), KXCI displays a graph of the generated data. See the example graph and graphics commands in the following figure.
Figure 9: KXCI data graph

KXCI plots all Y1 axis curves in red and all Y2 axis curves in blue. To hide the graph, select Hide Graph.

3-8

4200A-KXCI-907-01 Rev. D May 2024

Section 4 KXCI common commands

In this section:
Common commands ................................................................ 4-1 Calling KULT user libraries remotely ........................................ 4-6

Common commands
The command strings described in this section are valid for all instruments and for all operating modes unless otherwise noted. They are used for the operations listed in the following table.

Command

Brief description

DR (on page 4-2)

Enables or disables service request for data ready when communications is set to GPIB.

:ERROR:LAST:CLEAR (on page Clears the last error generated by a KXCI command. 4-2)

:ERROR:LAST:GET (on page 4-3) Retrieves error messages from KXCI for any instrument.

ID (on page 4-3)

Places the instrument ID of the 4200A-SCS in a buffer.

*IDN? (on page 4-4)

Generates an identification query and reads identification information.

*OPT? (on page 4-4)

Returns a result string that contains the 4200A-SCS slot configuration for KXCI.

*RST (on page 4-5)

Resets the instrument settings to default settings.

SP (on page 4-6)

Allows you to acquire the GPIB serial poll byte when ethernet communications are selected.

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

DR

This command enables or disables service request for data ready when communications is set to GPIB.

Usage DRA A
Details

Set service request for data ready:
 Disable service request for data ready: 0  Enable service request for data ready: 1

Available for all instruments.

This command is not available for ethernet communications. Use SP for ethernet communications.

Use a service request to wait until operations are complete before downloading data.

GPIB provides a status byte register to monitor instrument operation. Two bits of this register are bit B0 (Data Ready) and bit B6 (RQS). After all programmed measurements are completed, the data becomes ready for output and bit B0 (Data Ready) sets.

If the service request for data ready is enabled, bit B6 (RQS) is also set when data is ready for output. If the service request for data ready is disabled, bit B6 is not set when data is ready.

Also see

SP (on page 4-6)

:ERROR:LAST:CLEAR

This command clears the last error generated by a KXCI command.

Usage Details

:ERROR:LAST:CLEAR

Call this command at the beginning or end of the test to clear the KXCI error queue.

Example

:ERROR:LAST:CLEAR Errors are removed from the buffer and :ERROR:LAST:GET will no longer return errors.

Also see

Error messages (on page 2-11) :ERROR:LAST:GET (on page 4-3)

4-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

:ERROR:LAST:GET

This command retrieves error messages from KXCI for any instrument.

Usage Details

:ERROR:LAST:GET
This command returns the last stored error in KXCI in the format: <ErrorMessage><ErrorCode><StringTerminators> The read is non-destructive. If you send ERROR:LAST:GET multiple times without clearing, the same error message is returned.

In a test script, send :ERROR:LAST:CLEAR at the beginning of a script to clear any earlier errors so that :ERROR:LAST:GET errors are specific to the present test.

Example Also see

:ERROR:LAST:GET Returns the last error. For example: KXCI command error. (-992)
Error messages (on page 2-11) :ERROR:LAST:CLEAR (on page 4-2)

ID

This command places the instrument ID of the 4200A-SCS in a buffer.

Usage ID
Details

Available for all instruments.

The instrument ID depends on whether you are in 4200A mode or whether you are in the 4145 Emulation mode.

If you are in 4200A mode, the return is KI4200A Vx.x.x (where x.x.x is the version number).

If you are in 4145 Emulation mode, the return is ID HP4145B 1.1,1.0.

For additional details about the differences between the 4200A mode and 4145 emulation mode, refer to Setting up KXCI as a 4145B emulator (on page 2-6).

Also see

None

4200A-KXCI-907-01 Rev. D May 2024

4-3

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

*IDN?

This command generates an identification query and reads identification information.

Usage Details

*IDN?

Available for all instruments.

The identification code includes the manufacturer, model number, serial number, and firmware revision of the instrument. The string is formatted as:

KEITHLEY INSTRUMENTS,MODEL nnnn,xxxxxxx,yyyyy

Where:
· nnnn = the model number · xxxxxxx = the serial number · yyyyy = the firmware revision level

This command must include * before the command.

Also see

None

*OPT?

This command returns a result string that contains the 4200A-SCS slot configuration for KXCI.

Usage Details

*OPT?

When the 4200A-SCS receives this command, it returns a configuration string with up to eight sets of characters:

xxxn,xxxn,xxxn,xxxn,xxxn,xxxn,xxxn,xxxn
Each character set represents the configuration of a slot in the 4200A-SCS. If the corresponding slot contains a channel, xxx indicates the instrument in slot. n is the channel number (1 to 9).

4-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

The possible returns for xxx are described in the following table.

SMUs SMU HPSMU SMUPA HPSMUPA
CVUs CVU PMUs and PGUs VPU PMU PMURPM PMUnRPM1 PMUnRPM2 PMUnRPM1-2 Voltage sources VS Voltage meters VM Other ""

Medium-power SMU without a preamplifier High-power SMU without a preamplifier Medium-power SMU with a preamplifier High-power SMU with a preamplifier
Capacitance Voltage Unit
PGU (source only) PMU without an RPM PMU with an RPM PMU with RPM tied to channel 1 PMU with RPM tied to channel 2 PMU with RPM tied to channel 1 and channel 2
Voltage source only (20 V is presently supported)
Voltage meter
No channel in slot

This command is not available if you are using the 4145 Emulation mode.

Also see

None

*RST

This command resets the instrument settings to default settings.

Usage Details

*RST

Available for all instruments.

This command must include * before the command.

4200A-KXCI-907-01 Rev. D May 2024

4-5

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

This command:
· Resets SMUs, PGUs, PMUs, and CVUs. · Executes :CVU:RESET. · Clears data from previous PMU pulses and deletes all SegArb sequences.

This command does not reset the 4200A-CVIV.

Example

Also see

*RST Returns the instrument to default settings and cancels all pending commands.
:CVU:RESET (on page 6-21) :PMU:INIT (on page 7-9)

SP

The SP command allows you to acquire the GPIB serial poll byte when ethernet communications are selected.

Usage SP
Details

Available for all instruments.

This command is not available for GPIB communications. Use DR for GPIB communications.

Also see

DR (on page 4-2)

Calling KULT user libraries remotely
KXCI contains a set of commands to call user libraries built by the Keithley User Library (KULT) on the 4200A-SCS from a remote interface. Refer to Model 4200A-SCS KULT and KULT Extension Programming (4200A-KULT-907-01) for details on using KULT.

The LPT commands pulse_measrt and PostDataDoubleBuffer are not compatible with KXCI and cannot be used in user libraries called by KXCI. Use PostDataDouble for user test modules (UTMs) that are called using KXCI. Refer to Model 4200A-SCS LPT Library Programming for additional information on these commands.

4-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

Summary of commands for remote calls

Command AB (on page 4-7) EX (on page 4-7) GD (on page 4-9) GN (on page 4-9)
GP (on page 4-10)
instrumentinfo (on page 4-12)
remotemoduleinfo (on page 4-13)
systeminfo (on page 4-14) UL (on page 4-11)

Brief description
Aborts the execution of a module of the user library. Executes a user module using specified parameter values.
Queries and returns the description of a KULT module. Queries input or output parameter values, or both, by name for the last user module run in KXCI. Queries input or output parameter values, or both, by number for the last user module run in KXCI. Retrieves all information on the instrument cards in the 4200A-SCS and the 4200A-CVIV Multi-Switch, if attached. Retrieves all information on the preamplifiers and remote preamplifier/switch modules (RPMs) that are attached to the 4200A-SCS. Retrieves 4200A-SCS system information.
Switches KXCI operation to the user library (usrlib) mode.

AB

This command aborts the execution of a module of the user library.

Usage Also see

AB EX (on page 4-7)

EX

This command executes a user module using specified parameter values.

Usage

EX UserLibrary UserModule(param1, param2, param3...)

UserLibrary

The name of the user library that contains the module to be run

UserModule

The name of the user module to be run

param1, param2, param3...

The specified input or output parameters, or both, for the user module (function); see Details

4200A-KXCI-907-01 Rev. D May 2024

4-7

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

Details

Use the following rules for the input and output parameters:
· Separate parameter values by commas. Put only the string or name between commas, without a
leading space, to prevent parsing errors.
· Separate multiple values in an array by semicolons. · Input and output array parameters must have fewer than 16,000 elements. · Do not use braces or brackets to enclose array parameters. · Do not use quotation marks to enclose strings or names.
For an input parameter, type in the value of the parameter. If the position for an input parameter is left empty, the default value for the parameter is used.
For an output parameter, leave the space empty, as shown in the following example.

When used before the GN or GP commands, you may need to add a delay to allow the execution of the module to finish.

Example 1

Example 2

EX my_2nd_lib VSweep(0, 5, , 11, , 11)
Assume that the following user module (built in KULT) performs a voltage sweep and stores the test voltages and measured current readings in arrays:
 User Library: my_2nd_lib  User Model: VSweep
The parameter sequence for the VSweep function is as follows: Vstart (input), Vstop (input), Imeas (output), NumIPoints (input), Vforce (output),
NumVPoints (input)
This example shows how a user function can be run from the KXCI console using parameters that perform an 11-point sweep that starts at 0 V and stops at 5 V. When the KXCI is in the usrlib mode, the example command runs the KULT function.
After execution of the module completes, you can query input or output parameters or both to return the values. Use GN or GP to query parameters.

EX sweep_lib list_sweep(SMU1,SMU2, 0.0; 0.5; 1.0; 1.5; 2.0; 2.5; 3.0, 7, , 7, ,7)
Assume that the following module (built in KULT) performs a voltage list sweep and stores the forced voltages and measured currents in the following arrays:
 User Library: sweep_lib  User Module: list_sweep
The parameter sequence for the list_sweep function is as follows:
forceSMU (input), measureSMU (input), VoltageList (input), numVoltages (input), ForceV (output), numForceV (input), measI (output), numMeasI (input)
This example shows how a user module that has string and array input parameters can be run from the KXCI console. The two SMUs are specified by their string names, separated by commas, without spaces. The voltage list is an input array of doubles that represent the list of voltages to sweep. The values in the list are separated by semicolons so that the forcing SMU sweeps from 0 V to 3 V in 0.5 V steps. When KXCI is in the usrlib mode, this example command runs the user module. After execution is complete, you can query the input or output parameters to return values. Use GN or GP to query parameters.

4-8

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

Also see

AB (on page 4-7) GN (on page 4-9) GP (on page 4-10)

GD

This command queries and returns the description of a KULT module.

Usage

GD UserLibrary UserModule

UserLibrary

The name of the user library that contains the KULT module to be run

UserModule

The name of the user module to be run

Example

Also see

GD my_2nd_lib VSweep This command queries the description of the user module in the example in the EX command description. The description is displayed in the KXCI console.
EX (on page 4-7)

GN

This command queries input or output parameter values, or both, by name for the last user module run in KXCI.

Usage

GN ParameterName GN ParameterName NumValues

ParameterName

The name of the parameter in the KULT module

NumValues

The number of values in an output array to be returned; see Details

Details

The NumValues parameter is only used for an output parameter that is an array. If NumValues is not used, one value is returned. NumValues must be less than 16,000.

Arrays are returned as a list of values separated by semicolons.

The value returned for an input parameter is the given value. The values returned for an output parameter is the outcome of the test (for example, measured readings).

The output is truncated after 1024 characters on the KXCI console, but the full data string is returned to the caller.

4200A-KXCI-907-01 Rev. D May 2024

4-9

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

You can also query a parameter by specifying the corresponding number for the parameter in the KULT module using GP (on page 4-10).

Example Also see

GN Vforce 11 This command queries all 11 test voltages (Vforce parameter) for the function that was run in the command description for EX. The following array of test voltages are returned and displayed in the KXCI console: 0; 0.5; 1.0; 1.5; 2.0; 2.5; 3.0; 3.5; 4.0; 4.5; 5.0
EX (on page 4-7) GP (on page 4-10)

GP

This command queries input or output parameter values, or both, by number for the last user module run in KXCI.

Usage

GP ParameterPosition GP ParameterPosition NumValues

ParameterPosition

The position of the parameter in the KULT module

NumValues

The number of values in an output array to be returned; see Details

Details

NumValues is only used for an output parameter that is an array. If NumValues is not used, one value is returned. NumValues must be less than 16,000.

Arrays are returned as a list of values separated by semicolons.

The value returned for an input parameter is the given value. The values returned for an output parameter is the outcome of the test (for example, measured readings).

The output is truncated after 1024 characters on the KXCI console, but the full data string is returned to the caller.

You can also query a parameter by specifying the name of the parameter in the user module. See GN (on page 4-9).

4-10

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

Example Also see

GP 5 11 This command queries all test voltages for the Vforce parameter for the user module that was run in the EX example. Vforce is the fifth parameter in the function. The following array of test voltages is returned and displayed in the KXCI console: 0; 0.5; 1.0; 1.5; 2.0; 2.5; 3.0; 3.5; 4.0; 4.5; 5.0
None

UL

This command switches KXCI operation to the user library (usrlib) mode.

Usage UL
Details

This command allows for the use of direct user library module calls.

This command needs to be sent only once before any of the other commands to call user modules. To switch back to normal KXCI command modes, send DE or US.

Send the UL command through GPIB or ethernet to change to the remote usrlib command set.

Example

Also see

UL EX cvivulib cviv_configure (CVIV1, 1, 2, 3, 0, 0, CVHI, CVLO, NC, NC, CV Meas) Select the user library mode. Execute the user module cviv_configure in the user library cvivulib. Refer to the user module source code or the Clarius Help pane for descriptions of the user module parameters and return values.
Channel definition page (DE) (on page 5-6) User mode commands (on page 5-31)

SystemUtil User Library
This user library permits KXCI using the UL mode (see Calling KULT user libraries remotely (on page 4-6)) to retrieve information about the 4200A-SCS instrument and the system.

This user library is not compatible with Clarius user test modules (UTMs). It only works with the UL mode of KXCI.

4200A-KXCI-907-01 Rev. D May 2024

4-11

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

instrumentinfo

This command retrieves all information on the instrument cards in the 4200A-SCS and the 4200A-CVIV Multi-Switch, if attached.

Usage

int instrumentinfo(char *result, int maxlen, int *len);

result maxlen len

String of results for the instruments The maximum number of bytes that result parameter can store in the buffer Number of bytes returned by the function

Details

This function returns all of the instrument-level information for the cards in the 4200A-SCS and the 4200A-CVIV, if attached. The results contain the following information for each instrument card in the 4200A-SCS chassis:
· Slot number (for the 4200A-CVIV, 1 is returned) · Instrument card ID · Model number · Serial number · Hardware version · Firmware version · Calibration date · Calibration due date

All of the information is comma-separated.

Example

Also see

Output for a 4200A-SCS with three instrument cards installed in slot 3 (4220-PGU), slot 5 (4225-PMU), and slot 7 (4210-CVU or 4215-CVU): slotno:3,name:VPU1,model:KIVPU4220,serialno:1254281,hwver:1.0,fwver:1.50,calda
te:Dec 19, 2009,caldue:Dec 19, 2010, slotno:5,name:PMU1,model:KIPMU4225,serialno:1276563,hwver:1.0:544911,fwver:1.5
0,caldate:Nov 28, 2011,caldue:Nov 27, 2012, slotno:7,name:CVU1,model:KICVU4210,serialno:Z005712,hwver:3.0:493083,fwver:2.0
3,caldate:Aug 09, 2010,caldue:Aug 09, 2011
remotemoduleinfo (on page 4-13)

4-12

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 4: KXCI common commands

remotemoduleinfo

This command retrieves all information on the preamplifiers and remote preamplifier/switch modules (RPMs) that are attached to the 4200A-SCS.

Usage

int remotemoduleinfo(char *result, int maxlen, int *len);

result maxlen

String of results for the remote modules The maximum number of bytes that the result can store in the buffer

len

Number of bytes returned by the function

Details

This function returns all information on the preamplifiers and RPMs that are attached to the 4200A-SCS. The results contain the following information for each preamplifier and RPM:
· Slot number · Instrument card ID · Model number · Serial number · Hardware version · Firmware version · Calibration date · Calibration due date

All the information is comma-separated.

Example

Also see

Output for a 4200A-SCS with two preamplifiers (attached to SMUs in slot 1 and slot 2) and one RPM attached to channel 1 of the PMU in slot 6: slotno:1,name:PA1,model:KI4200,serialno:0734120,hwver:D7481,fwver:E02.1,caldat
e:Feb 29, 2016,caldue:Mar 01, 2017, slotno:2,name:PA2,model:KI4200,serialno:0901553,hwver:D08288,fwver:E03,caldate
:Feb 28, 2016,caldue:Feb 28, 2017, slotno:6,name:RPM1-1,model:KIRPM4225,serialno:1314347,hwver:1.4,fwver:2.00,cal
date:Jan 31, 2017,caldue:Jan 31, 2018
instrumentinfo (on page 4-12)

4200A-KXCI-907-01 Rev. D May 2024

4-13

Section 4: KXCI common commands

Model 4200A-SCS KXCI Remote Control Programming

systeminfo

This command retrieves 4200A-SCS system information.

Usage

int systeminfo(char *result, int maxlen, int *len);

result

String of results for the system

maxlen len

The maximum number of bytes that the result can be stored in the buffer Number of bytes returned by the function

Details

This function returns system level information for the 4200A-SCS. The result string contains the following information:

· 4200A-SCS serial number · System software version · System platform version · Clarius+ application version

The results are comma-separated.

Example

Example system info output: serialno:1209478,swver:4200A-852-1.0,platformver:4200A-300-1, clariusver:V1.2

Also see

None

4-14

4200A-KXCI-907-01 Rev. D May 2024

Section 5
KXCI SMU commands
In this section:
KXCI SMU commands ............................................................. 5-1 Summary of KXCI SMU commands ......................................... 5-2 Summary of page commands .................................................. 5-4 SMU default settings ................................................................ 5-4 System mode SMU default settings ......................................... 5-5 Command reference ................................................................ 5-6 Code examples ...................................................................... 5-43
KXCI SMU commands
The SMU command set includes the following command types:
· Page commands · System mode commands · User mode commands · 4200A only commands · Modeless commands
KXCI locates the instrument control routines in pages that are similar to the Keysight Model 4145B command pages. On earlier instruments, page controls allowed you to switch between screens on the instrument. You could page between configuration, data returns, and graphing. This paradigm is used in KXCI, so before sending an instrument control command string, you must send one of the appropriate page commands, which are summarized in Page commands (on page 5-4).
The system mode commands configure the SMUs and make readings. They are a comprehensive set of commands that use all the source-measure capabilities of up to eight SMUs installed in the 4200A-SCS. These commands are described in System mode commands (on page 5-6).
The user mode commands are used for basic source-measure operation, including SMU configuration and data retrieval. These commands are described in User mode commands (on page 5-31).
The modeless commands can be used in any operating mode. These commands are described in Modeless commands (on page 5-36).
To retrieve the slot configuration for KXCI, refer to *OPT? (on page 4-4).
The KXCI command set for the SMUs is similar to the command set used by the Keysight Model 4145B. This similarity allows many programs already developed for the Keysight Model 4145B to run on the 4200A-SCS.

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Summary of KXCI SMU commands

Mode
Page
System Channel Definition (DE) System Measurement Setup (SM) System Source Setup (SS)
System Source Setup (SS) System Any system mode page System Source Setup (SS) System Measurement Setup (SM) System Measurement Setup (SM)
System Measurement Control (MD) System Any system mode page System Measurement Setup (SM) System Source Setup (SS) System Source Setup (SS)
System Any system mode page System Source Setup (SS) System Any system mode page System Source Setup (SS) System Source Setup (SS) System Channel Definition (DE) System Source Setup (SS) System Source Setup (SS) System Channel Definition (DE)

Command

Brief description

CH (on page 5-7) Defines a SMU channel.

DM (on page 5-22) Selects the Keysight 4145B display mode.

DT (on page 5-10)
FS (on page 5-11) GT (on page 5-28) HT (on page 5-12)

Sets the time to wait between when the output voltage is set and when the measurement is made in a sweep.
Sets the offset value when VAR1' is a selected source function.
Acquires (loads) the saved data file or program file.
Sets a hold time that delays the start of a sweep.

IN (on page 5-22) Sets the time between sample measurements.

LI (on page 5-23) ME (on page 5-27)

Enables voltage and current functions to be measured when the 4200A-SCS is in list display mode.
Controls measurements.

MP (on page 5-30) NR (on page 5-24) RT (on page 5-12) SC (on page 5-14)
SR (on page 5-30)

Maps channel n to a given VS, SMU, or VM function.
Sets the number of readings that can be made for time domain measurements.
Sets the ratio value when VAR1' is a selected source function.
Configures the source to output a fixed voltage level for channels that are configured to be voltage source only.
Sets a fixed source range on channel n.

ST (on page 5-14) Enables or disables automatic standby.

SV (on page 5-29) Saves a program file or data file.

VC and IC (on page 5-15)
VL and IL (on page 5-16)
VM (on page 5-8)

Configure the SMU to output a fixed (constant) voltage or current level. Set up a list sweep.
Defines channels that are used as voltmeters.

VP and IP (on page 5-17)
VR and IR (on page 5-19)
VS (on page 5-9)

Set up the VAR2 step sweep.
Set up the VAR1 source function.
Specifies the name and selects the source function for each voltage-source channel.

5-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Mode Page System Measurement Setup (SM) System Measurement Setup (SM) System
System Measurement Setup (SM) System Measurement Setup (SM) User User
User User User Modeless Modeless Modeless
Modeless
Modeless
Modeless Modeless Modeless
Modeless
Modeless
Modeless

Command

Brief description

WT (on page 5-24) XN (on page 5-25) XT (on page 5-25) YA (on page 5-26)

Delays the start of a test sequence for time domain measurements.
Configures the X-axis of the graph to plot an electrical parameter.
Configures the X-axis of the graph to plot time domain values in seconds.
Configures the Y1-axis of the graph.

YB (on page 5-26) Configures the Y2-axis of the graph.

DI (on page 5-31) DS (on page 5-32)
DV (on page 5-33) TI (on page 5-34) TV (on page 5-35) AC (on page 5-36) BC (on page 5-37) DO (on page 5-37)
EC (on page 5-38)
EM (on page 5-39)
IT (on page 5-39) RD (on page 5-40) RG (on page 5-41)
RI (on page 5-42)
RS (on page 5-42)
RV (on page 5-43)

Sets up a SMU channel as a current source.
Specifies the channel number and the voltage output value for each voltage source.
Sets up a SMU channel as a voltage source.
Triggers a current measurement.
Triggers a voltage measurement.
Autocalibrates a SMU channel.
Clears all readings from the buffer.
Returns the timestamp data that was acquired with the voltage or current measurement, or both.
Sets the condition to exit the test if compliance is reached.
Switches between 4145 Emulation and 4200A command sets.
Sets the integration time of a SMU.
Requests real-time readings.
Sets the lowest current range of the SMU to be used when measuring.
Instructs a SMU to go to a specified current range immediately without waiting until the initiation of a test.
Sets the measurement resolution for all channels of a SMU.
Instructs a SMU to go to a specified voltage range immediately without waiting until the initiation of a test.

4200A-KXCI-907-01 Rev. D May 2024

5-3

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Summary of page commands

Page command
DE (on page 5-6) SS (on page 5-10) SM (on page 5-21) MD (on page 5-27) US (on page 5-31) UL (on page 4-11)

Function
Accesses SMU channel definition page. Accesses source setup page. Accesses measurement setup page. Accesses measurement control page. Accesses user-mode page. Allows for use of direct user library module calls. See Calling KULT user libraries remotely (on page 4-6).

SMU default settings
You can return SMUs to power-on default settings by transmitting the DCL (device clear) or SDC (selected device clear) general bus command to the 4200A-SCS. The power-on default settings for the user mode are listed in the following table.
The DCL command returns all instruments (including the SMUs) that are connected to the bus to their default settings. The SDC only affects the SMUs. Note that the device clear commands do not affect the KXCI configuration settings.
Use either of the following C programming language commands (GPIB address 17) to return the SMUs to their power-on default settings:
transmit ("UNL LISTEN 17 SDC", &status); // Reset 4200A only. transmit ("DCL", &status); // Reset all instruments.

The SDC and DCL commands described above are not text-string commands, nor are any of the other commands in this manual that are sent using the transmit function. They are low-level commands that must be sent differently than text-string commands. Do not try to use the transmit function to output text-string commands across the GPIB; use the send function for text-string commands.

SMU power-on user mode default settings

Setting
Range Compliance NRdgs Delay Time Hold Time Wait Time Interval Mode

Default
100 A 105 A 1 0 0 0 0 User mode

5-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

System mode SMU default settings

When KXCI mode is started, the SMUs are in a default state that mimics the Keysight Model 4145B, as shown in the channel definition and source setup tables below. This means that each SMU is active and part of the test, whether or not the test used all the SMUs in the 4200A-SCS chassis.

This may be undesirable, as many tests use a different number of SMUs or SMUs in a different state from the Keysight 4145B default. To avoid the complication of building a KXCI test starting with the default setup, use the following commands to remove the SMUs from the setup:

DE CH1 CH2 CH3 CH4 VM1 VM2 VS1 VS2
The above shows the method for a system with eight SMUs. A system with only four SMUs would not require the last four definitions:

DE CH1 CH2 CH3 CH4 Channel Definition (Page DE) KXCI defaults

Instrument

Name

Source

Command

V

I

Mode

Function

SMU1

V1

I1

SMU2

V2

I2

COM I

CONSTant

CH

VAR2

CH

SMU3*

V3

I3

V

VAR1

CH

SMU4*

V4

I4

V

CONSTant

CH

SMU5*

VS1

N/A

V

CONSTant

VS

SMU6*

VS2

N/A

V

CONSTant

VS

SMU7*

VM1

N/A

N/A

N/A

VM

SMU8*

VM2

N/A

N/A

N/A

VM

* If there are fewer than eight SMUs, only the SMUs in the chassis are programmed to the defaults shown.

Source Setup (Page SS) KXCI defaults

Name Sweep mode Start Stop Step Number of steps Compliance

VAR1 (command VR) V3 Linear 0.00 V 1.00 V 0.010 V 101 0.1 A

VAR2 (command IP) I2 Linear 0.00002 A (20.00 A) N/A 0.00002 A (20.00 A) 5 2 V

Constant
V1 COM V4 V VS1 V VS2 V

Source
0.00 V 0.00 V 0.00 V 0.00 V

Compliance
0.105 A 0.1 A N/A N/A

Command
N/A VC SC SC

4200A-KXCI-907-01 Rev. D May 2024

5-5

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Command reference
Commands to control instrument operation are grouped as follows:
· System mode commands: This comprehensive set of commands allows you to use all the
source-measure capabilities of the SMUs installed in 4200A-SCS.
· User mode commands: This limited set of commands allows you to perform basic
source-measure operation.
· Modeless commands: These commands are valid in any operating mode.
These commands include 4200A only commands, which are valid only while using the 4200A command set instead of the 4145 Emulation command set.

Numeric values can be entered in fixed decimal format (for example, 0.1234) or floating decimal format (for example, 123.4e-3). The maximum number of characters for the value is 12. The maximum number of digits for an exponent is 2.
System mode commands
Most system mode commands are divided into groups, known as pages. In order to use these commands, the appropriate page has to be selected. System mode commands are grouped as follows. For the pages, the command to select the page is shown in parentheses.
· Channel definition page (DE) · Source setup page (SS) · Measurement setup page (SM) · Measurement control page (MD) · Data output and file commands (valid in any system mode page) · Channel mapping command · Fixed source ranging command
Channel definition page (DE)
Use the command strings for the DE page for the following operations:
· SMU channel definition · VS1...VSn channel definition · VM1...VMn channel definition
To send the channel definition command strings to the 4200A-SCS, you must select the channel definition page by sending the command:
DE

5-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

CH

This command defines a SMU channel.

Usage Details

CHA CHA, 'BBBBBB', 'CCCCCC', D, E

A BBBBBB

1, 2, ... or n SMU channel number; the largest value of n is the number of channels in the system (9 maximum); if no parameters are specified after the channel number, the channel is turned off
Voltage name

CCCCCC

Current name

D

Source mode or common:

 1: Voltage source mode

 2: Current source mode

 3: Common (output high connected to common)

E

Source function:

 1: VAR1 sweep source function

 2: VAR2 step source function

 3: Constant (fixed) source function

 4: VAR1' source function

For every used channel that is configured as a SMU, you must specify names for voltage and current, select the source mode, and select the source function.

When the source mode (D) is set to common (3), the source function (E) must be set to constant (3).

The VAR1 source function performs a linear or logarithmic sweep that is synchronized to the steps of VAR2. The VAR1 sweep is performed whenever VAR2 goes to a new step value. The constant source function outputs a fixed (constant) source value.

The VAR1' source function is similar to the VAR1 function, except that each sweep step is scaled by the ratio value (RT) and an offset (FS) as follows:

VAR1' sweep step = (VAR1 sweep step × RT) + FS

For example, assume VAR1 is set to sweep from +1 V to +3 V using 1 V steps. If RT is set to 2, and FS is set to 1, each step of VAR1' is calculated as follows:

VAR1' step 1 = (1 V × 2) + 1 = 3 V

VAR1' step 2 = (2 V × 2) + 1 = 5 V

VAR1' step 3 = (3 V × 2) + 1 = 7 V

If you send CHA with no other parameters, the channel specified by A is disabled.

4200A-KXCI-907-01 Rev. D May 2024

5-7

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example 1

DE CH3, 'V1', 'I1', 1, 3
This command string sets up the SMU assigned to channel 3 to source a fixed voltage (1 V). The specified names for voltage and current are V1 and I1, respectively.

Example 2

Also see

DE CH1; CH2; CH3; CH4 This command string disables channels 1 through 4.
None

VM

This command defines channels that are used as voltmeters.

Usage

VMA, 'BBBBBB' A
BBBBBB

Voltmeter channel: 1 to 9; the assigned value for a voltmeter depends on how instruments are mapped in KCon
User-specified name (up to 6 characters)

Details

KXCI allows up to eight source-measure units (SMUs) to function solely as voltmeters. You can use any channel for any voltmeter function between VM1 and VM9. For example, in a system containing four SMUs, you can use SMU3 as VM7.

If you do not define one of the 4200A-SCS SMUs to emulate a VM, attempts to measure voltages through the nonexistent VM result in data values of 9.000e+37.

If nothing is specified after the prefix and channel number, the channel is not used.

To measure voltage using the 4145B VM1...VMn function, define one of the 4200A-SCS SMUs to emulate VM.

Example

Also see

VM1, 'VM1' This command string defines the channel used for VM1 (specifies the name VM1).
None

5-8

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

VS

This command specifies the name and selects the source function for each voltage-source channel.

Usage Details

VSA, 'BBBBBB', C A
BBBBBB C

Voltage source (1 to 9); the assigned value depends on how instruments are mapped in KCon
User-specified name (up to 6 characters)
Source function:
 1: VAR1  2: VAR2  3: Constant  4: VAR1'

KXCI allows up to eight source-measure units to function solely as voltage sources. You can use any channel for any voltage-source function between VS1 and VS9. For example, in a system containing four SMUs, you can use SMU2 as VS5.

For each voltage source that is used, you must specify a name and select the source function. The VAR1 function performs a voltage sweep that is synchronized to the steps of VAR2. The VAR1 source function performs a linear or logarithmic voltage sweep. The VAR1 sweep is done whenever VAR2 goes to a new step value. The VAR1' function is the same as VAR1 except that each step of the sweep is scaled by a specified ratio (RT) and offset (FS).

The constant source function outputs a fixed (constant) voltage source value. More information on source functions is available throughout this section.

If nothing is specified after the prefix and channel number, the channel is not used.

To source voltage using the 4145B VS1...VSn function, define one of the 4200A-SCS SMUs to emulate the VS.

Example

Also see

VS1, 'VS1', 1 This command string sets up the channel used by VS1 to perform a voltage sweep.
None

4200A-KXCI-907-01 Rev. D May 2024

5-9

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Source setup page (SS)
The Source Setup (SS) commands set up the source functions of the SMUs, including the different types of sweeping.
Use SS command for the following operations:
· Sweep source setup (CH set to VAR1) · Step source setup (CH set to VAR2) · Source function setup (CH set to VAR1') · Constant bias · List sweep setup · Interval or sweep delay time · Sweep hold time · RPM switching · Compliance
To send the following command strings to the 4200A-SCS, you must first select the source setup page by sending the command: SS

DT

This command sets the time to wait between when the output voltage is set and when the measurement is made in a sweep.

Usage

DT A.AAA A.AAA

Delay time in seconds: 0 to 6.553

Details

Sets the time to wait between when the output voltage is set and when the measurement is made. The total time spent on each step in the sweep is a combination of this user-specified delay time and the time it takes to make a measurement.

You typically use the delay time to allow the source to settle before making a measurement. For example, assume a delay time of 1 s. At each step of the sweep, the source is allowed to settle for 1 s before the measurement is made.

Example

Also see

DT 1 This command string sets delay time to 1 s.
None

5-10

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

FS

This command sets the offset value when VAR1' is a selected source function.

Usage

FS ±AAA.A FS ±AAA.A,B
AAA.A B

Details

Offset value: -210 to +210
Available SMU channel (1 to 9); if this parameter is not included, offset applies to all channels that are configured to VAR1'.

When VAR1' is a selected source function, it does the VAR1 sweep with each step scaled by the ratio (RT) value and offset (FS) value as follows:

VAR1' sweep step = (VAR1 sweep step × RT) + FS

The VAR1 sweep shown in the example in VR and IR (on page 5-19) has five steps: 1 V, 2 V, 3 V, 4 V, and 5 V. The corresponding VAR' sweep has the following steps when RT=3 and FS = 2:

VAR1' step 1 = (1 V × 3) + 2 = 5 V

VAR1' step 2 = (2 V × 3) + 2 = 8 V

VAR1' step 3 = (3 V × 3) + 2 = 11 V

VAR1' step 4 = (4 V × 3) + 2 = 14 V

VAR1' step 5 = (5 V × 3) + 2 = 17 V

This VAR1' sweep (not drawn to scale) is shown in the following figure.

Figure 10: VAR' sweep when ratio = 3 and full scale = 2

You can assign a unique offset value to any available SMU channel in the system.

4200A-KXCI-907-01 Rev. D May 2024

5-11

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

RT +3,2 FS +2,2 These command strings set up the VAR1' sweep shown in the figure in the Details (ratio = 3, offset = 2). The above commands set up VAR1' for SMU channel 2. When channel 2 is defined for a VAR1' sweep, ratio is set to 3 and offset is set to 2.
None

HT

This command sets a hold time that delays the start of a sweep.

Usage

HT AAA.A AAA.A

Hold time in seconds: 0 to 655.3

Details

You can delay the start of a sweep by setting a hold time. When the sweep is triggered, it starts after the hold time expires.

For example, you can use the hold time to allow for the device to charge up and settle to the first bias point in the sweep before starting the sweep.

Example

Also see

HT 1 This command string sets the hold time to one second.
None

RT

This command sets the ratio value when VAR1' is a selected source function.

Usage

RT ±AA.A RT ±AA.A,B
AAA.A B

Ratio value: -10 to +10
Available SMU channel (1 to 9); if this parameter is not included, ratio applies to all channels that are configured to VAR1'

5-12

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Details

When VAR1' is a selected source function, it does the VAR1 sweep with each step scaled by the ratio (RT) value and offset (FS) value as follows:
VAR1' sweep step = (VAR1 sweep step × RT) + FS The VAR1 sweep shown in the example in VR and IR (on page 5-19) has five steps: 1 V, 2 V, 3 V, 4 V, and 5 V. The corresponding VAR' sweep has the following steps when RT=3 and FS = 2:
VAR1' step 1 = (1 V × 3) + 2 = 5 V VAR1' step 2 = (2 V × 3) + 2 = 8 V VAR1' step 3 = (3 V × 3) + 2 = 11 V VAR1' step 4 = (4 V × 3) + 2 = 14 V VAR1' step 5 = (5 V × 3) + 2 = 17 V This VAR1' sweep (not drawn to scale) is shown in the following figure.
Figure 11: VAR' sweep when ratio = 3 and full scale = 2

You can assign a unique ratio value to any available SMU channel in the system.

Example

Also see

RT +3,2 FS +2,2

Ratio Offset

These command strings set up the VAR1' sweep shown in the figure in the Details (ratio = 3, offset = 2). The above commands set up VAR1' for SMU Channel 2. When Channel 2 is defined for a VAR1' sweep, ratio is set to 3 and offset is set to 2.

None

4200A-KXCI-907-01 Rev. D May 2024

5-13

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

SC

This command configures the source to output a fixed voltage level for channels that are configured to be voltage source only.

Usage

SCA, ±BBB.BBBB A BBB.BBBB

Voltage source channel: 1 to 9; see Details Output voltage value: -210.00 to +210.00

Details

This command is for use with any channel configured solely as a VS1...VSn voltage source. It configures the source to output a fixed (constant) voltage level.

If nothing is specified after the channel number, the channel is turned off.

The range of possible values for A depends on how instruments are mapped in KCon. The parameter A represents the n in voltage source VSn.

Example

Also see

SC1, 20 This command string sets up VS1 to output a constant 20 V level.
"Keithley Configuration Utility (KCon)" in Model 4200A-SCS Setup and Maintenance

ST

This command enables or disables automatic standby.

Usage

ST A, B A B

Details

SMU channel number (1 to 9)
Enable or disable automatic standby:
 0: Disable automatic standby  1: Enable automatic standby

When automatic standby is enabled, the SMU automatically goes into standby when the test completes. When disabled, the output stays on when the test completes.

Also see

None

5-14

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

VC and IC

These commands configure the SMU to output a fixed (constant) voltage or current level.

Usage Details

AAB, ±CCC.CCCC, ±DDD.DDDD

AA B CCC.CCCC
DDD.DDDD

Source mode:
 Voltage: VC  Current: IC
SMU channel number: 1 to 9
Output value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
Compliance value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500

For any channel configured as a SMU, this command configures the SMU to output a fixed (constant) voltage or current level.

With the voltage source mode (VC) specified in the command string, you set the current compliance. For the current source mode (IC), you set the voltage compliance.

Also see

None

4200A-KXCI-907-01 Rev. D May 2024

5-15

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

VL and IL

These commands set up a list sweep.

Usage Details

AAB, C, ±DDD.DDDD, ±EE.EEEE, ... ±EE.EEEE

AA B C DDD.DDDD
EE.EEEE

The source mode:
 Voltage source (SMU or VS1...VS9): VL  Current source (SMU only): IL
Channel number: 1 to 9
Master or subordinate mode:
 Subordinate mode: 0  Master mode: 1
Compliance value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
List values:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500

A list sweep occurs in the order of the defined sweep parameters. If the source is a SMU, the source mode for the sweep can be voltage or current. If a voltage source (VS1...Sn) is used, the source mode must be voltage.

With the voltage source mode (VL) specified in the command string, you are setting the current compliance. For the current source mode (IL), you are setting the voltage compliance. If you are sourcing voltage, if you specify a compliance current that is below the minimum allowable value (100 pA with a preamplifier installed and 100 nA without a preamplifier), KXCI sets it to the minimum allowable value.

The maximum number of points for the list is 4096. Sweep points must be delimited by commas.

Example

Also see

VL1,1, 0.01, 1, 5, 2 This command string sets up a channel 1 list sweep (1 V, 5 V, 2 V arbitrary steps, and compliance = 10 mA).
None

5-16

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

VP and IP

These commands set up the VAR2 step sweep.

Usage Details

AA ±BBB.BBBB, ±CCC.CCCC, DD, ±EEE.EEEE AA ±BBB.BBBB, ±CCC.CCCC, DD, ±EEE.EEEE, FF

AA BBB.BBBB
CCC.CCCC
DD EEE.EEEE
FF

The source mode:
 VP: Voltage source (SMU or VS1...VS8)  IP: Current source (SMU only)
Start value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
Step value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
Number of steps: 1 to 32
Compliance value (see Details):
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
VAR2 source stepper index: 1 to 4 (see Details)

With the voltage source mode (VP), the output value is in volts. For the current source mode (IP), the output value is in amperes.

If you specify a voltage start or step value below 0.001 V, KXCI automatically sets the value to zero.

With the voltage source mode (VP), you are setting the current compliance. For the current source mode (IP), you are setting the voltage compliance. When sourcing voltage (VP), if you specify a compliance current that is below the minimum allowable value (100 pA with a preamplifier installed and 100 nA without a preamplifier), KXCI sets it to the minimum allowable value.

If you are using is a SMU as the source, the source mode for the VAR2 steps can be voltage or current. If, however, a voltage source (VS1...VS9) is used, the source mode must be voltage. For configuration details, refer to "Keithley Configuration Utility (KCon)" in Model 4200A-SCS Setup and Maintenance.

4200A-KXCI-907-01 Rev. D May 2024

5-17

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

If the source stepper index (FF) is omitted, the default is 1 (first stepper). Use the CH command to define one or more VAR2 sources. The first defined VAR2 is index = 1. The second channel is defined as VAR2 is index = 2, and so on up to a maximum of four VAR2 sources. Note that this is an extension to the traditional VAR2 capability.
Parameters for the VAR2 step function include the start value, step value, and the number of steps. In the following figure, the VAR2 step function starts at 5 V, steps in 5 V increments and has three steps.
Figure 12: Steps resulting from the VP 5, 5, 3, 0.01 command string

Example Also see

VP 5, 5, 3, 0.01 This command string sets up a VAR2 voltage sweep with start = 5 V, step = 5 V, number of steps = 3, and compliance = 10 mA. This command string performs the steps shown in the figure in the Details. These are the same steps that are shown synchronized with sweeps in VR and IR: VAR1 setup (on page 5-19).
CH: SMU channel definition (on page 5-7)

5-18

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

VR and IR

These commands set up the VAR1 source function.

Usage Details

AAB, ±CCC.CCCC, ±DDD.DDDD, ±EEE.EEEE, ±FFF.FFFF

AA B CCC.CCCC DDD.DDDD EEE.EEEE FFF.FFFF

The source mode:
 VR: Voltage source (SMU or VS1...VS9)  IR: Current source (SMU only)
The sweep type:
 1: Linear sweep  2: Log10 sweep  3: Log25 sweep  4: Log50 sweep
Start value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
Stop value:
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
Step value (linear sweep only):
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
For a log sweep, do not set a step value (steps are determined by the setting for B)
Compliance value (also see Details):
 Voltage source: -210.00 to +210.00  Current source, 4200-SMU or 4201-SMU: -0.1050 to +0.1050  Current source, 4210-SMU or 4211-SMU: -1.0500 to +1.0500
For a log sweep, do not set a compliance value

If you specify a voltage start or step value below 0.001 V, KXCI automatically sets the value to zero.

When setting the step value, be aware that the maximum number of points for VAR1 is 1024:

Number of points = (int)(Abs((Stop Value - Start Value) / Step Value) + 1.5)

4200A-KXCI-907-01 Rev. D May 2024

5-19

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

When you are setting a voltage source mode (VR), you are setting a current compliance value. If you are setting a current source mode (IR), you are setting voltage compliance. When sourcing voltage, note that if you specify a compliance current that is below the minimum allowable value (100 pA with a preamplifier installed and 100 nA without a preamplifier), KXCI sets it to the minimum allowable value.
When VAR1 is a selected source function, it does a sweep that is synchronized to the steps of the VAR2 step function. The VAR1 sweep is repeated whenever VAR2 goes to a new step value, as shown in the following figure.
Figure 13: Synchronized VAR1 sweeps and VAR2 steps

If the source is a SMU, the source mode for the sweep can be voltage or current. If, however, a voltage source (VS1...Sn) is used, the source mode must be voltage.
You can do the sweep on a linear or logarithmic scale. With the linear sweep mode selected, the start, stop, and step value parameters define the sweep. Each VAR1 sweep in the figure above sweeps from 1 V (start) to 5 V (stop) in 1 V steps.

5-20

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

With a logarithmic sweep mode selected (log base 10, 25, or 50), only specify the start and stop values. Step size is automatically set to provide a symmetrical sweep on the logarithmic scale.

The time spent on each sweep step depends on the user-set delay time and the time it takes to perform the measurement.
You can delay the start of the sweep by setting a hold time.
Example
VR1, 1, 5, 1, 0.01 This command string sets up a VAR1 linear sweep with a start = 1 V, stop = 5 V, step = 1 V, and compliance = 10 mA. The following figure shows the sweep that results from this setup. The figure in the Details shows the results of the same setup when used with a VAR2 step command.

Also see

None

Measurement setup page (SM)
Use the command strings for the SM page for the following operations:
· Set wait time · Set interval · Select number of readings · Select list display mode · Configure the X and Y data
To send the following command strings to the 4200A-SCS, select the SM page by sending the command:
SM

4200A-KXCI-907-01 Rev. D May 2024

5-21

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

DM

This command selects the Keysight 4145B display mode.

Usage DMA A
Details

Display modes:
 Graphics display mode: 1  List display mode: 2

The 4200A-SCS supports the Keysight 4145B graphics display mode and the Keysight 4145B list display mode command.

The 4200A-SCS does not accept the matrix mode and SMU mode commands (DM3 and DM4).

Example

Also see

DM1 This command string prepares the 4200A-SCS to receive graphics commands.
None

IN

This command sets the time between sample measurements.

Usage

IN AA.AA AA.AA

Interval in seconds: 0.01 to 10

Details

For time domain measurements, you can set the time between sample measurements. After a sample measurement is made, the next measurement starts after the time interval expires.

For constant bias measurements, this is the time between readings.

Example

Also see

IN 0.1 This command string sets the interval to 100 ms.
None

5-22

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

LI

This command enables voltage and current functions to be measured when the 4200A-SCS is in list display mode.

Usage

LI 'AAAAAA' LI 'AAAAAA', 'AAAAAA' LI 'AAAAAA', 'AAAAAA', 'AAAAAA' LI 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA' LI 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA' LI 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA', 'AAAAAA'

AAAAAA

A name assigned for CH, VS, or VM; see channel definition page (DE)

Details

When the 4200A-SCS is in the list display mode (DM2 asserted), the LI command enables functions to be measured in a test sequence. To enable a function, include the SMU channel name (as assigned by the CH command), voltage source name (as assigned by the VS command), or the voltmeter name (as assigned by the VM command) in the command string. The DE page is used to assign names to voltage and current functions.

Only functions that are specified (enabled) are measured. Data sheet columns for disabled functions are not shown.

Example

Also see

L1 'V1', 'I1', 'VS1' Assume the following names have been assigned using the DE page for SMU channel 1 (CH1):
 Voltage is named V1  Current is named I1  Voltage source is named VS1
The command string enables the above functions for a test sequence.
Channel definition page (DE) (on page 5-6) DM (on page 5-22)

4200A-KXCI-907-01 Rev. D May 2024

5-23

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

NR

This command sets the number of readings that can be made for time domain measurements.

Usage

NR AAAA AAAA

Details

Number of measurements to make:
 4200A command set: 1 to 4096  4145 Emulation command set: 1 to 1024

For time domain measurements, you can set the number of sample measurements that can be made. The readings are stored in the buffer.

Example

Also see

NR 200 This command string sets up the 4200A-SCS to make 200 sample measurements.
None

WT

This command delays the start of a test sequence for time domain measurements.

Usage

WT AAA.AAA AAA.AAA

Wait time in seconds: 0 to 100

Details

For time domain measurements, you can delay the start of a test sequence by setting a wait time. The test sequence starts after the wait time period expires.

For the sampling mode or constant bias, this command is a delay after the source output level is set and before the readings begin.

Example

Also see

WT 0.1 This command string sets the wait time to 100 ms.
None

5-24

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

XN

This command configures the X-axis of the graph to plot an electrical parameter.

Usage Example

XN 'AAAAAA', B, ±CCCC.CCC, ±DDDD.DDD

AAAAAA B CCCC.CCC DDDD.DDD

The SMU channel name for the X-axis; up to 6 characters long; must be one of the SMU channel names that you specify on the channel definition (DE) page
X-axis scale type
 Linear scale: 1  Log scale: 2
X-axis minimum value
 Volts: ±9999  Amperes: ±999
X-axis maximum value
 Volts: ±9999  Amperes: ±999

Also see

XN 'V1', 1, -5, 5 This command string:
 Specifies that values from SMU channel V1 are to be plotted on the X-axis.  Sets up the X-axis to be scaled linearly between -5 V and +5 V.
Channel definition page (DE) (on page 5-6)

XT

This command configures the X-axis of the graph to plot time domain values in seconds.

Usage

XT AAAA.AA, BBBB.BB

AAAA.AA

X-axis minimum time value (in seconds): 0.01 to 9999

BBBB.BB

X-axis maximum time value (in seconds): 0.01 to 9999

Example

Also see

XT 0, 10 This command string:
 Specifies that time domain values are to be plotted on the X-axis.  Sets up the X-axis to be scaled between 0 s and 10 s.
None

4200A-KXCI-907-01 Rev. D May 2024

5-25

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

YA
This command configures the Y1-axis of the graph.

Usage Example

YA 'AAAAAA', B, ±CCCC.CCC, ±DDDD.DDD

AAAAAA B
CCCC.CCC DDDD.DDD

The SMU channel name for the Y1-axis, up to 6 characters; must be one of the SMU channel names that you specify on the channel definition (DE) page
Y1-axis scale type:
 Linear scale: 1  Log scale: 2  Log scale absolute value: 3
Y1-axis minimum value:
 Volts: ±9999  Amps: ±999
Y1-axis maximum value:
 Volts: ±9999  Amps: ±999

Also see

YA 'I1', 1, -5E-9, 5E-9 This command string:
 Specifies that values from SMU channel I1 are to be plotted on the Y1-axis.  Sets up the Y1-axis to be scaled linearly between -5 nA and +5 nA.
Channel definition page (DE) (on page 5-6)

YB

This command configures the Y2-axis of the graph.

Usage

YB 'AAAAAA', B, ±CCCC.CCC, ±DDDD.DDD

AAAAAA B
CCCC.CCC DDDD.DDD

The SMU channel name for the Y2-axis, up to 6 characters; must be one of the SMU channel names that you specify on the channel definition (DE) page
Y2 axis scale type:
 Linear scale: 1  Log scale: 2  Log scale absolute value: 3
Y2-axis minimum value
 Volts: ±9999  Amperes: ±999
Y2-axis maximum value
 Volts: ±9999  Amperes: ±999

5-26

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Example

Also see

YB 'I2', 2, 100E-9, 1E-3 The command string:
 Specifies that values from SMU channel I2 are to be plotted on the Y2-axis.  Sets up the Y2-axis to be scaled logarithmically between 100 nA and 1 mA.
Channel definition page (DE) (on page 5-6)

Measurement control page (MD)

The measurement control page contains the command to trigger a test.

To send the command string to control measurements, select the measurement control page by sending the command:

MD

ME

This command controls measurements.

Usage Details

MEA

A

Measurement action:

 Run a single trigger test and store readings in a cleared buffer: 1

 Run a repeat trigger test and store readings in a cleared buffer: 2

 Run a single trigger test and append readings to the buffer: 3

 Abort the test: 4

The ME1 or ME2 command triggers the start of the test and makes the programmed number of measurements. The measured readings are stored in the buffer. Note that the buffer is cleared before readings are stored.

The ME3 command also triggers the test but does not clear the buffer before storing the measured readings. The readings are appended to the readings already stored in the buffer. The buffer can hold up to 4096 readings.

The ME4 command aborts the test.

Example Also see

ME1 This command string triggers the start of the test and stores the readings in the cleared buffer.
None

4200A-KXCI-907-01 Rev. D May 2024

5-27

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Data output and file commands
The command strings for the following operations are valid in any system mode page:
· Obtain output data · Save file · Get file

GT

This command acquires (loads) the saved data file or program file.

Usage

GT 'A BBBBBB' A

BBBBB

File type:
 Program file: P  Data/program file: D
Name of file (up to 6 characters)

Details

The file type and file name must be separated by a space.

For a program file, this command launches the program. For a data file, it opens the files. When the saved program file is recalled, the instrument returns to the settings stored in that file.

The save (SV) command string is used to save instrument settings or to store data acquired in a test.

Example Also see

GT 'P Setup1' This command string gets the program file named Setup1.
SV command: Save file (on page 5-29)

5-28

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

SV

This command saves a program file or data file.

Usage

SV 'A BBBBBB' SV 'A BBBBBB CCCCCCCC'

A
BBBBB CCCCCCCC

File type:
 Program file: P  Data file: D
Name of file (up to 6 characters)
Comment (up to 8 characters)

Details

You must separate the file name and the comment from each other by a space.

When saving a program file, the present instrument settings are stored in a file at the directory path:

C:\s4200\sys\KXCI You specify the name for the file.

The get command string is used to acquire the saved file.

Example Also see

SV 'P Setup1' This command string saves the command sequence as a program file named Setup1.
GT command: Get file (on page 5-28)

4200A-KXCI-907-01 Rev. D May 2024

5-29

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Channel mapping command
You can use the following command with any system mode page. It maps channel n to a given VS, SMU, or VM function.

MP

This command maps channel n to a given VS, SMU, or VM function.

Usage

MP A, BBBC A
BBB C

The channel to be mapped: A value between 1 and the number of channels in the system (9 maximum)
SMU, VS, or VM
The number of the SMU, VS, or VM

Details

If BBB and C are not included in the command, the function defaults to SMU<A>, where <A> is the number of the channel to be mapped.

Example

Also see

MP 3, VM5 This command string maps channel 3 to VM5.
None

Fixed source ranging command
You can use the following command with any system mode page.

SR

This command sets a fixed source range on channel n.

Usage Details

SR A, B A
B

The channel to be controlled: A value between 1 and the number of channels in the system (9 maximum)
Range:
 Auto: 0  Best fixed range (determined by maximum sweep parameters): 2  Fixed range: > 0 to 1.0

The default setting is autorange for backward compatibility. If you specify a range that is below the bias or sweep parameters that follow, the range is adjusted to accommodate the sweep.

5-30

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Example

Also see

SR 1, 2 This command string selects best fixed range on channel 1.
None

User mode commands (US)

You can use the user mode (US) command strings for the following operations:
· SMU setup · VS1...VS9 setup · Triggering

To send these command strings to the 4200A-SCS, select the user mode by sending the command:

US

DI

This command sets up a SMU channel as a current source.

Usage

DIB DIB, CC, ±DDD.DDDD, ±EEE.EEEE

B CC
DDD.DDDD EEE.EEEE

SMU channel: 1 to 9
Current source range:
 Autorange: 0  1 nA range (only with a preamplifier): 1  10 nA range (only with a preamplifier): 2  100 nA range: 3  1 A range: 4  10 A range: 5  100 A range: 6  1 mA range: 7  10 mA range: 8  100 mA range: 9  1 A range (only with a 4210-SMU or 4211-SMU): 10  1 pA range (only with a preamplifier): 11  10 pA range (only with a preamplifier): 12  100 pA range (only with a preamplifier): 13
Output value (amperes):
 4200-SMU or 4201-SMU: -0.1050 to +0.1050  4210-SMU or 4211-SMU: -1.0500 to +1.0500
Compliance value (voltage): -210.00 to 210.00

4200A-KXCI-907-01 Rev. D May 2024

5-31

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Details

For every channel that is configured as a SMU, you must select the source mode (voltage or current), source output range, output value, and compliance value.

To select the voltage source mode, see DV (on page 5-33).

If you send DIB with no other parameters, the output of the specified channel is disabled.

Example

Also see

DI1, 1, 10, 1, 20 This command string configures SMU1 to source 1 nA on the 1 A source range and sets voltage compliance to 20 V.
DV (on page 5-33)

DS

This command specifies the channel number and the voltage output value for each voltage source.

Usage

DSA, ±BBB.BBBB A BBB.BBBB

n, for voltage source VSn; range 1 to 9 Output voltage value: -200.00 to +200.00

Details

KXCI allows up to nine source-measure units to function solely as voltage sources. You can use any channel for any voltage-source function between VS1 and VS9. For example, in a system containing four SMUs, you can use SMU2 as VS5.

The assigned n value for a voltage source (VSn) or voltmeter (VMn) depends on how instruments are mapped in KCon.

Example

Also see

DS1, 20 This command string sets VS1 to output 20 V.
None

5-32

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

DV

This command sets up a SMU channel as a voltage source.

Usage

DVB DVB, CC, ±DDD.DDDD, ±EEE.EEEE

B CC
DDD.DDDD EEE.EEEE

SMU channel: 1 to 9
Voltage source range:
 Autorange: 0  20 V range: 1  200 V range: 2 or 3  200 mV range: 4 (only with a preamplifier)  2 V range: 5 (only with a preamplifier)
Output value (voltage): -210.00 to +210.00
Current compliance value (amperes):
 4200-SMU or 4201-SMU: -0.1050 to +0.1050  4210-SMU or 4211-SMU: -1.0500 to +1.0500

Details

For every channel that is configured as a SMU, you must select the source mode (voltage or current), source output range, output value, and compliance value.

To select the current source mode, see DI (on page 5-31).

If you specify a compliance current that is below the minimum allowable value, KXCI sets it to the minimum allowable value.

If you send DVB with no other parameters, the output of the specified channel is disabled.

Example

Also see

DV1, 1, 10, 10E-3 This command string configures SMU1 to source 10 V on the 20 V source range and sets current compliance to 10 mA.
DI (on page 5-31)

4200A-KXCI-907-01 Rev. D May 2024

5-33

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

TI

This command triggers a current measurement.

Usage

TI AABB BB

Measure channel for current measurements:
 SMU1: 1  SMU2: 2  SMU3: 3  SMU4: 4  SMU5: 5  SMU6: 6  SMU7: 7  SMU8: 8

Details

After sending the command string to trigger a measurement and addressing the 4200A-SCS to talk, the output data string is sent to the computer in the following format:

X Y Z ±N.NNNN E±NN
Where:
· X: The status of the data (where X = N for a normal reading) · Y: The measure channel (Y = A through F) · Z: The measure mode (Z = V or I) · ±N.NNNN E±NN is the reading (mantissa and exponent) · When channels are mapped to different functions (VM or VS), KXCI tries to trigger measurements
on the specified channels. However, if the mapped function for a channel does not match the requested measurement, KXCI reports an error. For example, if the mapped function for a channel is VS2, but the requested measurement is TI2, KXCI reports an error, because a VS cannot measure current.

Also see

TV (on page 5-35) VM (on page 5-8) VS (on page 5-9)

5-34

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

TV

This command triggers a voltage measurement.

Usage

TV BB BB

Measure channel for voltage measurements:
 SMU1: 1  SMU2: 2  SMU3: 3  SMU4: 4  VM1: 5  VM2: 6  SMU5: 7  SMU6: 8  SMU7: 9  SMU8: 10  VM3: 11  VM4: 12  VM5: 13  VM6: 14  VM7: 15  VM8: 16

Details

You can use a SMU to measure voltage either directly (as mapped SMU1 to SMU9) or as a mapped voltmeter (VM1 to VM9), so the SMU is specified in the trigger command string by a unique identifier. For example, a physical SMU that has been mapped as SMU5 (using KCon) is specified by the unique identifier 7.

After sending the command string to trigger a measurement and addressing the 4200A-SCS to talk, the output data string is sent to the computer in the following format:

X Y Z ±N.NNNN E±NN
Where:
· X: The status of the data (where X = N for a normal reading) · Y: The measure channel (Y = A through F) · Z: The measure mode (Z = V or I) · ±N.NNNN E±NN is the reading (mantissa and exponent)

4200A-KXCI-907-01 Rev. D May 2024

5-35

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

When channels are mapped to different functions (VM or VS), KXCI tries to trigger measurements on the specified channels. However, if the mapped function for a channel does not match the requested measurement, KXCI reports an error. For example, if the mapped function for a channel is VS2, but the requested measurement is TI2, KXCI reports an error, because a VS cannot measure current.

Also see

TI (on page 5-34) VM (on page 5-8) VS (on page 5-9)

Modeless commands
The command strings listed in the following table are valid in both the system and user operating modes. Detailed descriptions are provided following the table.

Command AC (on page 5-36) BC (on page 5-37) DO (on page 5-37)
EC (on page 5-38) EM (on page 5-39) IT (on page 5-39) RD (on page 5-40) RG (on page 5-41) RI (on page 5-42)
RS (on page 5-42) RV (on page 5-43)

Brief description
Autocalibrates a SMU channel. Clears all readings from the buffer.
Returns the timestamp data that was acquired with the voltage or current measurement, or both. Sets the condition to exit the test if compliance is reached. Switches between 4145 Emulation and 4200A command sets. Sets the integration time of a SMU. Requests real-time readings. Sets the lowest current range of the SMU to be used when measuring. Instructs a SMU to go to a specified current range immediately without waiting until the initiation of a test. Sets the measurement resolution for all channels of a SMU. Instructs a SMU to go to a specified voltage range immediately without waiting until the initiation of a test.

AC

This command autocalibrates a SMU channel.

Usage

AC A A

SMU number (1 to 9)

Details

SMU only.

When this command is sent, the selected SMU channel is calibrated automatically. The busy bit in the status register is set so that you can detect when autocalibration is finished. The 4200A-SCS will not respond to any commands while autocalibration is executing.

5-36

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Example Also see

AC 1 This command string performs autocalibration on SMU channel number 1.
None

BC

This command clears all readings from the buffer.

Usage BC
Details

SMU only.

The GPIB data buffer can hold up to 4096 readings.

This command string clears all readings from the buffer. It also clears bit B0 (Data Ready) of the status byte.

Also see

None

DO

This command returns the timestamp data that was acquired with the voltage or current measurement, or both.

Usage

DO 'AAAAAA' DO 'AAAAAAB' AAAAAA
B

Details

User-specified name of the channel that made the measurement, up to 6 characters; cannot be changed through the CH or VS commands
T: Return timestamp data S: Return the SMU status

SMU only.

After making measurements, use this command string to request the readings. After the 4200A-SCS is addressed to talk, the readings are sent.

Output data is sent to the computer in the format ±N.NNNN E±NN.

Output data of 0 indicates this point is not measured yet.

4200A-KXCI-907-01 Rev. D May 2024

5-37

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

When you run a voltage sweep without measure commands, you can use DO to retrieve the voltage measurement. However, you cannot use DO to retrieve the current measurement from a voltage sweep. To retrieve the current measurement, use LI, XN, YA, YB, or DV.

Example Also see

DO 'CH1' This command string requests the reading string for SMU channel 1.
DV and DI (on page 5-31) LI (on page 5-23) XN (on page 5-25) YA (on page 5-26) YB (on page 5-26)

EC

This command sets the condition to exit the test if compliance is reached.

Usage

EC A A

Details

Action on compliance:
 Off (do not exit if compliance is reached): 0  On (exit if compliance is reached): 1

SMU only.

Example

Also see

EC 1 This command enables exit on compliance.
None

5-38

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

EM

This command switches between 4145 Emulation and 4200A command sets.

Usage

EM A,B A
B

Mode:
 4145 Emulation: 0  4200A: 1
Which sessions:
 This session only: 0  This and all subsequent sessions (writes to KCon file): 1

Details

SMU only.

Example

Also see

EM 0,1 This selects the 4145 Emulation command set permanently.
None

IT

This command sets the integration time of a SMU.

Usage

ITA IT4, X, Y, Z A
X Y Z

Integration time:
 Short (0.1 PLC): 1  Medium (1.0 PLC): 2  Long (10 PLC): 3  Custom (4200A command set only): 4
Delay factor for custom setting: 0.0 to 100
Filter factor for custom setting: 0.0 to 100
A/D converter integration time in number of PLCs for custom setting: 0.01 to 10.0

4200A-KXCI-907-01 Rev. D May 2024

5-39

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Details

SMU only.
The integration time is the time to convert a measurement. In general, a short integration time provides the fastest measurement speed at the expense of noise. Conversely, a long integration time provides stable readings at the expense of speed. Integration time is based on power line cycles (PLC). Assuming 60 Hz line power, the integration time for a 1 PLC setting is 16.67 ms (1/60).

The preconfigured integration time settings are equivalent to the Fast, Normal, and Quiet settings available in Clarius:
· Short: Equivalent to the Clarius Fast setting. Optimizes the SMU for speed at the expense of
noise performance. It is a good choice for measurements where noise and settling time are not concerns.
· Normal: Equivalent to the Clarius Medium setting. The default and most commonly used setting. It
provides a good combination of speed and low noise and is the best setting for most cases.
· Long: Equivalent to the Clarius Quiet setting. Optimizes the SMU for low-noise measurements at
the expense of speed. If speed is not a critical consideration, it is a good choice when you need the lowest noise and most accurate measurements.

The custom setting combines delay factor, filter factor, and A/D integration time, which is comparable to the individual Clarius Delay Factor, Filter Factor, and A/D converter integration time settings.

Example 1

IT2 This command string sets the integration time to 1.0 PLC.
Example 2

Also see

IT4,2.5,0.6,1.3 This command string sets the delay factor to 2.5, the filter factor to 0.6, and the A/D converter integration time to 1.3 PLCs.
None

RD

This command requests real-time readings.

Usage

RD 'AAAAAA', N RD 'AAAAAAB', N AAAAAA B
N

User-specified name of the channel that made the measurement, up to 6 characters
T: Return timestamp data S: Return the SMU status Index of the point to retrieve; valid range from 1 to the total number of readings

5-40

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Details

SMU only.

While making measurements, use this command string to request the real-time reading. This can be used in a loop while measuring.

Output data is sent to the computer in the format ±N.NNNN E±NN.

Output data of 0 indicates this point is not measured yet.

For an example that demonstrates how to use this command, refer to Program 4: VAR1 sweep with real-time data retrieval (on page 5-46).

Example

Also see

RD 'Volt', 1 This command string requests the first reading for a SMU channel that is named Volt.
DO (on page 5-37)

RG

This command sets the lowest current range of the SMU to be used when measuring.

Usage

RG A,B A B

Details

SMU number (1 to 9)
The lowest autoranged range in amps:
 4200-SMU or 4201-SMU without a preamplifier: -100e-9 to 100e-3  4200-SMU or 4201-SMU with a preamplifier: -1e-12 to 100e-3  4210-SMU or 4211-SMUwithout a preamplifier: -100e-9 to 1  4210-SMU or 4211-SMU with a preamplifier: -1e-12 to 1

SMU only.

The default autoranged ranges are 100 nA without a preamplifier and 1 nA with a preamplifier.

Example

Also see

RG 2, 10E-12 This command string sets the lowest range of SMU2 with a preamplifier to 10 pA.
None

4200A-KXCI-907-01 Rev. D May 2024

5-41

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

RI

This command instructs a SMU to go to a specified current range immediately without waiting until the initiation of a test.

Usage Details

RI channel, range, compliance

channel

SMU number (1 to 9)

range compliance

Range value (amperes):
 4200-SMU or 4201-SMU without a preamplifier: 100e-9 to 100e-3  4200-SMU or 4201-SMU with a preamplifier: 1e-12 to 100e-3
Current compliance value (amperes):
 4200-SMU or 4201-SMU: -0.1050 to +0.1050  4210-SMU or 4211-SMU: -1.0500 to +1.0500

SMU only.

Example

Also see

RI 1, 1E-3, 1E-3 This command string instructs SMU1 to go to the 1 mA range and set compliance to 1 mA.
None

RS

This command sets the measurement resolution for all channels of a SMU.

Usage

RS A A

Details

Resolution, in number of digits:
 4200A command set: 3 to 7  4145 Emulation command set: 3 to 5

SMU only.

Example

Also see

RS 7 This command string provides full SMU resolution when the 4200A command set is selected.
None

5-42

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

RV

This command instructs a SMU to go to a specified voltage range immediately without waiting until the initiation of a test.

Usage

RV channel, range, compliance

channel range

SMU number (1 to 9) Range value (voltage): -210.00 to +210.00

compliance

Voltage compliance value (voltage): -210.00 to +210.00

Details

SMU only.

The range is set to the range that is closest to the entered value. For example, if you set range to 10, the 20 V range is selected.

Example

Also see

RV 1, 2, 1 This command string instructs SMU1 to go to the 2 V range and to set compliance to 1 V.
RI (on page 5-42)

Code examples
The following code examples use the C language and are provided to demonstrate system control using an external computer communicating through GPIB. For these programs, configure KXCI as follows:
· GPIB address: 17 · Delimiter: Comma · EOI: Off

4200A-KXCI-907-01 Rev. D May 2024

5-43

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example 1: VAR1 and VAR2 sweep (system mode)
The following program demonstrates how to program the 4200A-SCS to perform a VAR1 and VAR2 sweep. It assumes that channels 1 through 4 of KXCI are configured for the SMU function.
MAXLEN = 2048; addr = 17;
// Initialize card: initialize(10, 0);
// Set speed to 0.01 PLC, clear buffer, and // enable service request for data ready: send(addr, "IT1 BC DR1",&status);
// Channel definition for SMU1; constant common: send(addr, "DE CH1,'VE','IE',3,3", &status);
// Define SMU2 for VAR2 I sweep: send(addr, "CH2,'VB','IB',2,2", &status);
// Define SMU3 for VAR1 V sweep: send(addr, "CH3,'VC','IC',1,1", &status);
// Define SMU 4 to be off: send(addr, "CH4", &status);
// Define V-sources and V-meters to be off: send(addr, "VS1;VS2;VM1;VM2", &status);
// Source setup; VAR1 linear sweep from 0 V to 1 V in 50 mV // steps, with I-compliance set to 50 mA: send(addr, "SS VR1,0,1,0.05,50E-3", &status);
// Source setup; VAR2 sweep from 0 uA to 40 uA in 10 uA steps: send(addr, "IP 10E-6,10E-6,4,3", &status);
// Select list display mode: send(addr, "SM DM2", &status);
// Trigger start of test: send(addr, "MD ME1", &status);
// Wait for data ready: while(!srq());
// Save readings in a file named "PROG1": send(addr, "SV 'D PROG1'", &status);

5-44

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

Example 2: Basic source-measure (user mode)
The following program demonstrates how to program the 4200A-SCS to perform a basic source-measure operation. It assumes that channels 1 and 2 of KXCI are configured for the SMU function. The measured current reading performed by SMU1 (channel 1) is output to the computer.
MAXLEN = 2048; addr = 17;
// Initialize card: initialize(10, 0);
// Select user mode: send(addr, "US", &status);
// Set speed to 0.01 PLC, clear buffer; // enable service request for data ready: send(addr, "IT1 BC DR1",&status);
// Set SMU1 to source 1.5 V on 20 V range; set compliance // to 1 mA: send(addr, "DV1,1, 1.5, 1E-3", &status);
// Set SMU2 to source 2 V on 20 V range; set compliance to 1 mA: send(addr, "DV2,1,2,1E-3", &status);
// Trigger test; measure current using SMU1: send(addr, "TI1", &status);
// Get reading: enter(recv, MAXLEN, &len, addr, &status);
// Stop SMU outputs: send(addr, "DV1;DV2", &status);
Example 3: Retrieving saved data (system mode)
The following program demonstrates how to retrieve readings that are saved in a data file. In Example 1, SMU3 performed 80 measurements. The 80 current readings were then saved in a data file named 'PROG1'.

The following program assumes that data file PROG1 already exists. This data file is created by Example 1.

4200A-KXCI-907-01 Rev. D May 2024

5-45

Section 5: KXCI SMU commands

Model 4200A-SCS KXCI Remote Control Programming

MAXLEN = 2048; addr = 17;
// Initialize card: initialize(10, 0);
// Load data saved in file named "PROG1": send(addr, "GT 'D PROG1'", &status);
// Output data; 'IC' is the measure channel (SMU3) used by // Program 1: send(addr, "DO 'IC'", &status);
// Obtain data: enter(recv, MAXLEN, &len, addr, &status);
Example 4: VAR1 sweep with real-time data retrieval
The following program demonstrates how to program the 4200A-SCS to perform a VAR1 sweep and retrieve data in real time. It assumes that channels 1 and 2 of KXCI are configured for the SMU function.
MAXLEN = 2048; MAXTIMEOUT = 10000;
addr = 17;
// Initialize card: initialize(10, 0);
// Set speed to 0.01 PLC, clear buffer, and // enable service request for data ready: send(addr, "IT1 BC DR1",&status);
// Channel definition for SMU1; VAR1 V sweep: send(addr, "DE CH1,'V1','I1',1,1", &status);
// Channel definition for SMU2; constant common: send(addr, "DE CH1,'V2','I2',3,3", &status);
// Source setup // VAR1 linear sweep from -5V to 5V in 10 mV with 1mA compliance numPoints = 1001; send(addr, "SS VR1,-5,5,0.01,0.001", &status);
// Select list display mode (no graph): send(addr, "SM DM2", &status);
// Trigger start of test: send(addr, "MD ME1", &status);
// Get data at real time: curPoint = 1; timeoutCount = 0;

5-46

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 5: KXCI SMU commands

while (curPoint <= numPoints && timeoutCount < MAXTIMEOUT) {
Sleep(100); //Get timestamp for the present data point //It should be none zero for already completed reading sprintf(command, "RD'CH1T',%d", curPoint); send(addr, command, &status);
// Get reading: enter(recv, MAXLEN, &len, addr, &status); if (len > 0) {
//0 character return means no readings are ready for this data point if (!(len == 1 && recv[0] == '0') {
//Get voltage reading for curPoint sprintf(command, "RD'V1',%d", curPoint); send(addr, command, &status); enter(recv, MAXLEN, &len, addr, &status);
//Get current reading for curPoint sprintf(command, "RD'I1',%d", curPoint); send(addr, command, &status); enter(recv, MAXLEN, &len, addr, &status);
//Switch to next point curPoint++; } } timeoutCount++; }

4200A-KXCI-907-01 Rev. D May 2024

5-47

Section 6
KXCI CVU commands
In this section:
KXCI CVU commands.............................................................. 6-1 Summary of KXCI CVU commands ......................................... 6-2 User mode commands ............................................................. 6-3 System mode commands......................................................... 6-7 Modeless commands ............................................................. 6-15 Code examples ...................................................................... 6-24
KXCI CVU commands
The commands in the capacitance-voltage unit (CVU) user and system command modes control the CVU using KXCI. This mimics the paradigm used to control the SMUs in I-V tests. In user mode, all commands are processed sequentially and you have full control over the execution sequence and flow control. When a measurement is complete, only one point is generated (such as R + Jx, Cp, Gp, Cs, or Rs). User mode is similar to using the LPT library when running locally. In system mode, when you send the run command, the system buffers and executes all CVU test parameters automatically. The CVU card executes full sweeps. The output sequencing, settling, and sweeping are all handled internally. The 4200A-SCS returns the entire buffer of test data. System mode is similar to running Clarius tests. Many of the CVU commands are valid in both user and system mode, so they are considered to be modeless commands. Processing of these commands depends on the selected mode. If user mode is selected, the command is processed immediately and sent directly to the card. If system mode is selected, the parameter is buffered in a test object, and does not take effect until the execute command is sent. At that time, the CVU firmware acts on the settings and executes the test sequence.
To select the mode, use the :CVU:MODE (on page 6-20) command. To set the mode to user, send: :CVU:MODE 0 To set the mode to system, send: :CVU:MODE 1

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

All the commands act on the selected card, which is set using the :CVU:CHANNEL command.

Summary of KXCI CVU commands

Mode User User
User User User System System System System System System System
System System System System System
System System System

Command :CVU:CABLE:COMP:LOAD (on page 6-4) :CVU:CABLE:COMP:MEASCUSTOM (on page 6-5) :CVU:CABLE:COMP:OPEN (on page 6-5) :CVU:CABLE:COMP:SHORT (on page 6-6) :CVU:MEASZ? (on page 6-6) :CVU:BIAS:DCV:SAMPLE (on page 6-7) :CVU:DATA:FREQ? (on page 6-7) :CVU:DATA:STATUS? (on page 6-7) :CVU:DATA:TSTAMP? (on page 6-8) :CVU:DATA:VOLT? (on page 6-8) :CVU:DATA:Z? (on page 6-8) :CVU:DELAY:STEP (on page 6-8)
:CVU:DELAY:SWEEP (on page 6-9) :CVU:SAMPLE:HOLDT (on page 6-10) :CVU:SAMPLE:INTERVAL (on page 6-10) :CVU:SOAK:DCV (on page 6-10) :CVU:STANDBY (on page 6-11)
:CVU:STEP:FREQ (on page 6-11) :CVU:SWEEP:ACV (on page 6-12) :CVU:SWEEP:DCV (on page 6-12)

Brief description
Performs load compensation and collects the load compensation cable data for the CVU.
Performs custom cable-length compensation and collects the compensation cable data for the CVU.
Performs open compensation and collects the open compensation cable data for the CVU.
Performs short compensation and collects the short compensation cable data for the CVU.
Triggers and returns a single Z measurement using the present CVU settings.
Configures the CVU card to bias a DC voltage and sample n Z measurements.
Queries the frequency measurement of the CVU when a test is complete.
Queries the status of the CVU when a test is complete.
Queries the timestamp of the measurements of the CVU when a test is complete.
Queries the voltage measurement of the CVU when a test is complete.
Queries the Z measurement of the CVU when a test is complete.
Sets the hold time for the CVU test on the selected card for the :CVU:SWEEP:FREQ and :CVU:SWEEP:DCV operations.
Sets the sweep delay for the CVU test on the selected card.
Sets the hold time for a sampling mode test on the selected card.
Sets the delay between samples for the selected card.
Sets the presoak DC voltage for all sweeps for the selected CVU card.
Configures the selected CVU card to disable DC bias at the end of a test or to leave the DC bias active.
Configures the selected CVU card to step frequency and sample Z measurements.
Configures the selected CVU card to sweep AC voltage and sample Z measurements.
Configures the selected CVU card to sweep DC voltage and sample Z measurements.

6-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

Mode System
System

Command :CVU:SWEEP:FREQ (on page 6-13)
:CVU:SWEEP:LISTDCV (on page 6-14)

System System Modeless Modeless

:CVU:TEST:ABORT (on page 6-14) :CVU:TEST:RUN (on page 6-14) :CVU:ACV (on page 6-15) :CVU:ACZ:RANGE (on page 6-15)

Modeless :CVU:CHANNEL (on page 6-16)

Modeless :CVU:CONFIG:ACVHI (on page 6-16)

Modeless :CVU:CONFIG:DCVHI (on page 6-16)

Modeless :CVU:CORRECT (on page 6-17)

Modeless :CVU:DCV (on page 6-18)

Modeless :CVU:DCV:OFFSET (on page 6-18) Modeless :CVU:FREQ (on page 6-19)

Modeless :CVU:FSTEPSIZE (on page 6-9)

Modeless :CVU:LENGTH (on page 6-19)

Modeless :CVU:MODE (on page 6-20) Modeless :CVU:MODEL (on page 6-20)

Modeless Modeless Modeless

:CVU:OUTPUT (on page 6-20) :CVU:RESET (on page 6-21) :CVU:SPEED (on page 6-21)

Modeless :CVU:TEST:COMPLETE? (on page 6-24)

Brief description
Configures the selected CVU card to sweep frequency and sample Z measurements.
Configures the selected CVU card to sweep arbitrary DC voltage points and sample Z measurements.
Stops a running KXCI CVU test.
Starts a CVU test on the specified card.
Sets the AC drive level for specified CVU card.
Sets the AC measurement range for the specified CVU card.
Selects the CVU card on which subsequent CVU commands will act.
Defines the source terminal (AC only) for the CVU test.
Defines the source terminal (DC only) for the CVU test.
Enables open, short, and load correction for the specified CVU card.
Sets the DC bias voltage for the specified CVU card.
Applies an offset value to the DC low terminal.
Sets the frequency for the AC source for the specified CVU card.
Configures the frequency step size for the selected 4215-CVU card.
Selects the cable length for the specified CVU card.
Sets the mode to User or System.
Sets the measurement model for the selected CVU card.
Enables or disables the CVU output.
Sends a soft reset to the specified card.
Sets the measurement speed for the selected CVU card.
Queries the status of the test.

User mode commands
In user mode, all commands are processed sequentially and you have full control over the execution sequence and flow control. When a measurement is complete, only one point is generated (such as R + Jx, Cp, Gp, Cs, or Rs). User mode is similar to using the LPT library when running locally.

4200A-KXCI-907-01 Rev. D May 2024

6-3

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:CABLE:COMP:LOAD

This command performs load compensation and collects the load compensation cable data for the CVU.

Usage Details

:CVU:CABLE:COMP:LOAD length, load

length load

The length of the cable:
 0:  0.5 m  1.5: >0.5 m to < 2.5 m  3.0:  2.5 m to 5 m  4.0: Custom  5.0: CVIV 2W  6.0: CVIV 4W black 0.75 m cable  7.0: CVIV 4W blue 0.61 m cable
The load value

If you use the custom setting, run :CVU:CABLE:COMP:MEASCUSTOM before sending the :CVU:CABLE:COMP:LOAD command.

Custom cable compensation supports only one set of cable constants for a CVU. For example, if you run custom cable compensation for CVU2 and CVU1, the constants for CVU2 are lost.

To enable or disable load compensation, send :CVU:CORRECT.

For additional information on cable compensation, refer to "Connection compensation" in the Model 4200A-SCS Capacitance-Voltage Unit (CVU) User's Manual.

Also see

:CVU:CABLE:COMP:MEASCUSTOM (on page 6-5) :CVU:CORRECT (on page 6-17)

6-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

:CVU:CABLE:COMP:MEASCUSTOM

This command performs custom cable-length compensation and collects the compensation cable data for the CVU.

Usage Details

:CVU:CABLE:COMP:MEASCUSTOM

If you are using the custom parameter for the open, short, or load commands, send the :CVU:CABLE:COMP:MEASCUSTOM command before sending those commands.

Also see

For additional information on cable compensation, refer to "Connection compensation" in the Model 4200A-SCS Capacitance-Voltage Unit (CVU) User's Manual.
:CVU:CABLE:COMP:LOAD (on page 6-4) :CVU:CABLE:COMP:OPEN (on page 6-5) :CVU:CABLE:COMP:SHORT (on page 6-6)

:CVU:CABLE:COMP:OPEN

This command performs open compensation and collects the open compensation cable data for the CVU.

Usage Details

:CVU:CABLE:COMP:OPEN length

length

The length of the cable:
 0:  0.5 m  1.5: >0.5 m to < 2.5 m  3.0:  2.5 m to 5 m  4.0: Custom  5.0: CVIV 2W  6.0: CVIV 4W black 0.75 m cable  7.0: CVIV 4W blue 0.61 m cable

If you use the custom setting, send the :CVU:CABLE:COMP:MEASCUSTOM command before sending the :CVU:CABLE:COMP:OPEN command.

Custom cable compensation supports only one set of cable constants for a CVU. For example, if you run custom cable compensation for CVU2 and CVU1, the constants for CVU2 are lost.

To enable or disable load compensation, send the CVU:CORRECT command.

For additional information on cable compensation, refer to "Connection compensation" in the Model 4200A-SCS Capacitance-Voltage Unit (CVU) User's Manual.

4200A-KXCI-907-01 Rev. D May 2024

6-5

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

Also see

:CVU:CABLE:COMP:MEASCUSTOM (on page 6-5) :CVU:CORRECT (on page 6-17)

:CVU:CABLE:COMP:SHORT

This command performs short compensation and collects the short compensation cable data for the CVU.

Usage Details

:CVU:CABLE:COMP:SHORT length

length

The length of the cable:
 0:  0.5 m  1.5: >0.5 m to < 2.5 m  3.0:  2.5 m to 5 m  4.0: Custom  5.0: CVIV 2W  6.0: CVIV 4W black 0.75 m cable  7.0: CVIV 4W blue 0.61 m cable

If you use the custom parameter, send the :CVU:CABLE:COMP:MEASCUSTOM command before sending the :CVU:CABLE:COMP:SHORT command.

Custom cable compensation supports only one set of cable constants for a CVU. For example, if you run custom cable compensation for CVU2 and CVU1, the constants for CVU2 are lost.

To enable or disable load compensation, send the CVU:CORRECT command.

For additional information on cable compensation, refer to "Connection compensation" in the Model 4200A-SCS Capacitance-Voltage Unit (CVU) User's Manual.

Also see

:CVU:CABLE:COMP:MEASCUSTOM (on page 6-5) :CVU:CORRECT (on page 6-17)

:CVU:MEASZ?

This command triggers and returns a single Z measurement using the present CVU settings.

Usage Details

:CVU:MEASZ?

When the command is complete, the single reading is available.

6-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

Also see

None

System mode commands
The CVU system mode commands are similar to Clarius tests. When you send the run command, the system buffers and executes all CVU test parameters automatically. The CVU executes full sweeps. The output sequencing, settling, and sweeping are all handled internally on the CVU.

:CVU:BIAS:DCV:SAMPLE

This command configures the CVU card to bias a DC voltage and sample n Z measurements.

Usage

:CVU:BIAS:DCV:SAMPLE biasv, samples

biasv samples

Voltage to source when sampling Z-measurements: -30 to +30 The number of Z-measurements the CVU makes for the test operation: 1 to 4096

Details

Configures the CVU to bias a DC voltage and sample n Z measurements for the CVU card. The other parameters are set by their respective commands.

Also see

None

:CVU:DATA:FREQ?

This command queries the frequency measurement of the CVU when a test is complete.

Usage Also see

:CVU:DATA:FREQ? None

:CVU:DATA:STATUS?

This command queries the status of the CVU when a test is complete.

Usage Also see

:CVU:DATA:STATUS? None

4200A-KXCI-907-01 Rev. D May 2024

6-7

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:DATA:TSTAMP?

This command queries the timestamp of the measurements of the CVU when a test is complete.

Usage Also see

:CVU:DATA:TSTAMP? None

:CVU:DATA:VOLT?

This command queries the voltage measurement of the CVU when a test is complete.

Usage Also see

:CVU:DATA:VOLT? None

:CVU:DATA:Z?

This command queries the Z measurement of the CVU when a test is complete.

Usage Details

:CVU:DATA:Z?

Z measurements are returned as semicolon delimiter pairs. Each reading is then delimited with commas.

Also see

None

:CVU:DELAY:STEP

This command sets the hold time for the CVU test on the selected card for the :CVU:SWEEP:FREQ and :CVU:SWEEP:DCV operations.

Usage

:CVU:DELAY:STEP stepd

stepd

Hold time to apply the presoak value in seconds: 0 to 999

Details

The presoak value is set by the :CVU:SOAK:DCV command

6-8

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

Also see

:CVU:SOAK:DCV (on page 6-10) :CVU:SWEEP:DCV (on page 6-12) :CVU:SWEEP:FREQ (on page 6-13)

:CVU:DELAY:SWEEP

This command sets the sweep delay for the CVU test on the selected card.

Usage

:CVU:DELAY:SWEEP sweepd

sweepd

Delay in seconds: 0 to 999

Details

This command is used in sweeping mode for all sweep types except :CVU:BIAS:DCV:SAMPLE.

Also see

None

:CVU:FSTEPSIZE

This command configures the frequency step size for the selected 4215-CVU card.

Usage

:CVU:FSTEPSIZE fstep

fstep

The frequency size for the sweep (1e3 to 10e6); see Details

Details

The resolution of fstep is 1 kHz.

The lower and upper bounds shown are the maximum range. They are also limited based on the start and stop values set for the sweep.

Set fstep to 0 if you are using the 4210-CVU.

Also see

:CVU:STEP:FREQ (on page 6-11) (4210-CVU only) :CVU:SWEEP:FREQ (on page 6-13)

4200A-KXCI-907-01 Rev. D May 2024

6-9

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:SAMPLE:HOLDT

This command sets the hold time for a sampling mode test on the selected card.

Usage

:CVU:SAMPLE:HOLDT holdt

holdt

Hold time in seconds: 0 to 999

Details

This command is only used when executing the :CVU:BIAS:DCV:SAMPLE command.

Also see

:CVU:BIAS:DCV:SAMPLE (on page 6-7)

:CVU:SAMPLE:INTERVAL

This command sets the delay between samples for the selected card.

Usage

:CVU:SAMPLE:INTERVAL interval

interval

Delay in seconds: 0 to 999

Details

This command is only used when executing the :CVU:BIAS:DCV:SAMPLE command.

Also see

:CVU:BIAS:DCV:SAMPLE (on page 6-7)

:CVU:SOAK:DCV

This command sets the presoak DC voltage for all sweeps for the selected CVU card.

Usage

:CVU:SOAK:DCV voltage

voltage

The voltage to bias before test sequence begins: -30 to +30

Also see

None

6-10

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

:CVU:STANDBY

This command configures the selected CVU card to disable DC bias at the end of a test or to leave the DC bias active.

Usage Also see

:CVU:STANDBY state

state

The state of the CVU card at the end of the test:
 Disable the DC voltage output: 1  Leave the DC bias active: 0

None

:CVU:STEP:FREQ

This command configures the selected CVU card to step frequency and sample Z measurements.

Usage

:CVU:STEP:FREQ fstart, fstop

fstart fstop

The frequency that is used for capturing the initial sample in the sweep The frequency that is used for capturing the final sample in the sweep

Details

Only the start frequency and stop frequency are set by this command for the step order. The other parameters are set by their respective commands.

Values are coerced to one of the 37 discrete frequencies for the 4210-CVU.

To perform a linear sweep using the 4215-CVU, use the :CVU:FSTEPSIZE command.

Also see

:CVU:FSTEPSIZE (on page 6-9)

4200A-KXCI-907-01 Rev. D May 2024

6-11

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:SWEEP:ACV

This command configures the selected CVU card to sweep AC voltage and sample Z measurements.

Usage

:CVU:SWEEP:ACV acvstart, acvstop, acvstep

acvstart acvstop acvstep

Start AC voltage, in volts:
 4210-CVU: 0.01 to 0.1  4215-CVU: 0.01 to 1.0
Stop AC voltage, in volts:
 4210-CVU: 0.01 to 0.1  4215-CVU: 0.01 to 1.0
The AC voltage step size

Details

The other parameters (such as DC voltage level and frequency) are set by their respective commands.

Also see

None

:CVU:SWEEP:DCV

This command configures the selected CVU card to sweep DC voltage and sample Z measurements.

Usage

:CVU:SWEEP:DCV dcvstart, dcvstop, dcvstep

dcvstart

Start voltage, in volts: -30 to +30

dcvstop

Stop voltage, in volts: -30 to +30

dcvstep

Voltage step size

Details

The other parameters (AC voltage level, frequency, and so on) are set by their respective commands.

6-12

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

Example Also see

:CVU:MODEL 2 :CVU:SPEED 2 :CVU:ACZ:RANGE 0 :CVU:FREQ 1E6 :CVU:SWEEP:DCV 5, -5, -0.2 :CVU:DELAY:SWEEP 0.1 ­ sweep delay :CVU:TEST:RUN Set the measurement model to Cp-GP. Set the measurement speed to quiet. Set the AC measurement range to autorange. Set the frequency for the AC source to 1E6. Set sweep to start at 5 V, stop at -5 V, and step in -0.2 V increments. Set the sweep delay to 0.1 s. Run the test.
None

:CVU:SWEEP:FREQ

This command configures the selected CVU card to sweep frequency and sample Z measurements.

Usage

:CVU:SWEEP:FREQ fstart, fstop :CVU:SWEEP:FREQ fstart, fstop, order

fstart fstop order

The frequency that is used for capturing the initial sample in the sweep
The frequency that is used for capturing the final sample in the sweep
Determines whether the test biases DC voltage and sweeps frequency or steps voltage and sweeps frequency:
 1: The voltage bias is the voltage set by the :CVU:DCV command (default)  2: The voltage steps based on the vstart, vstop, vstep parameters set by
the :CVU:SWEEP:DCV command.

Details

This command sets the start frequency, stop frequency, and sweep order. The other parameters are set by their respective commands.

Values are coerced to one of the 37 discrete frequencies for the 4210-CVU.

To perform a linear sweep using the 4215-CVU, use the :CVU:FSTEPSIZE command.

Also see

:CVU:DCV (on page 6-18) :CVU:FSTEPSIZE (on page 6-9) :CVU:SWEEP:DCV (on page 6-12)

4200A-KXCI-907-01 Rev. D May 2024

6-13

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:SWEEP:LISTDCV

This command configures the selected CVU card to sweep arbitrary DC voltage points and sample Z measurements.

Usage

:CVU:SWEEP:LISTDCV pt1, pt2, pt3 ... ptn pt1, pt2, pt3 ... ptn Sweep points: 1 to 4096

Details

Only starting voltage sweep points are set with this command. The other parameters (AC voltage level, frequency, and so on) are set by their respective commands.

Also see

:CVU:SWEEP:ACV (on page 6-12) :CVU:SWEEP:DCV (on page 6-12) :CVU:SWEEP:FREQ (on page 6-13)

:CVU:TEST:ABORT

This command stops a running KXCI CVU test.

Usage Details

:CVU:TEST:ABORT
This command terminates all ongoing processes and returns the 4200A-SCS to the idle state. Data that results from the ongoing processes may be corrupt. This command is not appropriate to stop a CVU KXCI test running from a remote UTM. For more information, refer to Calling KULT user libraries remotely (on page 4-6). This command is not valid in user mode.

Also see

None

:CVU:TEST:RUN

This command starts a CVU test on the specified card.

Usage Details

:CVU:TEST:RUN

Use the serial poll byte to determine when not busy or data ready.

6-14

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

Also see

None

Modeless commands

:CVU:ACV

This command sets the AC drive level for specified CVU card.

Usage Details

:CVU:ACV aclevel aclevel

AC voltage level (default 0.03):
 4210-CVU: 0.01 to 0.1  4215-CVU: 0.01 to 1

If the instrument is in user mode, this takes immediate effect.

If the instrument is in system mode, the value is buffered for use in all sweeps except the AC voltage sweep. The voltage level for the AC voltage sweep is set using the :CVU:SWEEP:ACV command.

Also see

:CVU:SWEEP:ACV (on page 6-12)

:CVU:ACZ:RANGE

This command sets the AC measurement range for the specified CVU card.

Usage Also see

:CVU:ACZ:RANGE range

range

Range in amps:
 Auto: 0  1 A: 1e-6  30 A: 30e-6  1 mA: 1e-3 (default)

None

4200A-KXCI-907-01 Rev. D May 2024

6-15

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:CHANNEL

This command selects the CVU card on which subsequent CVU commands will act.

Usage

:CVU:CHANNEL chan

chan

CVU card on which KXCI CVU commands act (default 1)

Details

The majority of systems only have one CVU card. You can use this command to configure multiple cards.

Also see

None

:CVU:CONFIG:ACVHI

This command defines the source terminal (AC only) for the CVU test.

Usage Also see

:CVU:CONFIG:ACVHI source

source

The source terminal to be used:
 HCUR/HPOT (default): 1  LCUR/LPOT: 2

None

:CVU:CONFIG:DCVHI

This command defines the source terminal (DC only) for the CVU test.

Usage Also see

:CVU:CONFIG:DCVHI source

source

The source terminal to be used:
 HCUR/HPOT (default): 1  LCUR/LPOT: 2

None

6-16

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

:CVU:CORRECT

This command enables open, short, and load correction for the specified CVU card.

Usage Details

:CVU:CORRECT open, short, load

open short load

Off: 0 On: 1
Off: 0 On: 1
Off: 0 On: 1

Each of the parameters is a Boolean (0 = off, 1 = on).

This command enables the values set by the :CVU:CABLE:COMP:LOAD, :CVU:CABLE:COMP:OPEN, and :CVU:CABLE:COMP:SHORT commands.

To disable the correction setting values, before sending :CVU:CORRECT, you must send :CVU:RESET to set the CVU to its default settings. Example 1

Example 2

:CVU:RESET :CVU:MEASZ? :CVU:CORRECT 1,0,0 :CVU:MEASZ? :CVU:RESET :CVU:MODEL 2 :CVU:CORRECT 0,1,0 :CVU:MEASZ?
Reset the CVU to its default state. Trigger and return a single measurement. Enable open compensation. Trigger and return a single measurement. Reset the CVU to its default state. Set the CVU model to Cp, Gp. Enable short compensation and disable open compensation. Trigger and return a single measurement.

:CVU:RESET :CVU:MEASZ? :CVU:CORRECT 1,0,0 :CVU:MEASZ? :CVU:CORRECT 1,1,0 :CVU:MEASZ?
Reset the CVU to its default state. Trigger and return a single measurement. Enable open compensation. Trigger and return a single measurement. Enable short compensation while keeping open compensation enabled. Trigger and return a single measurement.

4200A-KXCI-907-01 Rev. D May 2024

6-17

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

Also see

:CVU:CABLE:COMP:LOAD (on page 6-4) :CVU:CABLE:COMP:OPEN (on page 6-5) :CVU:CABLE:COMP:SHORT (on page 6-6) :CVU:RESET (on page 6-21)

:CVU:DCV

This command sets the DC bias voltage for the specified CVU card.

Usage

:CVU:DCV dclevel dclevel

DC bias voltage: -30 to +30 (default is 0)

Details

In user mode, this takes immediate effect.

In system mode, the value is buffered for use in frequency and AC voltage sweeps and DC bias/sample.

Also see

None

:CVU:DCV:OFFSET

This command applies an offset value to the DC low terminal.

Usage

:CVU:DCV:OFFSET offsetv

offsetv

Offset voltage: -30 to +30

Details

Voltage offset to apply while sampling Z measurements.

Also see

None

6-18

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

:CVU:FREQ

This command sets the frequency for the AC source for the specified CVU card.

Usage

CVU:FREQ freq freq

Range (Hz): 1000 to 10000000; default is 100000

Details

Values that fall between supported frequencies are coerced to the nearest supported frequency.

For the CVU-4210, values that fall between the supported discrete frequencies are coerced to the closest discrete frequency.

For the CVU-4215, the values are adjusted to 1 kHz resolution.

Also see

:CVU:DATA:FREQ? (on page 6-7) :CVU:SWEEP:ACV (on page 6-12)

:CVU:LENGTH

This command selects the cable length for the specified CVU card.

Usage

:CVU:LENGTH len len

Also see

None

The cable length:
 0: 0 m (no cable compensation)  1.5: 1.5 m CVU cable  3.0: 3.0 m CVU cable  4.0: Custom  5.0: 1.5 m CVIV cable; 2-wire mode  6.0: 1.5 m CVU to CVIV cable with 0.75 m CVIV to DUT cable; 4-wire mode  7.0: Blue 1.5 m CVU to CVIV cable with 0.61 m CVIV to DUT cable;
4-wire mode

4200A-KXCI-907-01 Rev. D May 2024

6-19

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:MODE

This command sets the mode to User or System.

Usage

:CVU:MODE mode mode

Also see

None

The mode:
 User mode: 0  System mode: 1

:CVU:MODEL

This command sets the measurement model for the selected CVU card.

Usage

:CVU:MODEL model model

Also see

None

The model:
 0: Z, theta  1: R + jx (default)  2: Cp, Gp  3: Cs, Rs  4: Cp, D  5: Cs, D  7: Y, theta

:CVU:OUTPUT

This command enables or disables the CVU output.

Usage

:CVU:OUTPUT state state

The state of the CVU output:
 Enable CVU output: 1  Disable the CVU output: 0

Also see

None

6-20

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

:CVU:RESET

This command sends a soft reset to the specified card.

Usage Details

:CVU:RESET

This command places the card in its default state.

The following parameters are reset to the following default values:
· DC voltage: 0 V · AC voltage: 0.03 V (30 mV) · Frequency: 100000 Hz (100 kHz) · Model: R + jx · Range: 0.001 A (1 mA)

*RST executes the :CVU:RESET command.

Also see

*RST (on page 4-5) :CVU:ACV (on page 6-15) :CVU:ACZ:RANGE (on page 6-15) :CVU:DCV (on page 6-18) :CVU:FREQ (on page 6-19) :CVU:MODEL (on page 6-20)

:CVU:SPEED

This command sets the measurement speed for the selected CVU card.

Usage

:CVU:SPEED speed :CVU:SPEED 3, delay_factor, filter_factor, aperture

speed
delay_factor filter_factor aperture

Applies the speed selection:
 Fast: 0  Normal: 1  Quiet: 2  Custom: 3
Delay factor (Custom only): 0 to 100; see Details
Filter factor (Custom only): 0 to 707; see Details
Aperture (Custom only) in PLCs: 0.006 to 10.002

4200A-KXCI-907-01 Rev. D May 2024

6-21

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

Details

delay_factor parameter
After applying a voltage or current, the instrument waits for a delay time before making a measurement. The delay time allows for source settling. The delay factor setting adjusts the delay time for the selected speed. It is fixed for the fast, normal, and quiet speeds. If you select custom speed, you can enter a factor for the delay.
The applied delay time is a multiple of the default delay time. The delay factor setting specifies this multiple. That is:
Applied delay time = (Default delay time) × (Delay factor)
For example, if the default delay time is 1 ms and the delay factor is 0.7, the actual applied delay time is 0.7 ms (1 ms × 0.7).
The following table summarizes the delay factor settings.

Speed mode
Fast Normal Quiet Custom

Delay factor 0.7 1.0 1.3 0 to 100

When entering a custom delay factor setting, consider the following:
· A delay factor of 1 allows for settling before the analog-to-digital (A/D) converter is triggered to
make a measurement.
· Each doubling of the delay factor doubles the time allowed for settling. · A delay factor of 0 multiplies the default delay by zero, resulting in no delay.

If you set the filter factor and delay factor to 0, the internal preprogrammed values are ignored.
In general, cables and matrices increase the settling time. You may need to experiment to find the ideal time. However, for a good quality switch, such as the Keithley Instruments 7174A High-Speed Low Leakage Current Matrix, you should not need to increase the delay factor by more than two times.

6-22

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 6: KXCI CVU commands

filter_factor parameter
To reduce measurement noise, each 4200A-SCS applies filtering, which averages multiple readings to make one measurement. The filter factor is fixed for fast, normal, and quiet speeds. If you select the custom speed mode, you can enter a filter factor of 0 to 100.
The default filter factor settings are listed in the following table.

Speed mode
Fast Normal Quiet Custom

Filter factor 0.2 1 3 0 to 100

When typing a custom filter factor, consider the following:
· A filter factor of 1 specifies a normal level of filtering. · As a rule of thumb, doubling the filter factor halves the measurement noise. · A filter factor of 0 nullifies the SMU internal filtering.

aperture parameter

You can specify the A/D converter integration time that is used to measure a signal. Each measured reading is the result of one or more A/D conversions. A short integration time for each A/D conversion results in a relatively fast measurement speed with increased noise. A long integration time results in a relatively low-noise reading at a relatively low speed.

The integration time setting is based on the number of power line cycles (NPLCs). For 60 Hz line power, 1.0 PLC = 16.67 ms (1/60). For 50 Hz line power, 1.0 PLC = 20 ms (1/50).

The applied A/D conversion time also depends on the filter factor setting:
· If the filter factor is not zero, the CVU applies an optimum A/D converter time that is based on the
filter factor setting. The applied A/D converter time value is never less than the specified A/D aperture time.
· If the filter factor setting is zero, the CVU applies a fixed A/D converter time that equals the
specified A/D aperture time.

The automatic A/D aperture and A/D aperture time settings for each speed mode are shown in the following table.

Also see

Speed mode Fast Normal Quiet Custom
None

A/D aperture time (PLCs) Auto Auto Auto 0.01 to 10

4200A-KXCI-907-01 Rev. D May 2024

6-23

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

:CVU:TEST:COMPLETE?

This command queries the status of the test.

Usage Also see

:CVU:TEST:COMPLETE? None

Code examples

The GPIB commands in the following examples are specific to the Keithley KUSB-488B USB to GPIB Converter. For information on using the KUSB-488B for GPIB communications, refer to the KUSB-488B documentation, available on tek.com (tek.com/).

Example 1
The following code segment sets CVU1 to perform a system mode sweep of DC voltage from 5 V to 10 V in 1 V steps. After the test completes, the Z, DCV, F, timestamps, and status values are queried. The operation mode is then changed to perform a list sweep of DC voltage (2 V, 4 V, 3 V, 5 V, 7 V) and the test is run again with all other test conditions as before. There are no compensation corrections made to the reading.
// Soft reset the card. send(addr, ":CVU:RESET", &status);
// Set CVU to system mode. send(addr, ":CVU:MODE 1", &status);
// Set measurement model to Z, theta. send(addr, ":CVU:MODEL 0", &status);
// Set speed to normal. send(addr, ":CVU:SPEED 1", &status);
// Set the AC drive level to 45 mV at 7 MHz. send(addr, ":CVU:ACV 0.045", &status); send(addr, ":CVU:FREQ 7E+6", &status);
// Set the DC bias level to 10 V. send(addr, ":CVU:DCV 10", &status);
// Select the 1 mA measurement range. send(addr, ":CVU:ACZ:RANGE 1E-3", &status);

6-24

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming
//Set cable length to 1.5 m. send(addr, ":CVU:LENGTH 1.5", &status);
// Set the test function to // DC voltage sweep from 5 V to 10 V. send(addr, ":CVU:SWEEP:DCV 5,10,1", &status);
// Set 1 s delay between points. send(addr, ":CVU:DELAY:SWEEP 1.0", &status);
// Start the test. send(addr, ":CVU:TEST:RUN", &status);
// Monitor the spoll byte for test completion. WaitForTestCompletion();
// Query all data. send(addr, ":CVU:DATA:Z?", &status); enter(recvstr, MAXLEN, &len, addr, &status);
send(addr, ":CVU:DATA:VOLT?", &status); enter(recvstr, MAXLEN, &len, addr, &status);
send(addr, ":CVU:DATA:FREQ?", &status); enter(recvstr, MAXLEN, &len, addr, &status);
send(addr, ":CVU:DATA:TSTAMP?", &status); enter(recvstr, MAXLEN, &len, addr, &status);
send(addr, ":CVU:DATA:STATUS?", &status); enter(recvstr, MAXLEN, &len, addr, &status);
// Change the sweep mode to list sweep. send(addr, ":CVU:SWEEP:LISTDCV 2,4,3,5,7", &status);
// Rerun the test. send(addr, ":CVU:TEST:RUN", &status); WaitForTestCompletion();
send(addr, ":CVU:DATA:VOLT?", &status); enter(recvstr, MAXLEN, &len, addr, &status);

Section 6: KXCI CVU commands

4200A-KXCI-907-01 Rev. D May 2024

6-25

Section 6: KXCI CVU commands

Model 4200A-SCS KXCI Remote Control Programming

Example 2
This example makes a single measurement in user mode. The program sets up CVU1 to output 30 mV at 10 MHz AC. The DC voltage is set to 5 V. Once a single measurement is retrieved, the AC source is set to 60 mV at 5 MHz and a new reading is acquired.
// Set the CVU to user mode. send(addr, ":CVU:MODE 0", &status);
// Soft reset the card. send(addr, ":CVU:RESET", &status);
// Set measurement model to Cs,Rs. send(addr, ":CVU:MODEL 3", &status);
// Set speed to quiet. send(addr, ":CVU:SPEED 2", &status);
// Set AC drive level to 30 mV at 10 MHz. send(addr, ":CVU:ACV 0.030", &status); send(addr, ":CVU:FREQ 10E+6", &status);
// Set DC bias level to 5 V. send(addr, ":CVU:DCV 5", &status);
// Select 30 uA measurement range. send(addr, ":CVU:ACZ:RANGE 30E-6", &status);
// Trigger a new measurement and retrieve it. send(addr, ":CVU:MEASZ", &status); enter(recvstr, MAXLEN, &len, addr, &status);
// Change the AC source to 60 mV at 5 MHz. send(addr, ":CVU:ACV 0.060", &status); send(addr, ":CVU:FREQ 5E+6", &status);
// Get a new Z measurement. send(addr, ":CVU:MEASZ", &status); enter(recvstr, MAXLEN, &len, addr, &status);

6-26

4200A-KXCI-907-01 Rev. D May 2024

Section 7
KXCI PGU and PMU commands
In this section:
Introduction .............................................................................. 7-2 Summary of KXCI PGU and PMU commands ......................... 7-3 :PMU:ABORT........................................................................... 7-4 :PMU:CONNECTION:COMP ................................................... 7-5 :PMU:DATA:COUNT? .............................................................. 7-6 :PMU:DATA:GET ..................................................................... 7-7 :PMU:EXECUTE ...................................................................... 7-9 :PMU:INIT ................................................................................ 7-9 :PMU:LLEC:CONFIGURE...................................................... 7-10 :PMU:LOAD ........................................................................... 7-11 :PMU:MEASURE:CONNECTION:COMP............................... 7-12 :PMU:MEASURE:MODE........................................................ 7-13 :PMU:MEASURE:PIV............................................................. 7-14 :PMU:MEASURE:RANGE...................................................... 7-15 :PMU:OUTPUT:STATE .......................................................... 7-16 :PMU:PULSE:BURST:COUNT............................................... 7-17 :PMU:PULSE:TIMES ............................................................. 7-18 :PMU:PULSE:TRAIN.............................................................. 7-21 :PMU:RETAIN:CONFIG ......................................................... 7-21 :PMU:RPM:CONFIGURE....................................................... 7-22 :PMU:SAMPLE:RATE ............................................................ 7-23 :PMU:SOURCE:RANGE ........................................................ 7-24 :PMU:STEP:DC...................................................................... 7-25 :PMU:STEP:PULSE:AMPLITUDE.......................................... 7-26 :PMU:STEP:PULSE:BASE..................................................... 7-27 :PMU:SWEEP:DC .................................................................. 7-28 :PMU:SWEEP:PULSE:AMPLITUDE ...................................... 7-29 :PMU:SWEEP:PULSE:BASE ................................................. 7-31 :PMU:TEST:STATUS? ........................................................... 7-32 :PMU:TIMES:PIV ................................................................... 7-32 :PMU:TIMES:WAVEFORM .................................................... 7-34 Programming examples ......................................................... 7-35 Summary of Segment Arb commands ................................... 7-38 :PMU:SARB:SEQ:MEAS:START ........................................... 7-40 :PMU:SARB:SEQ:MEAS:START:ADD .................................. 7-41 :PMU:SARB:SEQ:MEAS:STOP ............................................. 7-42 :PMU:SARB:SEQ:MEAS:STOP:ADD .................................... 7-43 :PMU:SARB:SEQ:MEAS:TYPE ............................................. 7-44 :PMU:SARB:SEQ:MEAS:TYPE:ADD ..................................... 7-45 :PMU:SARB:SEQ:SSR .......................................................... 7-46 :PMU:SARB:SEQ:SSR:ADD .................................................. 7-47 :PMU:SARB:SEQ:STARTV.................................................... 7-48 :PMU:SARB:SEQ:STARTV:ADD ........................................... 7-49 :PMU:SARB:SEQ:STOPV...................................................... 7-50 :PMU:SARB:SEQ:STOPV:ADD ............................................. 7-51 :PMU:SARB:SEQ:TIME ......................................................... 7-52 :PMU:SARB:SEQ:TIME:ADD................................................. 7-53 :PMU:SARB:SEQ:TRIG ......................................................... 7-54 :PMU:SARB:SEQ:TRIG:ADD................................................. 7-55 :PMU:SARB:WFM:SEQ:LIST................................................. 7-56 :PMU:SARB:WFM:SEQ:LIST:ADD ........................................ 7-57

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Programming example for Segment Arb ................................ 7-57 KXCI pulse commands for Clarius versions v1.12 and earlier 7-59

Introduction
The following command descriptions are for the KXCI PGU and PMU commands that are available in Clarius+ versions 1.13 and later. These system mode commands provide pulse control for PGUs and pulse and measurement control for PMUs. These commands support standard pulse mode and Segment Arb mode.
The PGU commands that were available in earlier versions are still available. Refer to KXCI pulse commands for Clarius versions v1.12 and earlier (on page 7-59) for command descriptions.

You cannot use the two-letter KXCI commands for PGUs with the latest commands.
Guidelines for using KXCI with PGUs and PMUs:
· If you need to remove or add an RPM, close KXCI, open KCon, and update the configuration.
Save the configuration. After the save, you can reopen KXCI and continue programming.
· If you are using an RPM, use the command :PMU:RPM:CONFIGURE (on page 7-22) to connect
the pulse source of the PMU to the RPM.
· If you are using Segment Arb, you must use fixed ranges. · You can return data while a test is running using the :PMU:DATA:GET (on page 7-7) command. · The maximum number of points that can be measured and returned is 65536. · Check that you are using the current and voltage ranges based on the device you are testing. · Always turn off the output of the channel at the end of a test for safety
using :PMU:OUTPUT:STATE (on page 7-16).
· The source range and measure range are the same for voltage.
Example programs that demonstrate how to assemble the KXCI PGU and PMU commands for testing are provided in Programming examples (on page 7-35).

7-2

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Summary of KXCI PGU and PMU commands

Command

Brief description

Default value

:PMU:ABORT (on page 7-4)

Aborts processes that are presently running on Not applicable PGUs and PMUs and turns off the PGU and PMU outputs.

:PMU:CONNECTION:COMP (on page 7-5)

Enables or disables PMU connection compensation and sets the type of compensation to be used for the specified channel.

0 (disabled)

:PMU:DATA:COUNT? (on page 7-6)

Used to determine how many readings are stored in the data buffer for the specified channel.

Not applicable

:PMU:DATA:GET (on page 7-7) Retrieves data, block by block, for the specified Not applicable channel.

:PMU:EXECUTE (on page 7-9) Starts a configured pulse test.

Not applicable

:PMU:INIT (on page 7-9)

Initializes the pulse card to pulse mode or

Not applicable

Segment Arb mode and its default conditions.

:PMU:LLEC:CONFIGURE (on page 7-10)

Enables or disables load-line effect compensation for the specified channel.

0 (disabled)

:PMU:LOAD (on page 7-11)

Sets the device under test (DUT) impedance (pulse load) for the specified channel.

1e6 ohms

:PMU:MEASURE:CONNECTION: Measures and stores short or offset current

COMP (on page 7-12)

connection compensation data for a PMU.

Not applicable

:PMU:MEASURE:MODE (on page Sets the measure mode for the waveform

1

7-13)

capture and pulse I-V test modes.

:PMU:MEASURE:PIV (on page 7-14)

Sets the readings to be returned in pulse I-V mode for the specified channel.

All parameters enabled

:PMU:MEASURE:RANGE (on page 7-15)

Sets the current measure range for the specified Fixed range of 10E-3 pulse channel.

:PMU:OUTPUT:STATE (on page Sets the output state for the specified channel. 0 (off) 7-16)

:PMU:PULSE:BURST:COUNT (on Sets the total number of pulses to be output for 1

page 7-17)

all active pulse channels.

:PMU:PULSE:TIMES (on page 7-18)

Sets the pulse period, pulse width, pulse rise time, pulse fall time, and pulse delay for the specified pulse channel.

Period: 1e-6 Width: 500e-9 Pulse rise time: 100e-9 Pulse fall time: 100e-9
Delay: 0

:PMU:PULSE:TRAIN (on page 7-21)

Configures the pulse base and amplitude voltage levels of the specified pulse channel.

Not applicable

:PMU:RETAIN:CONFIG (on page Retains the present configuration for the

7-21)

specified channel.

Not applicable

:PMU:RPM:CONFIGURE (on page 7-22)

Switches the RPM output between the PGUs, Not applicable PMUs, CVUs, and SMUs.

:PMU:SAMPLE:RATE (on page 7-23)

Sets the number of samples taken in samples 200 MSamples per second.

:PMU:SOURCE:RANGE (on page Sets the voltage range for measure and pulse for 10 V

7-24)

the specified channel.

:PMU:STEP:DC (on page 7-25)

Configures the pulse step for stepping the DC Not applicable voltage level for the specified channel.

4200A-KXCI-907-01 Rev. D May 2024

7-3

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Command

Brief description

Default value

:PMU:STEP:PULSE:AMPLITUDE (on page 7-26)
:PMU:STEP:PULSE:BASE (on page 7-27)
:PMU:SWEEP:DC (on page 7-28)
:PMU:SWEEP:PULSE:AMPLITUDE (on page 7-29)
:PMU:SWEEP:PULSE:BASE (on page 7-31)
:PMU:TEST:STATUS? (on page 7-32) :PMU:TIMES:PIV (on page 7-32)
:PMU:TIMES:WAVEFORM (on page 7-34)

Configures the pulse step for stepping the pulse Not applicable voltage amplitude with a fixed base level for the specified channel.

Configures the pulse step for stepping the pulse Not applicable voltage base level with a fixed voltage amplitude for the specified channel. Only available if the mode is set to pulse I-V.

Configures the pulse sweep for sweeping the DC Not applicable voltage level for the specified channel

Configures the pulse sweep for sweeping the pulse voltage amplitude with a fixed base level for the specified channel.

Not applicable

Configures the pulse sweep for sweeping the pulse voltage base level with a fixed voltage amplitude for the specified channel.

Not applicable

Used to determine if a test is running or idle. Not applicable

Sets the spot mean measurement window for pulse I-V capture.

Stop mean start: 0.75 (75%) Stop mean stop: 0.90 (90%)

Defines the predata and postdata measurement Prepercent: 0.2 windows for waveform capture for the specified Postpercent: 0.2 channel.

:PMU:ABORT
This command aborts processes that are presently running on PGUs and PMUs and turns off the PGU and PMU outputs.

Instruments PGU PMU
Usage
:PMU:ABORT Details

Affected by Not applicable

Default value Not applicable

If test data was generated before the abort command was sent, the data remains in the buffer and you can retrieve it.

Example

Also see

:PMU:ABORT This command string aborts processes that are running on PGU and PMU channels and turns off all PGU and PMU outputs.
None

7-4

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:CONNECTION:COMP
This command enables or disables PMU connection compensation and sets the type of compensation to be used for the specified channel.

Instruments PMU

Affected by
*RST :PMU:INIT

Default value 0 (Disabled)

Usage

:PMU:CONNECTION:COMP ch, type, key

ch type
key

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system; see Details
The type of compensation data to enable or disable:
 Short compensation: 1  Offset current compensation: 3
Enable or disable short or offset current compensation values:
 Disable compensation: 0  Enable compensation: 1

Details

Errors caused by the connections and cable length between the 4225-PMU and the device under test (DUT) can be corrected by using connection compensation. When connection compensation is enabled, the compensation values are factored into each DUT measurement.

The ch parameter determines which PMU has compensation data enabled or disabled. Select the lowest number channel for the PMU. For example, to gather compensation data for PMU2, select channel 3.

Connection compensation is a two-part process: 1. Measure and store connection compensation data using :PMU:MEASURE:CONNECTION:COMP.
The compensation values are stored in tables. 2. Use the :PMU:CONNECTION:COMP command to enable the custom connection
compensation values.

If connection compensation is disabled, the compensation values are not used by the test.

To view the compensation data, in Clarius, select Tools, then select PMU Connection Compensation.

For details on performing connection compensation, refer to "Perform connection compensation" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual.

4200A-KXCI-907-01 Rev. D May 2024

7-5

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

-- Reset the PMU to default settings :PMU:INIT 0 -- Configure the RPM input for channel 1 of pulse card 1 to the PMU. :PMU:RPM:CONFIGURE PMU1-1, 0 -- Configure the RPM input for channel 2 of pulse card 1 to the PMU. :PMU:RPM:CONFIGURE PMU1-2, 0 -- Set the measure mode to spot mean discrete. :PMU:MEASURE:MODE 1 -- Configure short connection compensation for PMU 1 of the pulse card. :PMU:CONNECTION:COMP 1, 1, 1 -- Configure a pulse amplitude step for channel 1 of the PMU starting -- at 2 V, stopping at 4 V, stepping in 0.5 V steps. -- Setting the base to 0 V with dual sweep off. :PMU:SWEEP:PULSE:AMPLITUDE 1, 2, 4, 0.5, 0, 0 -- Configure the current measure range to a fixed range of 10 mA. :PMU:MEASURE:RANGE 1, 2, 0.01 -- Set the output state of channels 1 to on. :PMU:OUTPUT:STATE 1, 1 -- Execute the commands. :PMU:EXECUTE This example executes a sweep that uses short connection compensation values.
:PMU:MEASURE:CONNECTION:COMP (on page 7-12)

:PMU:DATA:COUNT?
This command is used to determine how many readings are stored in the data buffer for the specified channel.

Instrument PMU
Usage
Details

Affected by
PMU INIT *RST

Default value Not applicable

:PMU:DATA:COUNT? ch

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

Use this command to return the number of readings presently stored in the data buffer. This command can be called while a test is in progress or after test completion.

For a short test, this command is typically called after test completion to determine the total number of readings stored in the buffer. For a long test, you can use this command during execution to track the progress of the test.

Example

:PMU:DATA:COUNT? 1 This command returns the number of readings stored in the buffer for channel 1.

7-6

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Also see

:PMU:DATA:GET (on page 7-7) :PMU:TEST:STATUS? (on page 7-32)

:PMU:DATA:GET
This command retrieves data, block by block, for the specified channel.

Instruments PMU

Affected by
:PMU:MEASURE:PIV :PMU:SAMPLE:RATE :PMU:EXECUTE :PMU:INIT *RST

Default value Not applicable

Usage

:PMU:DATA:GET ch :PMU:DATA:GET ch, startIndex :PMU:DATA:GET ch, startIndex, numPoints :PMU:DATA:GET ch, startIndex, numPoints, requestedValues

ch
startIndex numPoints requestedValues

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system The start index (0 based); any valid point as given by :PMU:DATA:COUNT? The number of points to return: 1 to 2048
Comma-delimited list to return specific data for all the measured values; see Details

Details

The PMU data buffer may contain up to 65,536 data points per channel. If no data is available from startIndex, the command returns an empty string.

Large data sets are broken into 2048 character blocks for the KXCI buffer and :PMU:DATA:GET returns 2048 points at a time. To get all the data, send :PMU:DATA:GET multiple times with an appropriate startindex for each call and then concatenate the data. You can use the :PMU:DATA:COUNT? command to retrieve the number of data points. For an example program that demonstrates retrieving more than 2048 points, refer to Example: Using KXCI to generate a pulse train (on page 7-37).

If the data buffer contains less data than the startIndex + numPoints amount of data, this query may return fewer points than requested.

If you only specify ch, all available points are returned (up to 2048 points).

If you specify the startIndex and omit numPoints, all available points from the specified index to the end of the data (up to 2048 points) are returned.

4200A-KXCI-907-01 Rev. D May 2024

7-7

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

You can use requestedValues to specify which data values are returned. For waveform capture, the options are:
· Voltage: V · Current: I · Timestamp: T · Status: S

For spot mean, the options are:
· Voltage high: VH · Current high: IH · Timestamp high: TH · Status high: SH · Voltage low: VL · Current low: IL · Timestamp low: TL · Status low: SL

You can specify more than one value. The data points are returned in the order in which they are defined by the :PMU:DATA:GET command.

In the returned data, the data points are separated by semicolons. Values within data points are separated by commas, as shown here:

<vh1>,<ih1>,<th1>,<sh1>,<vl1>,<il1>,<tl1>,<sl1>;<vh2>,<ih2>,<th2>,<sh2>,<vl2>,<il2> ,<tl2>,<sl2>;<vh3>,<ih3>,<th3>,<sh3>,<vl3>,<il3>,<tl3>,<sl3>
This is a non-destructive read. If you call this command multiple times with the same parameters, the same data is returned. New data is appended to the existing buffer. Data is purged when :PMU:EXECUTE, :PMU:INIT, or *RST is called.

Example 1

:PMU:DATA:GET 1, 0, 2048, V, S Returns the voltage and status for waveform mode on channel 1.
Example 2

Also see

:PMU:DATA:GET 1, 0, 2048, VL, VH Returns the voltage low and voltage high (in that order) for pulse I-V mode on channel 1.
:PMU:DATA:COUNT? (on page 7-6) :PMU:MEASURE:PIV (on page 7-14)

7-8

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:EXECUTE
This command starts a configured pulse test.

Instruments PGU PMU
Usage
:PMU:EXECUTE Details

Affected by :PMU:ABORT

Default value Not applicable

When this command is run, it does a final verification, clears the data buffers, and executes the test.

This command returns immediately. Use :PMU:TEST:STATUS? to check the status of the test.

Also see

:PMU:ABORT (on page 7-4) :PMU:RETAIN:CONFIG (on page 7-21) :PMU:TEST:STATUS (on page 7-32)

:PMU:INIT
This command initializes the pulse card to pulse mode or Segment Arb mode and its default conditions.

Instruments PGU PMU
Usage :PMU:INIT mode mode
Details

Affected by Not applicable
Set the mode on reset:
 Standard pulse mode: 0  Segment Arb mode: 1

Default value Not applicable

This command resets both channels of the pulse card to the default settings of the specified pulse mode. It must be the first command sent before sending other commands.

This command also clears the data buffer and deletes all Segment Arb sequences.

You can also send *RST to reset all cards in the systems. When *RST is used, the pulse mode is set to standard pulse mode.

Default values are listed in Summary of KXCI PGU and PMU commands (on page 7-3) and Summary of Segment Arb commands (on page 7-38).

4200A-KXCI-907-01 Rev. D May 2024

7-9

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

:PMU:INIT 0 Performs a reset of the system and initializes the PMU into standard pulse mode.
*RST (on page 4-5)

:PMU:LLEC:CONFIGURE
This command enables or disables load-line effect compensation for the specified channel.

Instruments PMU

Affected by Not applicable

Default value 0

Usage Details

:PMU:LLEC:CONFIGURE ch, LLEComp

ch LLEComp

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Disable load-line effect compensation: 0 Enable load-line effect compensation: 1

When load-line effect compensation is enabled, the PMU test will take more time to complete. Load-line effect compensation runs the pulse in iterations before the actual test to calculate the actual DUT load and compensate for it.

For a detailed example that uses this command, refer to Example: Use KXCI to generate a pulse I-V drain family of curves (on page 7-35).

Example

Also see

:PMU:LLEC:CONFIGURE 1, 1 Enable load-line effect compensation for channel 1.
None

7-10

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:LOAD
This command sets the device under test (DUT) impedance (pulse load) for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value 1e6

Usage

:PMU:LOAD ch, load

ch impedance

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse load, in ohms: 1.0 to 1e7

Details

You may need to set the DUT load so the 4200A-SCS can correctly calculate the PMU output levels for a specific DUT. The calculations will adjust the pulse levels to the PMU output impedance of 50 .

For example, if the DUT load used by default is 1 M, but the actual DUT load has a low impedance of 50 , setting a voltage level of 4 V results in a 2 V pulse at the DUT. Setting the DUT load to 50  permits the set voltage to match the actual voltage, so setting a 4 V level results in a 4 V pulse on DUT, with the pulse card taking the DUT impedance into account.

Use the :PMU:LLEC:CONFIGURE command to enable automatic detection of the DUT load.

Example Also see

:PMU:LOAD 1, le3 This example sets the load impedance to 1000 .
:PMU:LLEC:CONFIGURE (on page 7-10) :PMU:MEASURE:PIV (on page 7-14)

4200A-KXCI-907-01 Rev. D May 2024

7-11

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:MEASURE:CONNECTION:COMP
This command measures and stores short or offset current connection compensation data for a PMU.

Instruments PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:MEASURE:CONNECTION:COMP ch, compType

ch compType

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system; see Details
The type of compensation data to retrieve:
 Short compensation: 1  Offset current compensation: 3

Details

Errors caused by the connections and cable length between the 4225-PMU and the device under test (DUT) can be corrected by using connection compensation. When connection compensation is enabled, the compensation values are factored into each DUT measurement.

The ch parameter determines which PMU the compensation data is generated for. Select the lowest number channel for the PMU. For example, to gather compensation data for PMU2, select channel 3.

To measure short connection compensation values: 1. Connect the center conductors of channel 1 and 2 together by contacting probes to a common pad
or THRU structure. 2. Send the :PMU:MEASURE:CONNECTION:COMP command with compType set to 1. 3. Check the KXCI Console to verify it was successfully completed.

To measure current offset compensation values: 1. Lift the probes for both PMU channels or remove the device from the test fixture. 2. Send the :PMU:MEASURE:CONNECTION:COMP command with compType set to 3.

To enable the compensation values, use the :PMU:CONNECTION:COMP command.

To view the compensation data, in Clarius, select Tools and select PMU Connection Compensation.

For detail on performing connection compensation, refer to "Perform connection compensation" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual.

7-12

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Example 1

:PMU:MEASURE:CONNECTION:COMP 1, 1 This example measures and stores short compensation data for PMU channels 1 and 2. On the KXCI Console, a typical response for the short measurement is: Compensate: PMU1, ch1 R=0.56 Ohms Compensate: PMU1, ch2 R=0.58 Ohms
Example 2

-- Measure and store offset current compensation data for PMU channels 1 and 2. :PMU:MEASURE:CONNECTION:COMP 1, 3

This example measures and stores offset current compensation data for PMU channels 1 and 2.

The first few lines of a typical response for the current offset measurement (with RPM) are:

ForceRange=40V, MeasureRange=0.8A

Offset: Ch1=-5.63e-04 CH2=-5.11e-04

ForceRange=40V, MeasureRange=0.01A

Offset: Ch1=-7.48e-06 CH2=-9.00e-06

ForceRange=40V, MeasureRange=0.0001A Offset: Ch1=-4.13e-08 CH2=-6.39e-08

ForceRange=10V, MeasureRange=0.2A

Offset: Ch1=-1.96e-05 CH2=3.37e-05

Also see

:PMU:CONNECTION:COMP (on page 7-5)

:PMU:MEASURE:MODE
This command sets the measure mode for the waveform capture and pulse I-V test modes.

Instruments PMU

Affected by
*RST :PMU:INIT

Usage

:PMU:MEASURE:MODE mode

mode

No measurements: 0 Spot mean discrete: 1 Waveform discrete: 2 Spot mean average: 3 Waveform average: 4

Default value 1

Details

For pulse I-V measurements:
· When spot mean discrete is selected, the 4200A-SCS returns the averaged voltage and current
readings for every pulse in the burst.
· When the spot mean average is selected, the 4200A-SCS averages the spot mean readings for all
pulses in the burst into a single data set.

4200A-KXCI-907-01 Rev. D May 2024

7-13

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

For waveform measurements:
· When discrete is selected, the 4200A-SCS returns samples of voltage and current readings and
timestamp readings for every pulse in the burst.
· When average is selected, the 4200A-SCS returns readings as a mean average of the
corresponding samples for all the pulses in the burst.

For the average modes, the number of pulses is defined by the burst count set in :PMU:PULSE:BURST:COUNT.

Example

Also see

:PMU:MEASURE:MODE 1 Sets the pulse measurement mode to the spot mean discrete.
:PMU:PULSE:BURST:COUNT (on page 7-17) :PMU:MEASURE:PIV (on page 7-14)

:PMU:MEASURE:PIV
This command sets the readings to be returned in pulse I-V mode for the specified channel.

Instruments PMU

Affected by :PMU:MEASURE:MODE

Usage

:PMU:MEASURE:PIV ch, AcquireHigh, AcquireLow

Default value All parameters enabled

ch AcquireHigh AcquireLow
Details

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Acquire high measurements:
 Disable: 0  Enable: 1
Acquire low measurements:
 Disable: 0  Enable: 1

To acquire pulse I-V measurements:
· :PMU:MEASURE:MODE must be set to spot mean discrete or spot mean average. · At least one of the :PMU:MEASURE:PIV parameters must be set to Enable (1). If both parameters
are disabled, an error is generated and the PMU acquires all measurements.

To speed up your test execution, measure only high or low values. Measuring only high or low values is faster than measuring both values.

7-14

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Example Also see

:PMU:MEASURE:PIV 1, 1, 1 Acquire voltage high, current high, time high, status high, voltage low, current low, time low, and status low values for channel 1.
:PMU:DATA:GET (on page 7-7) :PMU:MEASURE:MODE (on page 7-13)

:PMU:MEASURE:RANGE
This command sets the current measure range for the specified pulse channel.

Instruments PMU

Affected by
*RST :PMU:INIT

Default value Fixed range of 10E-3

Usage

:PMU:MEASURE:RANGE ch, IRangeType :PMU:MEASURE:RANGE ch, IRangeType, IMeasRange

ch IRangeType
IMeasRange

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Current range type:
 Autorange: 0  Limited autorange: 1  Fixed range: 2
Current measure range in amps; see Details

Details

The current range depends on the PMUs and RPMs that are available in the system, as defined in the following table.

IMeasRange (A) 0.8 0.2 0.01 0.001 0.0001 0.00001 0.000001 0.0000001

40 V PMU OK Not available OK Not available OK Not available Not available Not available

40 V RPM OK Not available OK Not available OK Not available Not available Not available

10 V PMU Not available OK OK Not available Not available Not available Not available Not available

10 V RPM Not available OK OK OK OK OK OK OK

4200A-KXCI-907-01 Rev. D May 2024

7-15

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Limited autorange is a compromise between autorange and fixed range. It uses the IMeasRange value as the minimum range during autorange. This reduces test time if you do not need maximum resolution at minimum currents.
If you are using Segment Arb, you must use a fixed range.
The voltage range is set by :PMU:SOURCE:RANGE.
Example 1

:PMU:MEASURE:RANGE 1, 0, 0.01 Sets autorange as the current measure type for PMU channel 1. The value for the current measure range is ignored.
Example 2

:PMU:MEASURE:RANGE 1, 2, 0.02 Sets a fixed current measurement range of 0.2 A on PMU channel 1.

Also see

:PMU:MEASURE:MODE (on page 7-13) :PMU:SOURCE:RANGE (on page 7-24)

:PMU:OUTPUT:STATE
This command sets the output state for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value 0

Usage

:PMU:OUTPUT:STATE ch, state

ch state

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Output state:
 Off: 0  On: 1

Details

When off is sent, this command takes effect immediately.

When on is sent, this command takes effect when :PMU:EXECUTE is sent.

You must set the output state to on to execute a pulse. When the pulse is complete, set the output state back to off.

7-16

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

It is good practice to routinely turn off the outputs of the pulse card after a test has been completed.

Example

:PMU:INIT 0

Also see

:PMU:LOAD 1, 1e6 :PMU:CONNECTION:COMP 1, 1, 0 :PMU:LLEC:CONFIGURE 1, 0 :PMU:SOURCE:RANGE 1, 40 :PMU:MEASURE:RANGE 1, 2, 0.01 :PMU:PULSE:BURST:COUNT 2 :PMU:PULSE:TRAIN 1, 0, 5 :PMU:PULSE:TIMES 1, 1e-6, 0.5e-6, 1e-7, 1e-7, 0 :PMU:MEASURE:MODE 4 :PMU:OUTPUT:STATE 1, 1 :PMU:EXECUTE -- Wait until test completes. :PMU:OUTPUT:STATE 1, 0 Reset all PMU channels and select standard pulse mode. Configure PMU channel 1 to output a pulse train and use waveform capture mode with waveform average for measurements. Start the test. Wait for test completion. Turn off the output.
None

:PMU:PULSE:BURST:COUNT
This command sets the total number of pulses to be output for all active pulse channels.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value 1

Usage

:PMU:PULSE:BURST:COUNT burstCount

burstCount

Pulse count in number of pulses: 1 to 10000

Details

This command sets the number of pulses used in average mode or discrete mode with either spot mean or waveform measurements.

The burst count setting affects the channels of all active pulse card channels.

4200A-KXCI-907-01 Rev. D May 2024

7-17

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

The number of data points that the PMU generates is determined by the measurement type:
· For spot mean discrete, burstCount data points are generated. · For waveform discrete, burstCount * Waveform Points Count data point are generated. · For spot mean average, 1 data point is generated. · For waveform average, Waveform Points Count data points are generated.
:PMU:PULSE:BURST:COUNT 50 Sets a burst count of 50 for all active PMU channels.
:PMU:PULSE:TIMES (on page 7-18)

:PMU:PULSE:TIMES
This command sets the pulse period, pulse width, pulse rise time, pulse fall time, and pulse delay for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value
Period: 1e-6 (1 s) Width: 500e-9 (500 ns) Pulse rise time: 100e-9 (100 ns) Pulse fall time: 100e-9 (100 ns) Delay: 0 (no delay)

Usage

:PMU:PULSE:TIMES ch, period, width, riset, fallt :PMU:PULSE:TIMES ch, period, width, riset, fallt, delay

ch period
width
riset

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse period (in seconds):
 PGU 10 V range: 20e-9 to 1 (20 ns to 1 s)  PMU 10 V range: 60e-9 (60 ns to 1 s)  40 V range: 500e-9 to 1 (500 ns to 1 s)
Must be the same for all channels
Pulse width in seconds:
 PGU 10 V: 10e-9 to (Period - 10e-9)  PMU 10 V: 40e-9 to (Period - 10e-9)  40 V: 250e-9 to (Period - 10e-9)
Must be less than period and more than (0.5(riset + fallt))
Pulse rise time in seconds (floating-point number):
 PGU 10 V: 10e-9 to 33e-3 (10 ns to 33 ms)  PMU 10 V: 20e-9 to 33e-3 (20 ns to 33 ms)  40 V: 50e-9 to 33e-3 (50 ns to 33 ms)

7-18

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Details

fallt delay

Pulse fall time in seconds (floating-point number):
 PGU 10 V: 10e-9 to 33e-3 (10 ns to 33 ms)  PMU 10 V: 20e-9 to 33e-3 (20 ns to 33 ms)  40 V: 50e-9 to 33e-3 (50 ns to 33 ms)
The pulse delay time:
 No delay: 0  PGU 10 V: 10e-9 (10 ns)  PMU 10 V: 20e-9 (20 ns)  40 V: 50e-9 (50 ns)
See Details

Use this command to set the timing parameters for the test. Pulse width, rise time, fall time, and delay are individually set for each channel. However, the period must be the same on all PMU channels. The period defined in the most recently sent :PMU:PULSE:TIMES command is used for all channels.
There are several restrictions when setting the pulse time:
· The width must be less than the period and more than 0.5(riset + fallt). · The rise time of a pulse cannot be longer than the pulse width. · For the 40 V range, the minimum transition time for pulse source only (no measurement) on the
rise-time high voltage is 50 ns for the 4225-PMU and 4220-PGU.
· The delay must be less than (period - width - 0.5(riset + fallt)). Set to 0 for no delay. · The minimum off time, equal to (period - delay - width - 0.5 × (riset + fallt)), must be
more than 40 ns.
The values are checked when :PMU:EXECUTE is sent.
If you are setting the timing for a sample (waveform capture), setting the delay to a small value allows the PMU to better capture the rising edge of the pulse. This value is sample rate dependent, but for the 200 MSa/s rate, a pulse delay of 20 ns to 100 ns allows the rising edge of the pulse to be captured.
To see the whole pulse transition to high when capturing waveform data, use a small nonzero value like 10 ns for the delay.

4200A-KXCI-907-01 Rev. D May 2024

7-19

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example

:PMU:INIT 0 :PMU:RPM:CONFIGURE PMU1-1, 0 :PMU:MEASURE:RANGE 1, 2, 10e-6 :PMU:MEASURE:MODE 2 :PMU:PULSE:TRAIN 1, 0.0, 5.0 :PMU:PULSE:TIMES 1, 100e-6, 50e-6, 5e-6, 5e-6 :PMU:OUTPUT:STATE 1, 1 :PMU:EXECUTE :PMU:TEST:STATUS? :PMU:OUTPUT:STATE 1, 0
This example outputs a pulse train and measures the voltage. This example:
 Resets and initializes the PMU and sets the mode to standard pulse mode.  Configures the RPM to channel 1 of the PMU.  Sets the current range to 10 µA for 1 M scope impedance.  Sets the measure mode to 2, waveform capture discrete.  Sets channel 1 of the pulse card for a pulse train with a 5 V amplitude.  Sets a period of 100 µs, 50 µs width, and 5 µs rise and fall times.  Sets the output state of channel 1 to on.  Executes the commands.  Returns 1 if the test is running, 0 if it is complete.  Turns off the output.
The graph of the voltage compared to time is shown in the following figure.

Also see

:PMU:EXECUTE (on page 7-9)

7-20

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:PULSE:TRAIN
This command configures the pulse base and amplitude voltage levels of the specified pulse channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:PULSE:TRAIN ch, vbase, vamplitude

ch
vbase vamplitude

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Voltage level for pulse base level
Voltage level for pulse amplitude

Details

vbase sets the starting voltage level and vamplitude sets the peak voltage level.

You can use this command to set up a pulse train to output on the specified pulse channel.

If the source range is set to 10 V, you can only span 10 volts at a time. If the source range is set to 40 V, you can only span 40 volts at a time. For example, if the 10 V range is selected, you can set vbase to -5 V and vamplitude to 5 V.

For a detailed example that uses this command, refer to Example: Using KXCI to generate a pulse train (on page 7-37).

Example

Also see

:PMU:PULSE:TRAIN 1, 0, 2 This example is a pulse train that goes from 0 V (base) to 2 V (amplitude).
:PMU:SOURCE:RANGE (on page 7-24)

:PMU:RETAIN:CONFIG
This command retains the present configuration for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value 0

Usage

:PMU:EXECUTE:STATE ch, state

ch state

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Disable: 0 Enable: 1

4200A-KXCI-907-01 Rev. D May 2024

7-21

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Details

When this command is set to enable (1), the programmed PGU and PMU settings for the specific channel are saved so that you can send the :PMU:EXECUTE command multiple times without sending all the PMU commands each time.

Example

Also see

:PMU:RETAIN:CONFIG 1, 0 Sets channel 1 of the pulse card to not retain the configuration.
:PMU:EXECUTE (on page 7-9)

:PMU:RPM:CONFIGURE
This command switches the RPM output between the PGUs, PMUs, CVUs, and SMUs.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:RPM:CONFIGURE HRID, mode

HRID mode

The PGU or PMU instrument and channel (N is the card index, 1 to 9):
 PMUN-1, PMUN-2  SMUN  CVHN or CVLN
The mode index number:
 PMU: 0  CV_2W: 1  SMU: 2  CV_4W: 3

Details

In addition to the connection to the PMU, the 4225-RPM includes input connections for the following instruments:
· SMUs: 4200-SMU, 4201-SMU, 4210-SMU, or 4211-SMU · CVUs: 4210-CVU or 4215-CVU

Use this command to control switching inside the RPM to connect the PMU, CVU, or SMU to the output.

When using the PMU with an RPM, :PMU:RPM:CONFIGURE must be called to connect the pulse source to the RPM output.

7-22

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

For detailed examples that use this command for two channels, refer to Programming examples (on page 7-35).

Example

Also see

:PMU:INIT 0 :PMU:RPM:CONFIGURE PMU1-1, 0 :PMU:LOAD 1, 1e3 :PMU:MEASURE:MODE 1 :PMU:SWEEP:PULSE:AMPLITUDE 1, -5, 5, 0.1, 0, 0 :PMU:PULSE:TIMES 1, 10e-6, 5e-6, 5e-6, 1e-7, 0 :PMU:MEASURE:RANGE 1, 2, 10e-3 :PMU:TIMES:PIV 1, 0.75, 0.9 :PMU:OUTPUT:STATE 1, 1 :PMU:EXECUTE This example creates a pulse I-V sweep. This example:
 Initializes the PMUs and sets them to standard pulse mode.  Connects PMU 1, channel 1, to the RPM.  Sets load impedance to 1000 .  Sets the measure mode to spot mean discrete.  Sets the amplitude sweep parameters to start V = -5 V, stop V = 5 V, step size = 0.1, and base
voltage = 0 V.
 Sets the pulse timing parameters to period = 10e-6 s, pulse width = 5e-6 s, and rise and fall
times = 1e-7 s.
 Sets the measure range to a fixed range of 10 mA.  Sets the spot mean measurement window for pulse I-V capture to 75% for the start and 90% for the
stop location.
 Turns the PMU output on.  Executes the test.
In this example, for each pulse, one reading is derived.
None

:PMU:SAMPLE:RATE
This command sets the number of samples taken in samples per second.

Instruments PMU

Affected by
*RST :PMU:INIT

Default value 200 MSamples

Usage

:PMU:SAMPLE:RATE rate

rate

The rate (samples per second, entered as an integer): 1e3 to 200e6

4200A-KXCI-907-01 Rev. D May 2024

7-23

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Details

The sample rate must be fast enough to sample the shortest measure interval in the waveform. If the rate is too slow, KXCI automatically adjusts the sample rate to the lowest value that can be used for the test, based on the formula:

slowestSampleRate = 1/shortestMeasureInterval

The number of data points generated by the PMU with configured sample rate must be below 65536 (the maximum number of allowed points for KXCI). If the data points exceed 65536, KXCI will automatically adjust the sample rate to the fastest sample rate KXCI can use that does not exceed 65536, based on the formula:

fastestSampleRate = 65536 / TotalMeasureDuration

The slowestSampleRate cannot be more than the fastestSampleRate.

Example

Also see

:PMU:SAMPLE:RATE 2e3 Sets the number of samples to be 2000 per second.
None

:PMU:SOURCE:RANGE
This command sets the voltage range for measure and pulse for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value 10 V

Usage

:PMU:SOURCE:RANGE ch, VSrcRange

ch VSrcRange

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Voltage source range in volts: 10 or 40

Details

Setting the pulse range of a pulse card channel to 10 V selects the low-voltage range.

Setting the pulse range of a pulse card channel to 40 V selects the high-voltage range.

This setting takes effect when :PMU:EXECUTE is sent. At that time, the pulse parameters are verified. If any of these parameters are out of bounds, an error message is generated.

7-24

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Example Also see

:PMU:SOURCE:RANGE 1, 40 Set channel 1 to the 40 V source range.
:PMU:PULSE:TIMES (on page 7-18)

:PMU:STEP:DC
This command configures the pulse step for stepping the DC voltage level for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:STEP:DC ch, start, stop, step

ch
start stop step

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial step value in volts (limited by range)
Final step value in volts (limited by range)
Step size in volts

Details

Every voltage step receives a full voltage sweep, which is configured on a different PMU channel.

You must configure a sweep for another PMU channel before setting this command.

Example

Also see

:PMU:STEP:DC 1, 0, 5, 0.5 :PMU:SWEEP:DC 2, 0, 5, 0.5, 0 Steps the DC voltage level on channel 1 starting at 1 V and going to 5 V in 0.5 V steps. Sweep the DC voltage level on channel 2 starting at 0 V and stopping at 5 V, stepping in 0.5 V steps. Dual sweep is disabled.
:PMU:MEASURE:MODE (on page 7-13) :PMU:SOURCE:RANGE (on page 7-24) :PMU:STEP:PULSE:AMPLITUDE (on page 7-26) :PMU:STEP:PULSE:BASE (on page 7-27)

4200A-KXCI-907-01 Rev. D May 2024

7-25

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:STEP:PULSE:AMPLITUDE
This command configures the pulse step for stepping the pulse voltage amplitude with a fixed base level for the specified channel.

Instruments
PGU PMU Usage

Affected by
*RST :PMU:INIT

Default value Not applicable

:PMU:STEP:PULSE:AMPLITUDE ch, start, stop, step, vbase

ch
start stop step

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial step value in voltage (limited by range)
Final step value in voltage (limited by range)
Step size in voltage; cannot be 0

vbase

Base voltage for the pulse (starting voltage level; limited by range)

Details

You must configure a sweep for another PMU channel before setting this command.

If the source range is set to 10 V, you can only step a maximum of 10 volts in a test. If the source range is set to 40 V, you can only step 40 volts in a test. For example, if the 10 V range is selected, you can set the start to -5 V and the stop value to 5 V.

For a detailed example that uses this command, refer to Example: Use KXCI to generate a pulse I-V drain family of curves (on page 7-35).

Example

Also see

:PMU:STEP:PULSE:AMPLITUDE 1, 1, 5, 0.5, 0 Steps the amplitude on channel 1 starting at 1 V and going to 5 V, stepping in 0.5 V steps, with a base voltage of 0.
:PMU:PULSE:BURST:COUNT (on page 7-17) :PMU:PULSE:TIMES (on page 7-18) :PMU:SOURCE:RANGE (on page 7-24) :PMU:STEP:DC (on page 7-25) :PMU:STEP:PULSE:BASE (on page 7-27) :PMU:SWEEP:DC (on page 7-28)

7-26

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:STEP:PULSE:BASE
This command configures the pulse step for stepping the pulse voltage base level with a fixed voltage amplitude for the specified channel. Only available if the mode is set to pulse I-V.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:STEP:PULSE:BASE ch, start, stop, step, vamplitude

ch
start stop step vamplitude

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial step value in voltage (limited by range) Final step value in voltage (limited by range) Step size in voltage; cannot be 0 Amplitude of the pulse (peak voltage level; limited by range)

Details

You must configure a sweep for another PMU channel before setting this command.

If the source range is set to 10 V, you can only step a maximum of 10 volts in a test. If the source range is set to 40 V, you can only step 40 volts in a test. For example, if the 10 V range is selected, you can set the start to -5 V and the stop value to 5 V.

Example

Also see

:PMU:STEP:PULSE:BASE 1, 1, 5, 0.5, 1 Steps the base voltage on channel 1, starting at 1 V and going to 5 V in 0.5 V steps with a 1 V amplitude.
:PMU:SOURCE:RANGE (on page 7-24) :PMU:STEP:DC (on page 7-25) :PMU:STEP:PULSE:AMPLITUDE (on page 7-26) :PMU:SWEEP:DC (on page 7-28)

4200A-KXCI-907-01 Rev. D May 2024

7-27

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SWEEP:DC
This command configures the pulse sweep for sweeping the DC voltage level for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:SWEEP:DC ch, start, stop, step, dualSweep

ch
start stop

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial sweep value in voltage (limited by range)
Final sweep value in voltage (limited by range)

step dualSweep

Step size in voltage; cannot be 0
Enable or disable dual sweep:
 Disable dual sweep: 0  Enable dual sweep: 1

Details

When you enable Dual Sweep, the instrument sweeps from start to stop, then from stop to start. When you disable Dual Sweep, the instrument sweeps from start to stop only.

If you are sweeping more than one channel, the sweep must have the same number of steps for each channel.

Example

Also see

:PMU:SWEEP:DC 1, 0, 5, 0.5, 0 Sweep the DC voltage level on channel 1 starting at 0 V and stopping at 5 V in 0.5 V steps. Dual sweep is disabled.
"Dual Sweep" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual :PMU:SOURCE:RANGE (on page 7-24) :PMU:SWEEP:PULSE:AMPLITUDE (on page 7-29) :PMU:SWEEP:PULSE:BASE (on page 7-31)

7-28

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SWEEP:PULSE:AMPLITUDE
This command configures the pulse sweep for sweeping the pulse voltage amplitude with a fixed base level for the specified channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SWEEP:PULSE:AMPLITUDE ch, start, stop, step, vbase, dualSweep

ch
start stop

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial sweep value in voltage (limited by range)
Final sweep value in voltage (limited by range)

step vbase

Step size in voltage; cannot be 0 Base voltage for the pulse (starting voltage level; limited by range)

dualSweep

Enable or disable dual sweep:
 Disable dual sweep: 0  Enable dual sweep: 1

Details

When you enable Dual Sweep, the instrument sweeps from start to stop, then from stop to start. When you disable Dual Sweep, the instrument sweeps from start to stop only.

If you are sweeping more than one channel, the sweep must have the same number of steps for each channel.

If the source range is set to 10 V, the initial sweep value and final sweep value must be within 10 volts of each other. If the source range is set to 40 V, they must be within 40 volts. For example, if the 10 V range is selected, you can set start to -5 V and stop to 5 V.

For a detailed example that uses this command, refer to Example: Use KXCI to generate a pulse I-V drain family of curves (on page 7-35).

4200A-KXCI-907-01 Rev. D May 2024

7-29

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

:PMU:INIT 0 :PMU:RPM:CONFIGURE PMU1-1, 0 :PMU:LOAD 1, 1e3 :PMU:MEASURE:MODE 1 :PMU:SWEEP:PULSE:AMPLITUDE 1, -5, 5, 0.1, 0, 0 :PMU:PULSE:TIMES 1, 10e-6, 5e-6, 5e-6, 1e-7, 0 :PMU:MEASURE:RANGE 1, 2, 10e-3 :PMU:TIMES:PIV 1, 0.75, 0.9 :PMU:OUTPUT:STATE 1, 1 :PMU:EXECUTE This example creates a pulse I-V sweep. This example:
 Initializes the PMUs and sets them to standard pulse mode.  Connects PMU 1, channel 1, to the RPM.  Sets load impedance to 1000 .  Sets the measure mode to spot mean discrete.  Sets the amplitude sweep parameters to start V = -5 V, stop V = 5 V, step size = 0.1, and base
voltage = 0 V.
 Sets the pulse timing parameters to period = 10e-6 s, pulse width = 5e-6 s, and rise and fall
times = 1e-7 s.
 Sets the measure range to a fixed range of 10 mA.  Sets the spot mean measurement window for pulse I-V capture to 75% for the start and 90% for the
stop location.
 Turns the PMU output on.  Executes the test.
In this example, for each pulse, one reading is derived.
"Dual Sweep" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual :PMU:SWEEP:DC (on page 7-28) :PMU:SWEEP:PULSE:BASE (on page 7-31)

7-30

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SWEEP:PULSE:BASE
This command configures the pulse sweep for sweeping the pulse voltage base level with a fixed voltage amplitude for the specified channel.

Instruments
PGU PMU

Affected by
*RST :PMU:INIT

Default value Not applicable

Usage

:PMU:SWEEP:PULSE:BASE ch, start, stop, step, vamplitude, dualSweep

ch
start stop

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Initial sweep value in voltage (limited by range)
Final sweep value in voltage (limited by range)

step vamplitude

Step size in voltage Amplitude of the pulse (the peak voltage level; limited by range)

dualSweep

Enable or disable dual sweep:
 Disable dual sweep: 0  Enable dual sweep: 1

Details

When you enable Dual Sweep, the instrument sweeps from start to stop, then from stop to start. When you disable Dual Sweep, the instrument sweeps from start to stop only.

If you are sweeping more than one channel, the sweep must have the same number of steps for each channel.

If the source range is set to 10 V, the initial sweep value and final sweep value must be within 10 volts of each other. If the source range is set to 40 V, they must be within 40 volts. For example, if the 10 V range is selected, you can set start to -5 V and stop to 5 V.

Example

Also see

:PMU:SWEEP:PULSE:BASE 1, 1, 5, 0.5, 1, 0 Sweep the base on channel 1 starting at 1 V and stopping at 5 V, stepping in 0.5 V steps with a 1 V amplitude.
"Dual Sweep" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual :PMU:SOURCE:RANGE (on page 7-24) :PMU:SWEEP:PULSE:AMPLITUDE (on page 7-29)

4200A-KXCI-907-01 Rev. D May 2024

7-31

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:TEST:STATUS?
This command is used to determine if a test is running or idle.

Instruments
PGU PMU

Affected by Not applicable

Usage

:PMU:TEST:STATUS?

Details

Default value Not applicable

This command returns the status information on all pulse cards. It indicates whether a test is complete or idle (return of 0) or running (return of 1).

The primary use of this command is to ensure that the test is completed before fetching PMU data or ending the test.

Example

Also see

:PMU:TEST:STATUS? This command returns 1 if the test is still running or 0 if the test is idle.
None

:PMU:TIMES:PIV
This command sets the spot mean measurement window for pulse I-V capture for the specified channel.

Instruments PMU

Affected by
*RST :PMU:INIT

Default value
StartPercent: 0.75 (75%) StopPercent: 0.90 (90%)

Usage

:PMU:PIV:TIMES ch, StartPercent, StopPercent

ch StartPercent StopPercent

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
The start location, specified as a percentage of the widths set for the amplitude and base level: 0 to 1
The stop location, specified as a percentage of the widths set for the amplitude and base level: 0 to 1

7-32

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Details

The following figure shows example start and stop locations when spot mean measurements are made. The start and stop percentage values indicate the portions of the pulse that are sampled.
Figure 14: Spot mean measurements example

Example Also see

:PMU:INIT 0 :PMU:RPM:CONFIGURE PMU1-1, 0 :PMU:LOAD 1, 1e3 :PMU:MEASURE:MODE 1 :PMU:SWEEP:PULSE:AMPLITUDE 1, -5, 5, 0.1, 0, 0 :PMU:PULSE:TIMES 1, 10e-6, 5e-6, 5e-6, 1e-7, 0 :PMU:MEASURE:RANGE 1, 2, 10e-3 :PMU:TIMES:PIV 1, 0.75, 0.9 :PMU:OUTPUT:STATE 1, 1 :PMU:EXECUTE This example creates a pulse I-V sweep. This example:
 Initializes the PMUs and sets them to standard pulse mode.  Connects PMU 1, channel 1, to the RPM.  Sets load impedance to 1000 .  Sets the measure mode to spot mean discrete.  Sets the amplitude sweep parameters to start V = -5 V, stop V = 5 V, step size = 0.1, and base
voltage = 0 V.
 Sets the pulse timing parameters to period = 10e-6 s, pulse width = 5e-6 s, and rise and fall
times = 1e-7 s.
 Sets the measure range to a fixed range of 10 mA.  Sets the spot mean measurement window for pulse I-V capture to 75% for the start and 90% for the
stop location.
 Turns the PMU output on.  Executes the test.
In this example, for each pulse, one reading is derived.
None

4200A-KXCI-907-01 Rev. D May 2024

7-33

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:TIMES:WAVEFORM

This command defines the predata and postdata measurement windows for waveform capture for the specified channel.

Instruments

Affected by

Default value

PMU

*RST :PMU:INIT

Prepercent: 0.2 Postpercent: 0.2

Usage

:PMU:TIMES:WAVEFORM ch, PrePercent, PostPercent

ch PrePercent PostPercent

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pre-data, specified as a percentage of the amplitude pulse duration: 0 to 1.0; refer to Details
Post-data, specified as a percentage of the amplitude pulse duration: 0 to 1.0

Details

This command defines the pre-data and post-data measurement windows for waveform capture mode. When these values are not set to 0, data is collected before and after the pulse. The pre-data interval can be less than or equal to the pulse delay (set by :PMU:PULSE:TIMES). If the pulse delay is 0, no pre-data is collected.

For waveform capture, measurement samples are acquired on pulse rise, pulse amplitude, pulse fall, and a small portion before the rise (pre-data) and after the fall (post-data) on the base level, as shown in the following figure.
Figure 15: Waveform capture

The amplitude pulse duration used for the percent calculation is width + 0.5 × (rise + fall)

This is the duration of the pulse when the amplitude is not 0.

Example

:PMU:TIMES:WAVEFORM 1, 0, 0.1 Sets the pre-data to get no data before the pulse and post-data to get 10% of data.

Also see

:PMU:PULSE:TIMES (on page 7-18)

7-34

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Programming examples
The following programming examples use the Python programming language to demonstrate how to assemble the KXCI PGU and PMU commands for testing.
To run these scripts, you need to download Instrcomm.py from the following link and store it in the same folder as your active Python file.
More detailed versions of these examples are available at https://github.com/tektronix/keithley/tree/main/Instrument_Examples/Model_4200A/KXCI_Examples (github.com/tektronix/keithley/tree/main/Instrument_Examples/Model_4200A/KXCI_Examples).
Example: Use KXCI to generate a pulse I-V drain family of curves
This example uses RPM1 and RPM2 of PMU1 to generate a pulse I-V drain family of curves. It creates a pulse amplitude step on channel 1 from 2 V to 4 V in 0.5 V steps and a pulse amplitude sweep on channel 2 from 0 V to 5 V in 0.2 V steps. This test is similar to the Clarius pulse-vds-id test.
Device used: 4-terminal nMOSFET in an 8101-PIV fixture with terminals connected to the top slot, using AC + DC IN 1 and AC + DC IN 2.
from instrcomms import Communications import time
#Instrument resource string obtained from NI MAX. INST_RESOURCE_STR = "TCPIP0::X.X.X.X::1225::SOCKET"
#Open the resource manager in PyVISA with the corresponding instrument resource string. my4200 = Communications(INST_RESOURCE_STR)
#Open connections to the 4200A-SCS. my4200.connect() #Set PyVISA write terminator. my4200._instrument_object.write_termination = "\0" #Set PyVISA read terminator. my4200._instrument_object.read_termination = "\0" #Initialize to standard pulse mode. my4200.query(":PMU:INIT 0")
#RPM on, channel 1. my4200.query(":PMU:RPM:CONFIGURE PMU1-1, 0") #RPM on, channel 2. my4200.query(":PMU:RPM:CONFIGURE PMU1-2, 0")

4200A-KXCI-907-01 Rev. D May 2024

7-35

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

#Spot mean discrete measure mode. my4200.query(":PMU:MEASURE:MODE 1") #Channel 1, 10 mA fixed current range. my4200.query(":PMU:MEASURE:RANGE 1, 2, 0.01") #Channel 2, 200 mA fixed current range. my4200.query(":PMU:MEASURE:RANGE 2, 2, 0.2") #Load-line effect compensation on, channel 1. my4200.query(":PMU:LLEC:CONFIGURE 1, 1") #Amplitude step, 2 V to 4 V, 0.5 V steps. Dual sweep is optional and is disabled by default. my4200.query(":PMU:STEP:PULSE:AMPLITUDE 1, 2, 4, 0.5, 0") #Amplitude sweep, 0 to 5 V, 0.2 V steps. Dual sweep is disabled explicitly. my4200.query(":PMU:SWEEP:PULSE:AMPLITUDE 2, 0, 5, 0.2, 0, 0")
#Set the output state of channel 1 to on. my4200.query(":PMU:OUTPUT:STATE 1, 1") #Set the output state of channel 2 to on. my4200.query(":PMU:OUTPUT:STATE 2, 1")
#Execute the test. my4200.query(":PMU:EXECUTE")
#Continue looping until the test is complete. while True: #Return 1 if it is running, 0 if it is complete.
status = my4200.query(":PMU:TEST:STATUS?") if int(status) == 0:
print("Measurement Complete.") break #Print status to the terminal. print(f"Status: {status}") #Sleep for 1 second between checks. time.sleep(1)
#Data points from channel 1. print(my4200.query(":PMU:DATA:COUNT? 1")) #Data points from channel 2. print(my4200.query(":PMU:DATA:COUNT? 2")) #All data from channel 1. datachan1 = my4200.query(f":PMU:DATA:GET 1") #Print the response to the console. print("Response from 4200A channel 1: ", datachan1) #All data from channel 2. datachan2 = my4200.query(f":PMU:DATA:GET 2") #Print the response to the console. print("Response from 4200A channel 2: ", datachan2)
#Set output state of CH1 to off. my4200.query(":PMU:OUTPUT:STATE 1, 0") #Set output state of CH2 to off. my4200.query(":PMU:OUTPUT:STATE 2, 0")
#Close communications with the 4200A-SCS. my4200.disconnect()

7-36

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Example: Using KXCI to generate a pulse train
This example creates a 5 V amplitude pulse train on channel 1, output from a 4225-PMU with 4225-RPMs. It returns the current, voltage, time, and status measurements on channel 1 using waveform capture mode. This example also demonstrates how to retrieve more than 2048 points. Two channels are used, with channel 2 set to 0 V and the load set to 1 M.
Device used: 1 M oscilloscope impedance.
from instrcomms import Communications import time
#Instrument resource string obtained from NI MAX. INST_RESOURCE_STR = "TCPIP0::XXX.XX.XX.XXX::1225::SOCKET" #Open the resource manager in PyVISA with the corresponding instrument resource string. my4200 = Communications(INST_RESOURCE_STR) #Open connections to the 4200A-SCS. my4200.connect() #Set PyVISA write terminator. my4200._instrument_object.write_termination = "\0" #Set PyVISA read terminator. my4200._instrument_object.read_termination = "\0" #Initialize to standard pulse mode. my4200.query(":PMU:INIT 0") #Configure the RPM. my4200.query(":PMU:RPM:CONFIGURE PMU1-1, 0") #Set to discrete timing, waveform capture. my4200.query(":PMU:MEASURE:MODE 2") #Pulse train with 0 V base, 5 V amplitude. my4200.query(":PMU:PULSE:TRAIN 1, 0.0, 5.0")
#Set pulse timing to a period of 100 us, 50 us width, and 5 us rise and fall times. my4200.query(":PMU:PULSE:TIMES 1, 100e-6, 50e-6, 5e-6, 5e-6") #Set output state to on. my4200.query(":PMU:OUTPUT:STATE 1, 1") #Execute the test. my4200.query(":PMU:EXECUTE")
#Continue looping until the test is complete. while True: #Return 1 if it is running; 0 if it is complete.
status = my4200.query(":PMU:TEST:STATUS?") if int(status) == 0:
print("Measurement Complete.") break #Print status to the terminal. print(f"Status: {status}") #Sleep for 1 second between checks. time.sleep(1)
#Ask for the number of data points. count = my4200.query(":PMU:DATA:COUNT? 1")

4200A-KXCI-907-01 Rev. D May 2024

7-37

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

#Print out the number of data points. print(f"Data count for channel 1: {count}")
data_points = int(count) #Loop through the data points in chunks. coords = [] for start_point in range(0, data_points, 2048):
#Get data for the current chunk. response = my4200.query(f":PMU:DATA:GET 1, {start_point}, 2048")
#Split the response using semicolon as the delimiter for each point. coords += response.split(";")
#Split into 4 separate values for each point. coords2d = [value.split(",") for value in coords] print(f"Retrieved {len(coords)} data points")
#Print the first data point first_point = coords[0] print(f"First data point: {first_point}") first_point_values = first_point.split(",")
#Also print the voltage and current measurements separately. print(f"Voltage: {first_point_values[0]}, Current: {first_point_values[1]}") print("Voltage values:") #Print 2048 voltage values. print(my4200.query(":PMU:DATA:GET 1, 0, 2048, VH")) print("Current values:") #Print 2048 current values. print(my4200.query(":PMU:DATA:GET 1, 0, 2048, IH")) #Set the output state to off. my4200.query(":PMU:OUTPUT:STATE 1, 0") #Close communications with the 4200A-SCS. my4200.disconnect()
This example produces output similar to the following:
Status: 1 Measurement Complete. Total data points for channel 1: 3300 Retrieved 3300 data points First data point: 0.00788628,-21.7246e-9,0,01020021 Voltage: 0.00788628, Current: -21.7246e-9

Summary of Segment Arb commands
The following command descriptions are for the KXCI PGU and PMU commands that are available in Clarius+ versions 1.13 and later. These system commands support the Segment Arb® waveforms. They do not support full-arb pulse mode.
To use Segment Arb, at a minimum, you must set :PMU:SARB:SEQ:STARTV, :PMU:SARB:SEQ:STOPV, and :PMU:SARB:SEQ:TIME for at least three sequences. Every :START command must have a corresponding :STOP command.

7-38

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

For more information, refer to "Segment Arb waveform" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual.

Command :PMU:SARB:SEQ:MEAS:START (on page 7-40)
:PMU:SARB:SEQ:MEAS:START:ADD (on page 7-41)
:PMU:SARB:SEQ:MEAS:STOP (on page 7-42)
:PMU:SARB:SEQ:MEAS:STOP:ADD (on page 7-43)
:PMU:SARB:SEQ:MEAS:TYPE (on page 7-44)
:PMU:SARB:SEQ:MEAS:TYPE:ADD (on page 7-45)
:PMU:SARB:SEQ:SSR (on page 7-46)
:PMU:SARB:SEQ:SSR:ADD (on page 7-47)
:PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STARTV:ADD (on page 7-49) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SARB:SEQ:STOPV:ADD (on page 7-51) :PMU:SARB:SEQ:TIME (on page 7-52) :PMU:SARB:SEQ:TIME:ADD (on page 7-53) :PMU:SARB:SEQ:TRIG (on page 7-54)
:PMU:SARB:SEQ:TRIG:ADD (on page 7-55) :PMU:SARB:WFM:SEQ:LIST (on page 7-56) :PMU:SARB:WFM:SEQ:LIST:ADD (on page 7-57)

Brief description
Defines an array of start measurement times for a Segment Arb waveform pulse-measure sequence on the specified channel.
Adds an array of start measurement times for a Segment Arb waveform pulse-measure on the specified pulse channel.
Defines an array of stop measurement times for a Segment Arb waveform pulse-measure sequence on the specified channel.
Adds an additional array of stop measurement times for a Segment Arb waveform pulse-measure sequence on the specified pulse channel.
Defines an array of measure types for a Segment Arb waveform pulse-measure sequence for the specified pulse channel.
Adds an array of measure types for a Segment Arb waveform pulse-measure sequence on the specified pulse channel.
Defines an array of values to control the high endurance output relay (HEOR) for a Segment Arb sequence on the specified pulse channel.
Adds an array of values to control the high endurance output relay (HEOR) for a Segment Arb sequence on the specified channel.
Defines an array of start voltage levels for a Segment Arb sequence on the specified pulse channel.
Adds an array of start voltage levels to a Segment Arb sequence on the specified pulse channel.
Defines an array of stop voltage levels for a Segment Arb sequence on the specified pulse channel.
Adds an array of stop voltage levels to a Segment Arb waveform sequence for the specified pulse channel.
Defines an array of segment times for a Segment Arb waveform sequence on the specified pulse channel.
Adds an array of segment times for a Segment Arb sequence on the specified pulse channel.
Defines an array of trigger values for the trigger output of a Segment Arb sequence for the specified pulse channel.
Array of trigger values for the trigger output of a Segment Arb for the specified pulse channel.
Defines the Segment Arb waveform pulse-measure sequence list for the specified pulse channel.
Adds values to the Segment Arb waveform pulse-measure sequence list for the specified pulse channel.

4200A-KXCI-907-01 Rev. D May 2024

7-39

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:MEAS:START
This command defines an array of start measurement times for a Segment Arb waveform pulse-measure sequence on the specified channel.

Instruments PMU

Affected by :PMU:SARB:SEQ:MEAS:STOP

Default value 0

Usage

:PMU:SARB:SEQ:MEAS:START ch, seq, val1, val2, ..., valN

ch
seq val1 val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Start measurement time in seconds with 10 ns resolution
Start measurement time in seconds with 10 ns resolution
Start measurement time in seconds with 10 ns resolution; N is limited to 128

Details

To start measuring at the beginning of a segment, set the start time to 0. If you do not send this command, the start time is set to 0 for all segments.

The segment value in this array cannot be higher than corresponding value in the :PMU:SARB:SEQ:MEAS:STOP array or the corresponding value in the :PMU:SARB:SEQ:TIME array.

If you call this command more than once, the previous values are overwritten.

If you need to send more than 128 values, you can append additional values by sending the :PMU:SARB:SEQ:MEAS:START:ADD command with the same sequence number.

If :PMU:SARB:SEQ:MEAS:TYPE is set to 0 (no measurements), :PMU:SARB:SEQ:MEAS:START has no effect.

For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example

Also see

:PMU:SARB:SEQ:MEAS:START 1, 1, 0, 0, 0, 0, 0 Defines an array of start measurement times for sequence 1 on channel 1.
:PMU:SARB:SEQ:MEAS:START:ADD (on page 7-41) :PMU:SARB:SEQ:MEAS:STOP (on page 7-42) :PMU:SARB:SEQ:MEAS:TYPE (on page 7-44) :PMU:SARB:SEQ:TIME (on page 7-52)

7-40

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:MEAS:START:ADD
This command adds an array of start measurement times for a Segment Arb waveform pulse-measure on the specified pulse channel.

Instruments PMU

Affected by :PMU:SARB:SEQ:MEAS:STOP

Default value 0

Usage

:PMU:SARB:SEQ:MEAS:START:ADD ch, seq, val1, val2, ..., valN

ch
seq val1 val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Start measurement time in seconds with 10 ns resolution
Start measurement time in seconds with 10 ns resolution
Start measurement time in seconds with 10 ns resolution; N is limited to 128

Details

This command allows you to send more than 128 start measurement times using the same sequence number.

To start measuring at the beginning of a segment, set the start time to 0.

This command appends values to the sequence list.

If :PMU:SARB:SEQ:MEAS:TYPE is set to 0 (no measurements), :PMU:SARB:SEQ:MEAS:START has no effect.

Example

Also see

:PMU:SARB:SEQ:MEAS:START:ADD 1, 1, 0, 0, 0, 0, 0 Adds an array of start measurement times to sequence 1 on channel 1.
:PMU:SARB:SEQ:MEAS:START (on page 7-40) :PMU:SARB:SEQ:MEAS:STOP (on page 7-42) :PMU:SARB:SEQ:MEAS:TYPE (on page 7-44) :PMU:SARB:SEQ:TIME (on page 7-52)

4200A-KXCI-907-01 Rev. D May 2024

7-41

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:MEAS:STOP
This command defines an array of stop measurement times for a Segment Arb waveform pulse-measure sequence on the specified channel.

Instruments PMU

Affected by
*RST :PMU:INIT :PMU:SARB:SEQ:MEAS:START

Default value Segment length set by :PMU:SARB:SEQ:TIME

Usage

:PMU:SARB:SEQ:MEAS:STOP ch, seq, val1, val2, ..., valN

ch
seq val1 val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Stop measurement time in seconds with 10 ns resolution
Stop measurement time in seconds with 10 ns resolution
Stop measurement time in seconds with 10 ns resolution; N is limited to 128

Details

This is the elapsed time within the segment when the measurement stops.

The measurement stop time must be after the measurement start time unless the start and stop time are both 0. The measurement stop time must be less than or equal to the time of the segment specified by the :PMU:SARB:SEQ:TIME command.

If you call this command more than once, the previous values are overwritten.

For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example

Also see

:PMU:SARB:SEQ:MEAS:STOP 1, 1, 1e-5, 1e-6, 1e-5, 1e-6, 1e-6 Creates an array of stop measurement times for sequence 1 on channel 1.
:PMU:SARB:SEQ:MEAS:START (on page 7-40) :PMU:SARB:SEQ:MEAS:STOP:ADD (on page 7-43) :PMU:SARB:SEQ:MEAS:TYPE (on page 7-44) :PMU:SARB:SEQ:TIME (on page 7-52)

7-42

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:MEAS:STOP:ADD
This command adds an additional array of stop measurement times for a Segment Arb waveform pulse-measure sequence on the specified pulse channel.

Instruments PMU

Affected by
*RST :PMU:INIT :PMU:SARB:SEQ:MEAS:START

Default value Segment length set by :PMU:SARB:SEQ:TIME

Usage

:PMU:SARB:SEQ:MEAS:STOP:ADD ch, seq, val1, val2, ..., valN

ch
seq val1 val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Stop measurement time in seconds with 10 ns resolution
Stop measurement time in seconds with 10 ns resolution
Stop measurement time in seconds with 10 ns resolution; N is limited to 128

Details

This is the elapsed time within the segment when the measurement stops.

The measurement stop time must be after the measurement start time unless the start and stop time are both 0. The measurement stop time must also be less than or equal to the time of the segment specified by the :PMU:SARB:SEQ:TIME command.

This command appends values to the sequence list.

Example

Also see

PMU:SARB:SEQ:MEAS:STOP 1, 1, 1e-5, 1e-6 Adds an array of stop measurement times to sequence 1 on channel 1.
:PMU:SARB:SEQ:MEAS:START (on page 7-40) :PMU:SARB:SEQ:MEAS:STOP:ADD (on page 7-43) :PMU:SARB:SEQ:MEAS:TYPE (on page 7-44) :PMU:SARB:SEQ:TIME (on page 7-52)

4200A-KXCI-907-01 Rev. D May 2024

7-43

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:MEAS:TYPE
This command defines an array of measure types for a Segment Arb waveform pulse-measure sequence for the specified pulse channel.

Instruments PMU

Affected by Not applicable

Default value 0 (no measurements)

Usage

:PMU:SARB:SEQ:MEAS:TYPE ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

An array of measure modes:
 No measurements for this segment: 0  Spot mean discrete: 1  Waveform discrete: 2  Spot mean average: 3  Waveform average: 4
An array of measure modes:
 No measurements for this segment: 0  Spot mean discrete: 1  Waveform discrete: 2  Spot mean average: 3  Waveform average: 4
A comma-separated list of measure mode values; N is limited to 128

Details

If you call this command more than once, the previous values are overwritten.

Each segment can use a different type of measurement.

For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example

Also see

:PMU:SARB:SEQ:MEAS:TYPE 1, 1, 2, 0, 2, 0, 3 Defines the measure types for channel 1, sequence 1 to be waveform discrete, no measurements, waveform discrete, no measurements, then spot mean average.
:PMU:SARB:SEQ:MEAS:START (on page 7-40) :PMU:SARB:SEQ:MEAS:STOP (on page 7-42) :PMU:SARB:SEQ:MEAS:TYPE:ADD (on page 7-45)

7-44

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:MEAS:TYPE:ADD
This command adds an array of measure types for a Segment Arb waveform pulse-measure sequence on the specified pulse channel.

Instruments PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:MEAS:TYPE ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

An array of measure modes:
 No measurements for this segment: 0  Spot mean discrete: 1  Waveform discrete: 2  Spot mean average: 3  Waveform average: 4
An array of measure modes:
 No measurements for this segment: 0  Spot mean discrete: 1  Waveform discrete: 2  Spot mean average: 3  Waveform average: 4
A comma-separated list of measure mode values; N is limited to 128

Details

This command appends values to the sequence list. Each segment can use a different type of measurement.

Example

Also see

:PMU:SARB:SEQ:MEAS:TYPE 1, 1, 2, 0, 2, 0, 3 Adds the measure types waveform discrete, no measurements, waveform discrete, no measurements, then spot mean average for channel 1, sequence 1 .
:PMU:SARB:SEQ:MEAS:TYPE (on page 7-44)

4200A-KXCI-907-01 Rev. D May 2024

7-45

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:SSR
This command defines an array of values to control the high endurance output relay (HEOR) for a Segment Arb sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value 1 (closed)

Usage

:PMU:SARB:SEQ:SSR ch, seq, val1, val2, ..., valN

ch seq val1
val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Open: 0 Closed: 1
Open): 0 Closed: 1 Open: 0 Closed: 1 N is limited to 128

Details

If you call this command more than once, the previous values are overwritten.

Each output channel of a pulse card has a high-speed, solid-state output relay. When this relay is closed, the waveform segment is output. When opened, the channel output is electrically isolated (floating) from the DUT. The minimum time for a segment with a relay transition (open-to-close or close-to-open) is 25 µs.

For more information on the output relay, refer to "PMU block diagram" in the Model 4200A-SCS Pulse Card (PGU and PMU) User's Manual.

Example

Also see

:PMU:SARB:SEQ:SSR 1, 2, 1, 1, 1, 1, 1 Defines an array of relay settings that closes the relay for all segments of sequence 2 on channel 1.
:PMU:SARB:SEQ:SSR:ADD (on page 7-47)

7-46

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:SSR:ADD
This command adds an array of values to control the high endurance output relay (HEOR) for a Segment Arb sequence on the specified channel.

Instruments
PGU PMU

Affected by Not applicable

Default value 1 (closed)

Usage

:PMU:SARB:SEQ:SSR:ADD ch, seq, val1, val2, ..., valN

ch seq val1
val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
Open: 0 Closed: 1
Open: 0 Closed: 1 Open: 0 Closed: 1 N is limited to 128

Details

This command appends values to the sequence list.

Example

Also see

:PMU:SARB:SEQ:SSR:ADD 1, 2, 1, 1, 1, 1, 1 Adds an array of relay settings that close the relay for all segments in sequence 1 on channel 1.
:PMU:SARB:SEQ:SSR (on page 7-46)

4200A-KXCI-907-01 Rev. D May 2024

7-47

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:STARTV
This command defines an array of start voltage levels for a Segment Arb sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by :PMU:SOURCE:RANGE

Default value Not applicable

Usage

:PMU:SARB:SEQ:STARTV ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range); N is limited to 128

Details

The voltages of all segment transitions in a sequence must be seamless. Seamless means that there are no voltage differences: The stop voltage in a segment must equal the start voltage of the next segment.

If you call this command more than once, the previous values are overwritten.

Example

Also see

:PMU:SARB:SEQ:STARTV 1, 1, 0, 0.1, 0.2, 0.3, 0.4 Defines an array of start voltage levels for sequence 1 of channel 1.
:PMU:SARB:SEQ:STARTV:ADD (on page 7-49) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SOURCE:RANGE (on page 7-24)

7-48

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:STARTV:ADD
This command adds an array of start voltage levels to a Segment Arb sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by :PMU:SOURCE:RANGE

Default value Not applicable

Usage

:PMU:SARB:SEQ:STARTV:ADD ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range); N is limited to 128

Details

The voltages of all segment transitions in a sequence must be seamless. Seamless means that there are no voltage differences: The stop voltage in a segment must equal the start voltage of the next segment.

This command appends values to the sequence list.

Example

Also see

:PMU:SARB:SEQ:STARTV:ADD 1, 1, 0, 0.1, 0.2, 0.3, 0.4 Adds an array of start voltage levels for sequence 1 of channel 1.
:PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SOURCE:RANGE (on page 7-24)

4200A-KXCI-907-01 Rev. D May 2024

7-49

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:STOPV
This command defines an array of stop voltage levels for a Segment Arb sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:STOPV ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range); N is limited to 128

Details

The voltages of all segment transitions in a sequence must be seamless. Seamless means that there are no voltage differences: The stop voltage in a segment must equal the start voltage of the next segment.

If you call this command more than once, the previous values are overwritten.

For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example

Also see

:PMU:SARB:SEQ:STOPV 1, 1, 0.1, 0.2, 0.3, 0.4, 0 Defines an array of stop voltages for sequence 1 of channel 1.
:PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STOPV:ADD (on page 7-51) :PMU:SOURCE:RANGE (on page 7-24)

7-50

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:STOPV:ADD
This command adds an array of stop voltage levels to a Segment Arb waveform sequence for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:STOPV:ADD ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range)
Voltage level; an array of double values in voltage: -40 to 40 or -10 to 10 (limited by source range); N is limited to 128

Details

The voltages of all segment transitions in a sequence must be seamless. Seamless means that there are no voltage differences: The stop voltage in a segment must equal the start voltage of the next segment.

This command appends values to the sequence list.

Example

:PMU:SARB:SEQ:STOPV:ADD 1, 1, 0.1, 0.2, 0.3, 0.4, 0 Adds an array of stop voltages to sequence 1 of channel 1.

Also see

:PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SOURCE:RANGE (on page 7-24)

4200A-KXCI-907-01 Rev. D May 2024

7-51

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:TIME
This command defines an array of segment times for a Segment Arb waveform sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:TIME ch, seq, val1, val2, ..., valN

ch seq val1 val2 valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Segment Arb sequence number: 1 to 512
Segment time; an array of double values in seconds with 10 ns resolution: 0.00000002 to 1
Segment time; an array of double values in seconds with 10 ns resolution; 20 ns minimum Segment time; an array of double values in seconds with 10 ns resolution; 20 ns minimum; N is limited to 128 Segment time limits in seconds:
 PGU 10 V: 10e-9 to 1.0 (10 ns to 1 s)  PMU 10 V: 20e-9 to 1.0 (20 ns to 1 s)  40 V: 50e-9 to 1.0 (50 ns to 1 s)

Details

If you call this command more than once, the previous values are overwritten.

For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example

Also see

:PMU:SARB:SEQ:TIME 1, 1, 50e-9, 100e-9, 20e-9, 150e-9, 50e-9, 500e-9, 130e-9 Defines an array of segment times for sequence 1 on channel 1.
:PMU:SARB:SEQ:MEAS:START (on page 7-40) :PMU:SARB:SEQ:MEAS:STOP (on page 7-42) :PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SARB:SEQ:TIME:ADD (on page 7-53)

7-52

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:TIME:ADD
This command adds an array of segment times for a Segment Arb sequence on the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:TIME:ADD ch, seq, val1, val2, ..., valN

ch

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

seq

Segment Arb sequence number: 1 to 512

val1 val2 valN

Segment time; an array of double values in seconds with 10 ns resolution: 0.00000002 to 1
Segment time; an array of double values in seconds with 10 ns resolution; 20 ns minimum
Segment time; an array of double values in seconds with 10 ns resolution; 20 ns minimum; N is limited to 128

Details

This command appends values to the sequence list.

Example

:PMU:SARB:SEQ:TIME 1, 1, 50e-9, 100e-9, 20e-9, 150e-9, 50e-9, 500e-9, 130e-9 Adds an array of segment times to sequence 1 on channel 1.

Also see

:PMU:SARB:SEQ:STARTV (on page 7-48) :PMU:SARB:SEQ:STOPV (on page 7-50) :PMU:SARB:SEQ:TIME (on page 7-52)

4200A-KXCI-907-01 Rev. D May 2024

7-53

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:SEQ:TRIG
This command defines an array of trigger values for the trigger output of a Segment Arb sequence for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value 1 (trigger high)

Usage

:PMU:SARB:SEQ:TRIG ch, seq, val1, val2, ..., valN

ch seq val1
val2
valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
N is limited to 128

Details

If you call this command more than once, the previous values are overwritten.

Example

Also see

:PMU:SARB:SEQ:TRIG 1, 2, 1, 1, 1, 1, 1 Defines an array of trigger settings that sets the trigger high for all segments of sequence 2 on channel 1.
:PMU:SARB:SEQ:TRIG:ADD (on page 7-55)

7-54

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:SEQ:TRIG:ADD
This command adds an array of trigger values for the trigger output of a Segment Arb for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:SEQ:TRIG:ADD ch, seq, val1, val2, ..., valN

ch seq val1
val2
valN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
An array of trigger values (for trigger output only):
 Trigger low: 0  Trigger high: 1
N is limited to 128

Details

This command appends values to the sequence list.

Example

Also see

:PMU:SARB:SEQ:TRIG:ADD 1, 2, 1, 1, 1, 1, 1 Adds an array of trigger settings that sets the trigger high for all segments of sequence 2 on channel 1.
:PMU:SARB:SEQ:TRIG (on page 7-54)

4200A-KXCI-907-01 Rev. D May 2024

7-55

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

:PMU:SARB:WFM:SEQ:LIST
This command defines the Segment Arb waveform pulse-measure sequence list for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:WFM:SEQ:LIST ch, seq1, loop1, ..., seqN, loopN

ch seq1

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Segment Arb sequence number: 1 to 512; must already be defined

loop1

Number of times to output a sequence; loop value range is 1 to 1E12

seqN

Segment Arb sequence number: 1 to 512; must already be defined

loopN

Number of times to output a sequence; loop value range is 1 to 1E12

Details

:PMU:SARB:WFM:SEQ:LIST requires that the sequence number already exists. You must create the sequences before you can use them in a sequence list.
If you call this command more than once, the previous values are overwritten.
For a detailed example that uses this command, refer to Programming example for Segment Arb (on page 7-57).

Example Also see

:PMU:SARB:WFM:SEQ:LIST 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 3 Defines a waveform sequence list for sequences 1 and 2 of channel 1.
:PMU:SARB:WFM:SEQ:LIST:ADD (on page 7-57)

7-56

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

:PMU:SARB:WFM:SEQ:LIST:ADD
This command adds values to the Segment Arb waveform pulse-measure sequence list for the specified pulse channel.

Instruments
PGU PMU

Affected by Not applicable

Default value Not applicable

Usage

:PMU:SARB:WFM:SEQ:LIST:ADD ch, seq1, loop1, ... seqN, loopN

ch
seq1 loop1 seqN loopN

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system Segment Arb sequence number: 1 to 512 Number of times to output a sequence; loop value range is 1 to 1E12 Segment Arb sequence number: 1 to 512 Number of times to output a sequence; loop value range is 1 to 1E12

Details

This command appends values to the sequence list.

Example

Also see

:PMU:SARB:WFM:SEQ:LIST 1, 1, 1, 2, 1, 1, 1, 2, 2, 1, 1, 2, 3 Adds a waveform sequence list for sequences 1 and 2 of channel 1.
:PMU:SARB:WFM:SEQ:LIST (on page 7-56)

Programming example for Segment Arb
The following programming example uses the Python programming language to demonstrate how to assemble the KXCI PGU and PMU commands to generate Segment Arb waveforms using a 4225-PMU with 4225-RPMs. This test outputs a 1 V sequence with configured rise and fall times on channel 1.
To run this script, you need to download Instrcomm.py from the following link and store it in the same folder as your active Python file.
A more detailed version of this example code is available at https://github.com/tektronix/keithley/tree/main/Instrument_Examples/Model_4200A/KXCI_Examples.
from instrcomms import Communications import time
#Instrument resource string obtained from NI MAX. INST_RESOURCE_STR = "TCPIP0::XXX.XX.XX.XXX::1225::SOCKET"

4200A-KXCI-907-01 Rev. D May 2024

7-57

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

#Open the resource manager in PyVISA with the corresponding instrument resource string. my4200 = Communications(INST_RESOURCE_STR) #Open connections to the 4200A-SCS. my4200.connect() #Set PyVISA write terminator. my4200._instrument_object.write_termination = "\0" #Set PyVISA read terminator. my4200._instrument_object.read_termination = "\0"
#Initialize to Segment ARB mode. my4200.query(":PMU:INIT 1") #Configure the RPM input for channel 1. my4200.query(":PMU:RPM:CONFIGURE PMU1-1, 0") #Set to a 200 mA fixed current range. my4200.query(":PMU:MEASURE:RANGE 1, 2, 0.2") #Array of starting voltages. my4200.query(":PMU:SARB:SEQ:STARTV 1, 1, 0, 1, 1, 1.5, 1.5, 0, 0") #Array of stopping voltages. my4200.query(":PMU:SARB:SEQ:STOPV 1, 1, 1, 1, 1.5, 1.5, 0, 0, 0") #Array of sequence times. my4200.query(":PMU:SARB:SEQ:TIME 1, 1, 50e-9, 100e-9, 20e-9, 150e-9, 50e-9, 500e-9,
130e-9") #Array of measure types, 1 = pulse IV. my4200.query(":PMU:SARB:SEQ:MEAS:TYPE 1, 1, 0, 1, 0, 1, 0, 0, 0") #Array of start measure times. my4200.query(":PMU:SARB:SEQ:MEAS:START 1, 1, 0, 25e-9, 0, 50e-9, 0, 0, 0") #Array of stop measure times. my4200.query(":PMU:SARB:SEQ:MEAS:STOP 1, 1, 0, 75e-9, 0, 100e-9, 0, 0, 0") #Sequence list, loop 1 time. my4200.query(":PMU:SARB:WFM:SEQ:LIST 1, 1, 1") #Turn on the output. my4200.query(":PMU:OUTPUT:STATE 1, 1")
#Execute the test. my4200.query(":PMU:EXECUTE") #Continue looping until the test is complete. while True: #Return 1 if it is running, 0 if it is complete.
status = my4200.query(":PMU:TEST:STATUS?") if int(status) == 0:
print("Measurement Complete.") break #Print the status to the terminal. print(f"Status: {status}") #Sleep for 1 second in between checks. time.sleep(1)
#Get the total number of points. print(my4200.query(":PMU:DATA:COUNT? 1")) #Get all data from channel 1. response = my4200.query(":PMU:DATA:GET 1") #Print the response to the console. print("Response from 4200A: ", response) #Turn off the output. my4200.query(":PMU:OUTPUT:STATE 1, 0") #Close communications with the 4200A-SCS. my4200.disconnect()

7-58

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

KXCI pulse commands for Clarius versions v1.12 and earlier
The following command descriptions are for the KXCI commands that were available in Clarius+ versions 1.12 and earlier. These commands provide pulse control for PGUs and PMUs, but they do not include measurement functionality.

These commands are available in versions 1.13 and later, but cannot be used with the updated commands. Links to the equivalent updated commands are provided in the description of each command to help you convert code for use with the updated commands.

There are no two-letter KXCI commands for pulse with measure. To control pulse with measure remotely, you can call Keithley User Library Tool (KULT) user libraries in KXCI. Refer to Calling KULT user libraries remotely (on page 4-6) for details. You can also use the PGU and PMU KXCI commands introduced in Clarius+ version 1.13, listed in Summary of KXCI PGU and PMU commands (on page 7-3).
The following documentation includes the corresponding Linear Parametric Test Library (LPT) functions for each KXCI command string. Refer to "LPT commands for PGUs and PMUs" in Model 4200A-SCS LPT Library Programming for details on pulsing functions.

Summary of KXCI PGU commands
This is a summary of the KXCI pulse commands that available in versions before 1.12.

Command PA (on page 7-60) PD (on page 7-60) PE (on page 7-61) PG (on page 7-61)
PH (on page 7-62) PN (on page 7-63) PO (on page 7-64)
PS (on page 7-64) PT (on page 7-65)
PV (on page 7-66)
RP (on page 7-67) TO (on page 7-68)
TS (on page 7-69) VF (on page 7-70)

Brief description
Aborts the process that is presently running on the specified pulse channel. Sets the device under test (DUT) impedance (pulse load) for the specified channel. Starts a configured pulse test. Sets the trigger mode and either initiates the start of pulse output or arms the pulse card for the specified channel. Stops all pulse output from the pulse card. Configures the pulse of the pulse channel. Sets the output state (on or off) and mode (normal or complement) independently for each channel. Resets both channels of the specified pulse card to the default settings. Sets the pulse period, pulse width, pulse rise time, pulse fall time, and pulse delay for the specified pulse channel. Sets pulse high, pulse low, range, and current limit independently for each channel of the specified pulse card. Switches the RPM output between the PGUs, PMUs, CVUs, and SMUs. Sets the trigger output parameters for pulse delay and trigger polarity for the specified channel. Sets the trigger source that is used to trigger the pulse card to start its output. Sets the state of the floating relay for the specified pulse channel.

4200A-KXCI-907-01 Rev. D May 2024

7-59

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

PA

This command aborts the process that is presently running on the specified pulse channel.

Usage

PA A

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

Corresponding LPT library function

None

Example

PA 2 This command string aborts the process running on channel 2 of pulse card 1.

Also see

:PMU:ABORT (on page 7-4)

PD

This command sets the device under test (DUT) impedance (pulse load) for the specified channel.

Usage

PD A, BBB.BBBB A
BBB.BBBB

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse load, in ohms: 1.0 to 10e6; default 50.0

Corresponding LPT library function pulse_load

Details

You can use this command to set the device under test (DUT) impedance of the load (DUT) independently for each channel from 1  to 10 M.

Example

PD 1, 1e3 This command string sets channel 1 of pulse card 1 for an output impedance of 1 k.

Also see

:PMU:LOAD (on page 7-11)

7-60

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

PE
This command starts a configured pulse test. Usage
PE Corresponding LPT library functions
pulse_exec Details

This command is used with the PN command, which configures the magnitude and timing of the pulse.

This is a blocking command. No other commands will execute until the pulse output is complete.

To generate an output, a trigger source (TS) must be set.

Example

Also see

PN 1, 0.0, 5.0, 10, 100e-6, 20e-6, 200e-9, 200e-9 TS 1, 0 PO 1, 1, 0 PE Set channel 1 of the pulse card for a pulse train with a 5 V amplitude, 100 s period, 20 s width, and 200 ns rise and fall times. This pulse outputs 10 times. Set the trigger source of channel 1 to be software triggered. Set the output state of channel 1 to on with an output mode of normal. Start execution.
PN (on page 7-63) TS (on page 7-69) :PMU:EXECUTE (on page 7-9)

PG

This command sets the trigger mode and either initiates the start of pulse output or arms the pulse card for the specified channel.

Usage

PG A, B, C A
B

C

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Trigger mode:
 Burst: 0  Continuous: 1 (default)  Trigger burst: 2
Burst or trigger burst only: Pulse count in number of pulses: 1 to 232-1; set to 1 for continuous (default)

4200A-KXCI-907-01 Rev. D May 2024

7-61

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Corresponding LPT library functions
pulse_trig pulse_burst_count

Details

The trigger mode setting affects both channels of a pulse card. For example, setting channel 1 of pulse card 1 to continuous also sets channel 2 to continuous.

This command is used with the PV and PT commands, which configure the magnitude and timing of the pulse.

Example

Also see

PT 1, 100e-6, 20e-6, 200e-9, 200e-9 PV 1, 2, -2, 5, 200e-3 PG 1, 2, 50 For pulse card 1 channel 1, set the pulse period of pulse card 1 to 100 s and set channel 1 for a pulse width of 20 s and rise and fall times for 200 ns. Set pulse high to +2 V, pulse low to -2 V, pulse range to 5 V, and current limit to 200 mA. Set the channel for the trigger burst trigger mode and a burst count of 50.
PT (on page 7-65) PV (on page 7-66) :PMU:PULSE:BURST:COUNT (on page 7-17)

PH

This command stops all pulse output from the pulse card.

Usage

PH A

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

Corresponding LPT library functions

pulse_halt

Example

Also see

PH 2 This command string stops pulse output from pulse card 2.
:PMU:ABORT (on page 7-4)

7-62

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

PN

This command configures the pulse of the pulse channel.

Usage

PN A, BBB.BBBB, CCC.CCCC, DDD.DDDD, EEE.EEEE, FFF.FFFF, GGG.GGGG, HHH.HHHH PN A, BBB.BBBB, CCC.CCCC, DDD.DDDD, EEE.EEEE, FFF.FFFF, GGG.GGGG, HHH.HHHH, JJJ.JJJJ

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

B

Voltage level for pulse base level

C

Voltage level for pulse amplitude

D

Pulse trigger count

E

Pulse period in seconds: 20e-9 to 1

F

Pulse width in seconds: Minimum of 10e-9; see Details

G

Pulse rise time in seconds: 10e-9 to 3.3e-2

H

Pulse fall time in seconds: 10e-9 to 3.3e-2

J

Pulse delay time in seconds; default is 0; must be more than:

E - F - 0.5(G + H)

Corresponding LPT library function

pulse_train pulse_source_timing

Details

You can use this command to set up a pulse train to output on the pulse channel.

The Pulse Width (parameter F) must be less than the pulse period and more than 0.5(G + H).

Example

Also see

PN 1, 0.0, 5.0, 10, 100e-6, 20e-6, 200e-9, 200e-9 TS 1, 0 PO 1, 1, 0 PE Set channel 1 of the pulse card for a pulse train with a 5 V amplitude, 100 s period, 20 s width, and 200 ns rise and fall times. This pulse outputs 10 times. Set the trigger source of channel 1 to be software triggered. Set the output state of channel 1 to on with an output mode of normal. Start execution.
:PMU:PULSE:BURST:COUNT (on page 7-17) :PMU:PULSE:TIMES (on page 7-18) :PMU:PULSE:TRAIN (on page 7-21)

4200A-KXCI-907-01 Rev. D May 2024

7-63

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

PO

This command sets the output state (on or off) and mode (normal or complement) independently for each channel.

Usage

PO A, B, C

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

B

Output state:

 Off: 0 (default)

 On: 1

C

Output mode:

 Normal: 0 (default)

 Complement: 1

Corresponding LPT library functions

pulse_output pulse_output_mode

Example

Also see

PO 1, 1, 1 This command string turns on channel 1 of pulse card 1 and selects complement pulse output mode.
:PMU:OUTPUT:STATE (on page 7-16)

PS

This command resets both channels of the specified pulse card to the default settings.

Usage

PS A

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

Corresponding LPT library functions

pulse_init

Example

Also see

PS 2 This command string resets pulse card 2.
:PMU:INIT (on page 7-9)

7-64

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

PT

This command sets the pulse period, pulse width, pulse rise time, pulse fall time, and pulse delay for the specified pulse channel.

Usage

PT A, BBB.BBBB, CCC.CCCC, DDD.DDDD, EEE.EEEE

A BBB.BBBB CCC.CCCC DDD.DDDD EEE.EEEE

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse period in seconds (floating-point number):
 5 V range: 10e-9 to 1  20 V range: 500e-9 to 1  Default: 1e-6
Pulse width in seconds (floating-point number):
 High speed: 10e-9 to (Period - 10e-9)  High voltage: 250e-9 to (Period - 10e-9)  Default: 500e-9
Rise time in seconds (floating-point number):
 High speed: 10e-9 to 33e-3  High voltage: 50e-9 to 33e-3  Default: 100e-9
Fall time in seconds (floating-point number):
 High speed: 10e-9 to 33e-3  High voltage: 50e-9 to 33e-3  Default: 100e-9

Corresponding LPT library functions

pulse_period pulse_width pulse_rise pulse_fall

Details

The pulse period setting affects both channels of a pulse card. For example, setting channel 1 of pulse card 1 to 100 ms also sets the pulse period of channel 2 to 100 ms. For the other timing parameters (pulse width and rise and fall times), each available channel can have its own setting.

The minimum transition time for pulse source only (no measurement) on the rise-time high voltage for the 40 V range is 50 ns for the 4225-PMU and 4220-PGU.

4200A-KXCI-907-01 Rev. D May 2024

7-65

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

PS 1 PD 1, 1e6 PT 1, 100e-6, 50e-6, 1e-6, 1e-6 PV 1, 2, 0, 5, 0.01 TS 1, 0 PO 1, 1, 0 PG 1, 0, 5 PO 1, 0, 0
Reset the PMU. Set the output impedance to 1,000,000. Set the timing parameters to a pulse period of 100e-6, pulse width of 50e-6, rise time of 1e-6, and fall time to 1e-6. Set the voltage source and current limit to pulse high of 2 V, pulse low of 0 V, pulse range of 5 V, and current limit of 0.01. Select the software trigger source. Set the output on in normal mode. Set the trigger mode to burst for 5 pulses. Set the output off in normal mode.
:PMU:PULSE:TIMES (on page 7-18)

PV

This command sets pulse high, pulse low, range, and current limit independently for each channel of the specified pulse card.

Usage

PV A, BBB.BBBB, CCC.CCCC, DDD.DDDD, EEE.EEEE

A BBB.BBBB CCC.CCCC DDD.DDDD EEE.EEEE

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse high in volts:
 5 V range (high speed): -5.0 to +5.0  20 V range (high voltage): -20.0 to +20.0  Default: 0.0
Pulse low in volts
 5 V range (high speed): -5.0 to +5.0  20 V range (high voltage): -20.0 to +20.0  Default: 0.0
Pulse range in volts
 5 V range: 5  20 V range: 20  Default: 5
Current limit in amperes (range and load dependent)
 5 V range (high speed): -0.2 to +0.2  20 V range (high voltage): -0.8 to +0.8  Default (5 V range): 0.105

7-66

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

Corresponding LPT library functions
pulse_vhigh pulse_vlow pulse_range pulse_current_limit

Example

Also see

PV 1, 2, -2, 5, 200e-3 For pulse card 1 channel 1, this command string sets pulse high to +2 V, pulse low to -2 V, pulse range to 5 V, and current limit to 200 mA.
None

RP

This command switches the RPM output between the PGUs, PMUs, CVUs, and SMUs.

Usage

RP HRID, mode

HRID mode

The instrument and channel (N is the card index, 1 to 9):
 PMUN-1, PMUN-2  SMUN  CVHN or CVLN
The mode index number:
 Pulse: 0  CV 2W: 1  SMU: 2  CV_4W: 3

Corresponding LPT library function

rpm_config

Details

In addition to the connection to the PMU, the 4225-RPM includes input connections for the following instruments:
· SMUs: 4200-SMU, 4201-SMU, 4210-SMU, or 4211-SMU · CVUs: 4210-CVU or 4215-CVU

Use this command to control switching inside the RPM to connect the PMU, CVU, or SMU to the output.

If there is no RPM connected to the PMU channel, the RP command will not cause an error.

4200A-KXCI-907-01 Rev. D May 2024

7-67

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

SS RP PMU1-1, 2 SS RP SMU2, 2 RP CVH1, 1 RP CVL1, 1 Set the source setup page. Switch the RPM on channel 1 of PMU1 to SMU (blue LED). Set the source setup page. Switch the RPM connected to SMU2 to SMU (blue LED). Switch each RPM to CVU 2-wire (red LED) for the CVU1 high and CVU1 low connections. At the end of the KXCI test, you should turn the outputs to 0 V on the instrument to which the RPM is connected. This is to reduce the risk of damaging instruments and the DUT. You should also return the RPM setting to pulse.
:PMU:RPM:CONFIGURE (on page 7-22)

TO
This command sets the trigger output parameters for pulse delay and trigger polarity for the specified channel.

Usage

TO A, BBB.BBBB, C A
BBB.BBBB C

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Pulse delay in seconds (default 0.0): 0.0 to (Period - 10e-9)
Trigger polarity
 Negative (falling edge): 0  Positive (rising edge): 1 (default)

Corresponding LPT library functions
pulse_delay pulse_trig_polarity pulse_output

Details

This command sets pulse delay and trigger polarity. The polarity setting affects both channels of a pulse card. For example, setting channel 1 of pulse card 1 to positive trigger polarity to also sets the trigger polarity of channel 2 to positive. For the trigger delay parameter, each available channel can have a unique delay setting.

Example

Also see

TO 1, 2e-6, 1 This command string sets the pulse delay for channel 1 of pulse card 1 to 2 s and selects positive trigger polarity.
None

7-68

4200A-KXCI-907-01 Rev. D May 2024

Model 4200A-SCS KXCI Remote Control Programming

Section 7: KXCI PGU and PMU commands

TS

This command sets the trigger source that is used to trigger the pulse card to start its output.

Usage

TS A, B

A

Pulse-card channel number: 1 to 8; the largest value is the number of channels in

the system

B

Trigger source:

 Software triggered: 0

 External, initial trigger only, rising edge: 1

 External, initial trigger only, falling edge: 2

 External, trigger every pulse, rising edge: 3

 External, trigger every pulse, falling edge: 4

Corresponding LPT library functions

pulse_trig_source

Details

With the software trigger source selected, the PG command selects the trigger mode (continuous, burst, or trigger burst), and initiates the start of pulse output.

Since trigger source is a card-level setting and not a channel setting, using channel 1 or 2 sets the card to the specified source card 1. Similarly, channel 3 or 4 sets the source for card 2.
With an external trigger source selected, the PG command selects the trigger mode and arm pulse output.
The pulse output starts when the required external trigger pulse is applied to the Trigger In connector. There is a trigger-in delay of 560 ns. This is the delay from the trigger-in pulse to the time of the rising edge of the output pulse.
For an initial trigger-only setting, only the first rising or falling trigger pulse starts and controls the pulse output.
For a trigger every pulse setting, rising or falling edge trigger pulses start and control the pulse output. After the initial pulse, the pulse output, either continuous or burst, is output based on the internal pulse generator clock. If pulse-to-pulse synchronization is required over higher count pulse trains, use a trigger every pulse setting.

4200A-KXCI-907-01 Rev. D May 2024

7-69

Section 7: KXCI PGU and PMU commands

Model 4200A-SCS KXCI Remote Control Programming

Example Also see

TS 1, 1 This command string sets the trigger source to channel 1 and external, initial trigger only, rising edge.
PG (on page 7-61)

VF

This command sets the state of the floating relay for the specified pulse channel.

Usage

VF A,B A
B

Pulse-card channel number: 1 to 8; the largest value is the number of channels in the system
Floating relay state:
 Disabled: 0  Enabled: 1

Corresponding LPT library functions

pulse_float

Details

You can use this command to allow the pulse channel to float.

Example

Also see

VF 1, 1 This command string sets channel 1 of the pulse card to enable the floating relay.
None

7-70

4200A-KXCI-907-01 Rev. D May 2024

Specifications are subject to change without notice. All Keithley trademarks and trade names are the property of Keithley Instruments. All other trademarks and trade names are the property of their respective companies.
Keithley Instruments · 28775 Aurora Road · Cleveland, Ohio 44139 · 1-800-833-9200 · tek.com/keithley
04/2022



References

Microsoft Word for Microsoft 365