Document Revision 1.0

Introduction to the KtSigGen IVI.NET Instrument Driver

Driver Version: 1.2.1

This instrument driver provides access to the functionality of the Microwave Signal Generator through a .NET API which also complies with the IVI specifications. This driver works in any development environment which supports .NET programming, including Microsoft .NET languages, LabVIEW, LabWindows CVI, MATLAB and others.

For more information on this driver, visit  www.keysight.com/find/M9384B (for M9384B VXG) and  www.keysight.com/find/M9383B (for M9383B VXG-m).

This Introduction document includes the information normally seen in the ReadMe.txt file. It also includes required IVI 2014 introduction and compliance information.

The help file for the IVI.NET (Keysight_KtSigGen_Fx45.chm) driver can be found in the
<Program Files (x86)>\IVI Foundation\IVI\Microsoft.NET\Framework32\v4.5.50709\Keysight.KtSigGen <driver version>\Help directory. It contains:

  • General information about using the driver
  • IVI compliance information
  • Information about using the driver in a variety of development environments including Visual Studio (C#, VB.NET).
  • Example programs

In addition to the .chm files, the driver installs MS Help Viewer driver help (VS2010 or newer) and may optionally install integrated driver help for Visual Studio 2005/2008 (this may increase the install time by several minutes).

Driver Examples and Source Code

C# and VB.NET Driver example programs can be found in the folder: <Program Files (x86)>\IVI Foundation\IVI\Microsoft.NET\Framework32\v4.5.50709\Keysight.KtSigGen <driver version>\Examples. For instructions on building examples, refer to Examples Readme.txt file in the Examples folder.

The IVI.NET driver, if optionally installed, can be found in <Program Files (x86)>\IVI Foundation\IVI\Microsoft.NET\Framework32\v4.5.50709\Keysight.KtSigGen <driver version>\Source. The source code is a Visual Studio 2015 C++ project and may be updated to newer versions of Visual Studio.

Connecting to the Instrument

The driver help topic, Driver Examples, documents programming examples for Visual Studio (C#, VB.NET). Each of these examples illustrates how to connect to an instrument in the respective development environment.

The IVI resources page (http://ivifoundation.org/resources/default.aspx) has documents and videos that explain how to get started with an IVI.NET driver in different development environments:

Configuring Instrument Settings

The KtSigGen instrument driver application programming interface (API) includes methods and properties for setting instrument state variables, as well as methods for controlling the instrument and reading results from the instrument. These are documented in the KtSigGen Driver Reference help topic.

There are two primary API hierarchies that client programs may use to control the instrument. The first one is referred to as the instrument specific hierarchy. This hierarchy can be used to access all of the functionality of the instrument. This hierarchy is available to programs that use one of the driver constructors to instantiate the driver. For more information on using the driver constructors, refer to the information on Direct Driver Instantiation in the IVI.NET Programming Guide > IVI.NET Programming Basics > Instantiating the IVI.NET Driver help topic.

The second hierarchy is the optional IVI Instrument Class compliant hierarchy which supports limited, basic instrument functionality common to most instruments of similar type. If supported, this hierarchy can be used to access the IVI class API for the IviRFSigGen class. To see if this driver supports an IVI Instrument Class, refer to the IVI Compliance Information help topic. This hierarchy is available to programs that use the IVI.NET class factory to instantiate the driver. To access the IviRFSigGen hierarchy from IVI.NET, use the section of the driver documented under KtSigGen Driver Reference > IVI.NET Driver Hierarchy > IIviRFSigGen.

Configuring Driver Settings

IVI instrument drivers implement inherent capabilities including properties that control driver behavior, utility methods, and identifying information. For more information about using the inherent capabilities, refer to KtSigGen Driver Reference > IVI.NET Driver Hierarchy > IIviDriver help topic.

Properties that control driver behavior such as simulation, range checking, and instrument status checking can be enabled/disabled when initializing the driver or by using configuration information in the IVI Configuration Store. For more information, refer to IVI.NET Programming Guide > IVI.NET Programming Basics > Instantiating the IVI.NET Driver help topic.

Direct I/O

IVI instrument drivers for message-based instruments include Read, ReadBytes, Write, and WriteBytes methods, as well as a reference to the underlying I/O, DirectIO, which enable you to perform I/O directly with the instrument. For more information on using these methods and properties, refer to the KtSigGen IVI.NET Driver > IVI.NET Reference > Driver Hierarchy > IKtSigGen > System help topic.

Instrument Command Coverage

IVI instrument drivers for SCPI message-based instruments typically implement the full functionality of the instrument available via the commands and queries with a few exceptions. The help reference topics for each method and property list the instrument command(s) that the driver implements for each function and parameter. SCPI mapping to driver methods and properties may also be found in the Instrument Command Reference help topic.

Some commands and queries are not suitable for an instrument driver. The following commands are NOT implemented in this driver:

  • All commands in the DIAGnostic subsystem
  • All commands in the FORMat subsystem
  • All commands in the SYSTem:COMMunicate subsystem
  • All undocumented SCPI commands
  • Specific commands:
    • :DISPlay:ANNotation:CLOCk[:STATe]?
    • :MEMory:MOVE
    • :MEMory:DATA
    • :INITiate
    • :SERVice[:PRODuction]:PROCessor
    • :STATus:OPERation:BIT{0:15}:CONDition?
    • :STATus:OPERation:BIT{0:15}:ENABle
    • :STATus:OPERation:BIT{0:15}:NTRansition
    • :STATus:OPERation:BIT{0:15}:PTRansition
    • :STATus:OPERation:BIT{0:15}[:EVENt]?
    • :STATus:QUEStionable:BIT{0:15}:CONDition?
    • :STATus:QUEStionable:BIT{0:15}:ENABle
    • :STATus:QUEStionable:BIT{0:15}:NTRansition
    • :STATus:QUEStionable:BIT{0:15}:PTRansition
    • :STATus:QUEStionable:BIT{0:15}[:EVENt]?
    • :STATus:QUEStionable:CALibration:BIT{0:15}:CONDition?
    • :STATus:QUEStionable:CALibration:BIT{0:15}:ENABle
    • :STATus:QUEStionable:CALibration:BIT{0:15}:NTRansition
    • :STATus:QUEStionable:CALibration:BIT{0:15}:PTRansition
    • :STATus:QUEStionable:CALibration:BIT{0:15}[:EVENt]?
    • :STATus:QUEStionable:CALibration:CONDition?
    • :STATus:QUEStionable:CALibration:ENABle
    • :STATus:QUEStionable:CALibration:NTRansition
    • :STATus:QUEStionable:CALibration:PTRansition
    • :STATus:QUEStionable:CALibration[:EVENt]?
    • :SYSTem:ERRor:ALL?
    • :SYSTem:ERRor:CODe[:NEXT]?
    • :SYSTem:ERRor:COUNt?
    • :SYSTem:ERRor:EXTended?
    • :SYSTem:HELP:HEADers?
    • :SYSTem:KLOCk
    • :SYSTem:LANGuage
    • :SYSTem:LOCK:OWNer?
    • :SYSTem:LOCK:RELease
    • :SYSTem:LOCK:REQuest?
    • :SYSTem:LOFF
    • :SYSTem:LWSTation
    • :SYSTem:PASSword:CDISable
    • :SYSTem:PASSword:CENable:STATe?
    • :SYSTem:PASSword:NEW
    • :SYSTem:PASSword[:CENable]
    • :SYSTem:PDOWn
    • :SYSTem:PUP:PROCess
    • :SYSTem:VERSion?
    • [:SOURce]:RADio{1:1}:ARB:MDEStination:ALCHold
    • [:SOURce]:RADio{1:1}:ARB:MDEStination:PULSe
    • [:SOURce]:RADio{1:1}:ARB:TRIGger:TYPE
    • [:SOURce]:RADio{1:1}:ARB:TRIGger[:SOURce]
    • [:SOURce]:RADio{1:1}:ARB:TRIGger[:SOURce]:EXTernal:DELay
    • [:SOURce]:RADio{1:1}:ARB:TRIGger[:SOURce]:EXTernal:SLOPe
    • [:SOURce]:RADio{1:1}:ARB:WAVeform
    • [:SOURce]:RADio{1:1}:ARB[:STATe]
    • [:SOURce]:SCONfigure:OUTPut
    • [:SOURce]:SIGNal{1:16}:SSB:FREQuency
    • [:SOURce]:SIGNal{1:16}:WAVeform:SYNC:POLarity
    • [:SOURce][:RF{1:16}]:CORRection:BLOCk:COUNt?
    • [:SOURce][:RF{1:16}]:FREQuency:FIXed
    • [:SOURce][:RF{1:16}]:HFILter[:STATe]
    • [:SOURce][:RF{1:16}]:POWer:ALC:AUTO
    • [:SOURce][:RF{1:16}]:POWer:ALC:SEARch:REFerence
    • [:SOURce][:RF{1:16}]:POWer:ALC:SEARch:REFerence:LEVel
    • [:SOURce][:RF{1:16}]:PULM:INTernal:FREQuency:STEP[:INCRement]
    • [:SOURce][:RF{1:16}]:PULM:SYNC:DESTination

Driver users can send any commands to a message-based instrument using the Direct I/O functions described above.

Driver Versions

Version 1.2.1 - June 2020

  • Added AWGN support.

  • Added 5GNR support.

Version 1.0 - October 2019

This is the initial release of the KtSigGen driver (version 1.0) for M93834B VXG and M9383B VXG-m Microwave Signal Generators. For future releases of the driver, this page will be updated with the essential information on the features and improvements in each signal generator driver release.

Obtaining the latest Introduction and KtSigGen driver

Obtaining the latest revision of this Introduction: This document is released with a new revision letter whenever any information in this document changes. The revisions to the Introduction are listed in the table below, with the most recent revision listed first.

Date

Revision

Description

June 2020

1.0

First release of the Introduction document for driver version 1.2.1.

To see if a later revision of the Introduction document is available for this driver, perform the following steps:

To see if a later version of this driver is available, perform the following steps:

Supported Hardware and Software

  • M9384B VXG Microwave Signal Generator, 1 MHz - 44 GHz
  • M9383B VXG-m Microwave Signal Generator, 1 MHz - 44 GHz

Supported Firmware Revision

A.03.01

Supported Operating Systems

  • Windows 10 32-bit, 64-bit

Supported Keysight Embedded Controllers

Embedded Controller

Operating System

M9037A

Windows Embedded Standard 7 (64-bit)

Keysight IO Libraries Suite

The IO Libraries Suite must be installed prior to installing the KtSigGen driver. This driver supports the following IO Libraries Suite releases, with the most recent release listed first.

Release Date

Release Version

2020-02-07

18.1.25310.1

2019-07-23

2019 U1

2019-02-02

2019

2018-04-20

2018 Update 1

2018-01-31

2018 Update 0.2

2017-11-15

2018 Update 0.1

Keysight Chassis

This driver supports the following Keysight chassis:

  • M9043A (for M9383B VXG-m Microwave Signal Generator)

Supported Keysight Command Expert Releases

Command Expert can be used to write programs to learn how the signal generator works and to perform simple operations. This driver supports the following Command Expert releases, with the most recent release listed first.

Release Date

Release Version

Comments

2019-03-09

2019

Use of this version is recommended

M9384B VXG and M9383B VXG-m Weight and Dimensions

The table below shows the maximum weight and dimensions of the M9384B VXG and M9383B VXG-m Microwave Signal Generators:

Weight

Height

Width

Length

35 kg

190 mm

445 mm

578 mm

M9384B VXG and M9383B VXG-m Environmental Conditions (Operating)

The table below lists the environmental conditions for the M9384B VXG and M9383B VXG-m Microwave Signal Generators:

Environmental Conditions (Operating)

For indoor use only

Altitude up to:

3000m (9,842.2 ft)

Temperature:

00C to 400C

Humidity:

Maximum Relative Humidity (noncondensing): 95% RH

M9384B VXG and M9383B VXG-m Equipment Ratings

The M9384B VXG and M9383B VXG-m Microwave Signal Generators can operate with mains supply voltage fluctuations up to +10% or -10% of the nominal voltage.

Power Requirements

Voltage and/or range (V)

Frequency and/or range (Hz)

Power in Watts, VA or Current(A)

100/120 VAC

50/60 Hz

1200W Max

220/240 VAC

50/60 Hz

1300W Max

IVI Compliance

This page provides IVI-required compliance information for the KtSigGen driver. IVI Compliance is describes in the IVI Specifications at: http://ivifoundation.org/specifications/default.aspx.

IVI Compliance Category

IVI drivers come in a variety of types and configurations. This section provides IVI-required compliance information on the various categories of IVI compliance for the KtSigGen driver.

IVI Generation

IVI-2014

IVI Instrument Class

IviRFSigGen

Class Specification Version

IVI-4.3 Revision: 2.0

The KtSigGen driver supports the IVI Inherent Capabilities required of all IVI drivers. For detailed information, refer to the KtSigGen driver help file .

Group Capabilities Supported:

iRFSigGenBase

Yes

IviRFSigGenModulateAM

Yes

IviRFSigGenModulateFM

No

IviRFSigGenModulatePM

No

IviRFSigGenAnalogModulationSource

Yes

IviRFSigGenModulatePulse

Yes

IviRFSigGenLFGenerator

No

IviRFSigGenLFGeneratorOutput

No

IviRFSigGenPulseGenerator

No

IviRFSigGenPulseDoubleGenerator

No

IviRFSigGenPulseGeneratorOutput

No

IviRFSigGenSweep

No

IviRFSigGenFrequencySweep

No

IviRFSigGenPowerSweep

No

IviRFSigGenFrequencyStep

No

IviRFSigGenPowerStep

No

IviRFSigGenList

No

IviRFSigGenALC

Yes

IviRFSigGenReferenceOscillator

Yes

IviRFSigGenSoftwareTrigger

Yes

IviRFSigGenModulateIQ

Yes

IviRFSigGenIQImpairment

Yes

IviRFSigGenArbGenerator

No

IviRFSigGenDigitalModulationBase

No

IviRFSigGenCDMABase

No

IviRFSigGenTDMABase

No

Optional Features

This section provides IVI-required information regarding optional IVI driver features supported by the KtSigGen driver.

Interchangeability Checking

No

State Caching

No

Coercion Recording

Yes

Driver Identification

This section provides IVI-required identity information for the KtSigGen driver.

Driver Revision

See driver version listed at top of this page

Driver Vendor

Keysight Technologies

Driver Description

IVI.NET Driver for the M9384B VXG/M9383B VXG-m Microwave Signal Generator

Prefix/Component Identifier

KtSigGen

Supported Models

M9384B, M9383B

Hardware Information

Instrument Manufacturer

Keysight Technologies

Supported Instrument Models

M9384B, M9383B

Supported Bus Interfaces

TCPIP, GPIB, USB

32-bit Software Information

Supported Operating Systems

Windows 10 32-bit

Unsupported Operating Systems

Windows 2000

Support Software Required

VISA.NET

Source Code Availability

Source code included with driver via custom installation option.

64-bit Software Information

Supported Operating Systems

Windows 10 64-bit

Unsupported Operating Systems

Windows Vista 64-bit

Support Software Required

VISA.NET

Source Code Availability

Source code included with driver via custom installation option.

Unit Testing

Test Setup Instrument

Instrument Models (FW Revision)

M9384B

Bus Interface

TCPIP

Operating System (Service Pack)

Windows 10

OS Bitness/Application Bitness

64-bit/32-bit

VISA Vendor and Version

Keysight VISA (IO Libraries Suite Version 2018 Update 0.1 or later)

IVI Shared Components Version

2.6.1

IVI.NET Shared Components Version

1.4.1

Test Setup Simulation

Instrument Models

M9384B, M9383B

Bus Interface

N/A

Operating System (Service Pack)

Windows 10

OS Bitness/Application Bitness

64-bit/32-bit, 64-bit/64-bit

VISA Vendor and Version

N/A

IVI Shared Components Version

2.6.1

IVI.NET Shared Components Version

1.4.1

Driver Installation Testing

Operating System (Service Pack)

Windows 10

OS Bitness/Application Bitness

32-bit, 64-bit

Driver Buildability

Operating System (Service Pack)

Windows 10

OS Bitness/Application Bitness

32-bit, 64-bit

Visual Studio Version

VS 2017

Known Issues

None - This driver does not have any known defects.

Keysight Technologies has evaluated and tested this driver to verify that it meets all applicable requirements of the IVI specifications at this time. This compliance document was submitted to the IVI Foundation and agrees to abide by the dispute arbitration provisions in Section 7 of the IVI Specification, section IVI-1.2: Operating Procedures, if the IVI Foundation finds this driver to be non-conformant.

More Information

For more information about this driver and other instrument drivers and software available from Keysight Technologies, visit www.keysight.com/find/drivers.

Contact Support

If you have feedback or need help using this driver, contact Keysight Technical Support:

Trademarks

Keysight Technologies 2019-2020

Microsoft, Windows, MS Windows, and Windows NT are U.S. registered trademarks of Microsoft Corporation.

This document can be best viewed with Google Chrome 83.0.4103.106 and Internet Explorer 11.