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
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
DocumentDocumentModel 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