SSA3000X
Spectrum Analyzer
Programming Guide
PG0703X-E04B

SIGLENT

Contents
1.

Programming Overview ...........................................................3

1.1

Remotely Operating the Analyzer ......................................................... 3

1.2

Build Communication ............................................................................ 4

1.3

Remote Control Capabilities ................................................................. 7

2.

SCPI Overview ........................................................................ 11

2.1

Command Format................................................................................. 11

2.2

Symbol Instruction .............................................................................. 11

2.3

Parameter Type..................................................................................... 12

2.4

Command Abbreviation ....................................................................... 13

3.

System Commands ................................................................ 14

3.1IEEE Common Commands .................................................................. 14

3.2

System Subsystem .............................................................................. 16

3.3

Instrument Subsystem......................................................................... 21

3.4

Initiate Subsystem................................................................................ 22

3.5

Sense Subsystem................................................................................. 23

3.6

Calculate Subsystem ........................................................................... 41

3.7

Measurement Subsystem .................................................................... 59

3.8

Trigger Subsystem ............................................................................... 68

3.9

TG Subsystem ...................................................................................... 69

3.10 Demod Subsystem ............................................................................... 71
3.11 Calibration Subsystem ........................................................................ 72
3.12 Memory Subsystem ............................................................................. 72

4.

Programming Examples ........................................................ 74

4.1

Examples of Using VISA ...................................................................... 74

4.2

Examples of Using Sockets/Telnet ..................................................... 85

2 SSA3000X Programming GuideSIGLENT

1.Programming Overview
SSA3000X Series Spectrum Analyzer support LAN, USB Device, and GPIB--USB Hostinterfaces. By using these interfaces, in combination with programming languages and/or NIVISA software, users can remotely control the analyzer based on SCPI (Standard
Commands for Programmable Instruments) command set, and interoperate with otherprogrammable instruments.
This chapter introduces how to build communication between the spectrum analyzer and acontroller computer with these interfaces.

1.1Remotely Operating the Analyzer
The analyzer provides both the USB and LAN connection which allows you to set up aremote operation environment with a controller computer. A controller computer could be a
personal computer (PC) or a minicomputer. Some intelligent instruments also function as
controllers.

1.1.1 Connecting the Analyzer via the USB Device port
Refer to the following steps to finish the connection via USB-Device:
1. Install NI-VISA on your PC for USB-TMC driver.
2. Connect the analyzer USB Device port to a PC with a USB A-B cable.

3. Switch on the analyzer
The analyzer will be detected automatically as a new USB hardware.

1.1.2 Connecting the Analyzer via the LAN port
Refer to the following steps to finish the connection via LAN:
1. Install NI-VISA on your PC for VXI driver. Or without NI-VISA, using socket or telnet
in your PC’s Operating System.
2. Connect the analzyer to PC or the local area network with a LAN cable

SSA3000X Programming Guide 3

SIGLENT
3. Switch on the analyzer
4. Press button on the front panel System →Interface→LAN to enter the LAN Config
function menu.
5. Select the IP Config between Static and DHCP
◆DHCP: the DHCP server in the current network will assign the network parameters
automaticlly (IP address, subnet mask, gate way) for the analzyer.
◆Static: you can set the IP address, subnet mask, gate way manually. Press Apply.

The analyzer will be detected automatically or manually as a new LAN point.

1.1.3 Connecting the Analyzer via the USB-Host port
(With USB-GPIB Adaptor)
Refer to the following steps to finish the connection via USB:
1. Install NI-VISA on your PC for GPIB driver.
2. Connect the analyzer USB Host port to a PC’s GPIB card port, with SIGLENT USBGPIB adaptor.

3. Switch on the analyzer
4. Press button on the front panel System→Interface→GPIB to enter the GPIB number.
The analyzer will be detected automatically as a new GPIB point.

1.2Build Communication
1.2.1 Build Communication Using VISA
NI-VISA includes a Run-Time Engine version and a Full version. The Run-Time Engine
version provides NI device drivers such as USB-TMC, VXI, GPIB, etc. The full version
includes the Run-Time Engine and a software tool named NI MAX that provides a userinterface to control the device.
4 SSA3000X Programming GuideSIGLENT
You can get NI-VISA full version from:http://www.ni.com/download/.
After download you can follow the steps below to install it:a.Double click the visa_full.exe, dialog shown as below:

b.Click Unzip, the installation process will automatically launch after unzipping files. If yourcomputer needs to install .NET Framework 4, its setup process will auto start.

c.The NI-VISA installing dialog is shown above. Click Next to start the installation process.

Set the install path, default path is “C:\Program Files\National Instruments\” , you canchange it. Click Next, dialog shown as above.

SSA3000X Programming Guide 5

SIGLENT

d.Click Next twice, in the License Agreement dialog, select the “ I accept the above 2 License
Agreement(s).” ,and click Next, dialog shown as below:

e.Click Next to run installation.

Now the installation is complete, reboot your PC.

1.2.2 Build Communication Using Sockets/Telnet
Through LAN interface, VXI-11, Sockets and Telnet protocols can be used to communicate
with the spectrum analyzer. VXI-11 is provided in NI-VISA, while Sockets and Telnet are
6 SSA3000X Programming GuideSIGLENT
commonly included in PC’s OS initially.
Sockets LAN is a method used to communicate with the spectrum analyzer over the LANinterface using the Transmission Control Protocol/Internet Protocol (TCP/IP). A socket is afundamental technology used for computer networking and allows applications tocommunicate using standard mechanisms built into network hardware and operating systems.
The method accesses a port on the spectrum analyzer from which bidirectional
communication with a network computer can be established.
Before you can use sockets LAN, you must select the analyzer’s sockets port number to use:
◆ Standard mode. Available on port 5025. Use this port for programming.
◆ Telnet mode. The telnet SCPI service is available on port 5024.

1.3Remote Control Capabilities
1.3.1 User-defined Programming
Users can use SCPI commands to program and control the spectrum analyzer. For details,
refer to the introductions in “Programming Examples”.

1.3.2 Send SCPI Commands via NI MAX
Users can control the spectrum analyzer remotely by sending SCPI commands via NI-MAX
software.

1.3.2.1 Using USB
Run NI MAX software.
1, Click “Device and interface” at the upper left corner of the software;
2, Find the “USBTMC” device symbol

3, Click “Open VISA Test Panel” option button, then the following interface will appear.
4, Click the “Input/Output” option button and click the “Query” option button in order to view
the operation information.

SSA3000X Programming Guide 7

SIGLENT

NOTE: The *IDN? command (known as the Identification Query) returns the instrument
manufacturer, instrument model, serial number, and other identification information.

1.3.2.2 Using LAN
select, Add Network Device, and select VISA TCP/IP Resource as shown:.
Run NI MAX software.
1, Click “Device and interface” at the upper left corner of the software;
2, Find the “Network Devices” symbol , click “Add Network Devices”;

3. Select Manual Entry of LAN instrument, select Next, and enter the IP address as shown.
Click Finish to establish the connection:

NOTE: Leave the LAN Device Name BLANK or the connection will fail.

8 SSA3000X Programming GuideSIGLENT

4. After a brief scan, the connection should be shown under Network Devices:

5. Right-click on the product and select Open NI-VISA Test Panel:

6. Click “Input/Output” option button and click “Query” option button. If everything is OK,
you will see the Read operation information returned as shown below.

SSA3000X Programming Guide 9

SIGLENT

1.3.3 EasySpectrum Software
Users can control the spectrum analyzer remotely by EasySpectrum. PC software
EasySpectrum is an easy-to-use, PC-Windows-based remote control tool for Siglent’s
spectrum analyzer. You can download it from Siglent’s website. To connect the analyzer via
the USB/LAN port to a PC, you need install the NI VISA first.
It is able to be used as:◆ A monitor to display and control the trace scans simultaneously with the analyzer;◆ A filemaker to get user defined Limit/Correction files, and load them to the anaylzer;◆ An EMI receiver to perform EMI Pre-compliance test including prescan, peak search,
finalscan and report generating.
For the further descrption of the software, please refer to the online help embedded in thissoftware.

10 SSA3000X Programming GuideSIGLENT

2.SCPI Overview
2.1 Command Format
SCPI commands present a hierarchical tree structure containing multiple subsystems, eachof the subsystems is made up of a root keyword and several subkeywords. The command
string usually starts with “:”, the keywords are separated by “:” and the followed parametersettings are separated by space. Query commands add “?” at the end of the string.
For example::SENSe:FREQuency:CENTer <freq>:SENSe:FREQuency:CENTer?
SENSe is the root key of the command, FREQuency and CENTer are second and third
keywords. The command begins with “:”, and separates the keywords at the same time,<freq> separated by space and represents the parameter available for setting; “?” represents
a query.

2.2 Symbol Instruction
The following four symbols are not the content of SCPI commands and can not be sent withthe commands, but are usually used in the commands.

1, Triangle Brackets < >The parameter in the triangle brackets must be replaced by an effective value. For example:
Send the “:DEMod:VOLume <value>” command in “:DEMod:VOLume 5”.

2, Square Brackets [ ]The content in the square brackets can be ignored. When the parameter is ignored, theinstrument will set the parameter to its default. For example,
In the “[:SENSe]:POWer[:RF]:ATTenuation?” command, sending any of the four commands
below can generate the same effect::POWer:ATTenuation?
:POWer:RF:ATTenuation?
:SENSe:POWer:ATTenuation?
:SENSe:POWer:RF:ATTenuation?

3, Vertical Bar |The vertical bar is used to separate multiple parameters and when sending the command,
you can choose one of the parameters. For example,
SSA3000X Programming Guide 11

SIGLENT
In the “[:SENSe]:FREQuency:CENTer:STEP:AUTO OFF|ON|0|1” command, the parameters
available are “OFF”, “ON”, “0” or “1”.

4, Braces { }The parameters in the braces are optional which can be ignored or set for one or more times.
For example：:CALCulate:LLINe[1]|2:DATA <x-axis>,<ampl>{,<x-axis>, <ampl>}, in the command, the {,<xaxis>, <ampl>} parameters can be ignored or set for one or more times.

2.3 Parameter TypeThe parameters in the commands introduced in this manual include 6 types: boolean,
enumeration, integer, float, discrete and string.

1, Boolean
The parameters in the commands could be “OFF”, “ON”, “0” or “1”. For example:[:SENSe]:FREQuency:CENTer:STEP:AUTO OFF|ON|0|1

2, Enumeration
The parameter could be any of the values listed. For example:[:SENSe]:AVERage:TYPE LOGPower|POWer|VOLTage
The parameter is “OGPower”, “POWer” or “VOLTage”.

3, String
The parameter should be the combinations of ASCII characters. For example::SYSTem:COMMunicate:LAN:IPADdress <“xxx.xxx.xxx.xxx”>
The parameter can be set as “192.168.1.12” string.

4, Integer
Except other notes, the parameter can be any integer within the effective value range. For
example:[:SENSe]:DEMod:VOLume <value>
The parameter < value > can be set to any integer between 0 and 10.

5, Float
The parameter could be any value within the effective value range according to the accuracy
requirement (the default accuracy contains up to 9 digits after the decimal points). For example::CALCulate:BANDwidth:NDB <value>
The parameter < value > can be set to any real number between -100 and 100.
12 SSA3000X Programming GuideSIGLENT

6, Discrete
The parameter could only be one of the specified values and these values are discontinuous. For
example:[:SENSe]:BWIDth:VIDeo:RATio <number>
The parameter <number> could only be one of 0.001, 0.003, 0.01, 0.03, 0.1, 0.3, 1.0, 3.0, 10.0,
30.0, 100.0, 300.0, 1000.0.

2.4 Command Abbreviation
All of the commands are not case sensitive, so you can use any of them. But if abbreviation
is used, all the capital letters in the command must be written completely. For example::DISPlay:WINDow:TRACe:Y:DLINe:STATe?
Can be abbreviated to::DISP:WIND:TRAC:Y:DLIN:STAT?

SSA3000X Programming Guide 13

SIGLENT

3.System Commands
This chapter introduces the Siglent Technologies SSA3000X SCPI commands, include:

IEEE Common Commands

0

System Subsystem

3.2

Instrument Subsystem

3.3

Initiate Subsystem

3.4

Sense Subsystem

3.5

Calculate Subsystem

3.6

Measurement Subsystem

3.7

Trigger Subsystem

3.8

TG Subsystem

3.9

Demod Subsystem

3.10

Calibration Subsystem

3.11

3.1IEEE Common Commands
3.1.1 Identification Query (*IDN)CommandFormatInstruction

Menu
Example*IDN?
Returns an instrument identification information string. The string will containthe manufacturer, model number, serial number, software number, FPGA
number and CPLD number.
None
*IDN?
Return: Siglent Technologies,SSA3032,1234567890,100.01.01.06.01

3.1.2 Reset (*RST)CommandFormatInstruction

Menu
Example*RSTThis command presets the instrument to a factory defined condition that is
appropriate for remote programming operation. *RST is equivalent toperforming the two commands :SYSTem:PRESet and *CLS. This command
always performs a factory preset.
None
*RST

3.1.3 Clear Status (*CLS)CommandFormatInstruction*CLS
Clears the status byte register. It does this by emptying the error queue and

14 SSA3000X Programming GuideSIGLENT

Menu
Exampleclearing all bits in all of the event registers. The status byte register summarizes
the states of the other registers. It is also responsible for generating service
requests.
None
*CLS

3.1.4 Standard Event Status Enable (*ESE)CommandFormatInstruction

Menu
Example*ESE <number>*ESE?
Set the bits in the standard event status enable register. This register monitors
I/O errors and synchronization conditions such as operation complete, request
control, query error, device dependent error,execution error, command error
and power on. A summary bit is generated on execution of the command.
The query returns the state of the standard event status enable register.
None*ESE 16

3.1.5 Standard Event Status Register Query (*ESR)
CommandFormatInstruction

Menu
Example*ESR?
Queries and clears the standard event status event register. (This is a
destructive read.) The value returned reflects the current state (0/1) of all thebits in the register.
None
*ESR?

3.1.6 Operation Complete Query (*OPC)
CommandFormatInstruction

Menu
Example*OPC*OPC?
Set bit 0 in the standard event status register to “1” when all pending operations
have finished.
The query stops any new commands from being processed until the current
processing is complete. Then it returns a “1”, and the program continues. This
query can be used to synchronize events of other instruments on the external
bus.
Returns a “1” if the last processing is complete. Use this query when there’s aneed to monitor the command execution status, such as a sweep execution.
None
*OPC?

3.1.7 Service Request Enable (*SRE)
CommandFormatInstruction

Menu
Example*SRE <integer>*SRE?
This command enables the desired bits of the service request enable register.
The query returns the value of the register, indicating which bits are currently
enabled. The default value is 255.
None
*SRE 1

SSA3000X Programming Guide 15

SIGLENT

3.1.8 Status Byte Query (*STB)CommandFormatInstruction
Menu
Example*STB
This query is used by some instruments for a self test.
None
*STB

3.1.9 Wait-to-Continue (*WAI)
CommandFormatInstruction

Menu
Example*WAI
This command causes the instrument to wait until all pending commands arecompleted before executing any additional commands.
There is no query form to the command.
None
*WAI

3.1.10Self Test Query (*TST)CommandFormatInstruction
Menu
Example*TST?
This query is used by some instruments for a self test.
None
*TRG

3.2System Subsystem
3.2.1 System Time (:SYSTem:TIME)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:TIME <hhmmss>:SYSTem:TIME?
Sets System time.
Gets System time.
Stringhour(0~23), minute(0~59), second(0~59)
String
None
System > date & time
Sets System time::SYSTem:TIME 182559
Gets System time::SYSTem:TIME?

3.2.2 System Date (:SYSTem:DATE)
CommandFormatInstruction:SYSTem:DATE <yyyymmdd>:SYSTem:DATE?
Sets system date.
Gets system date.

16 SSA3000X Programming GuideSIGLENT
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleStringyear(four digits), month(1~12), date(1~31)
String
None
System > date&time
Sets System date::SYSTem:DATE 20050101
Gets System date::SYSTem:DATE?

3.2.3 IP Address(:SYSTem:COMMunicate:LAN:IPADdress)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:COMMunicate:LAN:IPADdress <“xxx.xxx.xxx.xxx”>:SYSTem:COMMunicate:LAN:IPADdress?
Sets a host name for the analyzer in network.
Gets IP address.
String
Conform to the IP Sets standard(0-255:0-255:0-255:0-255)
IP adress String
None
System > Interface > LAN > IP Address:SYSTem:COMMunicate:LAN:IPADdress “192.168.1.12”:SYSTem:COMMunicate:LAN:IPADdress?

3.2.4 Gateway(:SYSTem:COMMunicate:LAN:GATeway)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:COMMunicate:LAN:GATeway <“xxx.xxx.xxx.xxx”>:SYSTem:COMMunicate:LAN:GATeway?
Sets the gateway for the analyzer in the network. The gateway will befetched automatically if the IP assignment is set to DHCP.
Gets gateway.
String
Conform to the IP standard (0-255:0-255:0-255:0-255)
gateway string.
None
System > Interface > LAN > Gateway:SYSTem:COMMunicate:LAN:GATeway “192.168.1.1”:SYSTem:COMMunicate:LAN:GATeway?

3.2.5 Subnet Mask(:SYSTem:COMMunicate:LAN:SMASk)
CommandFormatInstruction:SYSTem:COMMunicate:LAN:SMASk <“xxx.xxx.xxx.xxx”>:SYSTem:COMMunicate:LAN:SMASk?
Sets the subnet mask according to the PC network Settings. The subnet mask
SSA3000X Programming Guide 17

SIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Examplewill be set automatically if the IP assignment is set to DHCP.
String
Conform to the IP standard (0-255:0-255:0-255:0-255)
Subnet mask string
None
System > Interface > LAN > Subnet Mask
:SYSTem:COMMunicate:LAN:SMASk?

3.2.6 IP Config (:SYSTem:COMMunicate:LAN:TYPE)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:COMMunicate:LAN:TYPE STATIC|DHCP:SYSTem:COMMunicate:LAN:TYPE?
Toggles the IP assignment Setting between static (manual) and DHCP
(dynamic assignment) mode.
Gets IP config.
Enumeration
STATIC|DHCP
Enumeration
None
System > Interface > LAN > IP Config:SYSTem:COMMunicate:LAN:TYPE DHCP
:SYSTem:COMMunicate:LAN:TYPE?

3.2.7 Language (:SYSTem:LANGuage)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:LANGuage SCHINESE|ENGLISH:SYSTem:LANGuage?
Sets language.
Gets language.
Enumeration
SCHINESE: Chinese
ENGLISH: English
Enumeration
None
System > Language
Sets language:SYSTem:LANGuage SCHINESE
Gets language:SYSTem:LANGuage?

3.2.8 Power On Type (:SYSTem:PON:TYPE)
CommandFormatInstruction
ParameterType:SYSTem:PON:TYPE DFT|LAST|USER:SYSTem:PON:TYPE?
Uses command to set analyzer to power on in default, user, or last state.
Gets power on type.
Enumeration

18 SSA3000X Programming GuideSIGLENT
Parameter
Range
ReturnDefault
Menu
Example

DFT: Default
LAST: Last
USER: Custom Configuration
Enumeration
DFT
System > Pwr/Preset > Power On
SYSTem:PON:TYPE DFT

3.2.9 System Preset (:SYSTem:PRESet)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:PRESet
Use this command to preset the instrument. The preset type is based on the
Setting of Preset Type: DFT, User or Last.
None
None
None
None
None
:SYSTem:PRESet

3.2.10 System Restart (:SYSTem:RESTart)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:RESTart
Use this command to restart the instrument (part of machine may not support).
None
None
None
None
None
:SYSTem:RESTart

3.2.11 Preset Type (:SYSTem:PRESet:TYPE)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:PRESet:TYPE DFT|LAST|USER:SYSTem:PRESet:TYPE?
Uses this command to preset the analyzer to default, user, or last state.
Gets preset type.
Enumeration
DFT: Default
LAST: Last
USER: Custom Configuration
Enumeration
DFT
System > Pwr/Preset > Preset:SYSTem:PRESet:TYPE DFTSSA3000X Programming Guide 19

SIGLENT

3.2.12 Factory ReSet (:SYSTem:FDEFault)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:FDEFault
Sets both the measure and setting parameters to factory preset parameters.
None
None
None
None
System > Pwr/Preset > Factory Reset:SYSTem:FDEFault

3.2.13 Enable Option (:SYSTem:LKEY)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:LKEY <“option”>,<“license key”>
Use this command to enable the specified option with the license key, pleaserestart the instrument to make license active.
“option”: Enumeration“ license key”: String“option”: Meas|EMI|CAT|TG“ license key”: provided by Siglent Technologies, 16 bits String.
None
None
System > System Info > Load Option:SYSTem:LKEY EMI,fjbdajffnklmgwno

3.2.14 Installed Options Query (:SYSTem:OPTions?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:OPTions?
This command returns a list of the options that are installed.
None
None
Meas| EMI|CAT|TG
None
System > System Info
:SYSTem:OPTions?

3.2.15 Power Off (:SYSTem:POWer:OFF)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault:SYSTem:POWer:OFF
Use this command to turn off the instrument.
None
None
None
None

20 SSA3000X Programming GuideSIGLENT
Menu
ExampleNone:SYSTem:POWer:OFF

3.2.16 Screenshot Data (:HCOPy:SDUMp:DATA?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:HCOPy:SDUMp:DATA?
Use this command to query the screenshot data(.bmp)
None
None
String
None
System > System Info
:HCOPy:SDUMp:DATA?

3.2.17 System Info (:SYSTem:CONFigure:SYSTem?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SYSTem:CONFigure:SYSTem?
Use this command to query the system message of the instrument.
None
None
String
None
System > System Info
:SYSTem:CONFigure:SYSTem?

3.3Instrument Subsystem
3.3.1 Instrument Mode (:INSTrument[:SELect])CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:INSTrument[:SELect] SA|CAT:INSTrument[:SELect]?
Sets instrument mode.
Enumeration
SA: Spec Analyzer
CAT: Reflection Meas
Enumeration
SA
mode:INSTrument CAT

3.3.2 Measure Mode (:INSTrument:MEASure)
CommandFormat:INSTrument:MEASure
OFF|ACPR|CHPower|OBW|TPOWer |SPECtrogram|TOI:INSTrument:MEASure?
SSA3000X Programming Guide 21

SIGLENT
Instruction
Parameter
Type
Parameter
Range

ReturnDefault
Menu
ExampleSets measure mode.
Gets measure mode.
Enumeration
OFF: measure off
ACPR: ACPR
CHPower: Channel Power
OBW: Occupied BW
TPOWer: T-POWer
SPECtrogram: Spectrogram Monitor
TOI: Third-order Intercept Point
Enumeration
OFF
Measure:INSTrument:MEASure ACPR

3.4Initiate Subsystem
3.4.1 Single Sweep (:INITiate[:IMMediate])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:INITiate[:IMMediate]
Sets single sweep.
None
None
None
None
Sweep > Single:INITiate:IMMediate

3.4.2 Continuous or Single Sweep(:INITiate:CONTinuous)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:INITiate:CONTinuous OFF|ON|0|1:INITiate:CONTinuous?
Sets continuous sweep mode on-off.
Gets continuous sweep mode state.
Boolean
OFF|ON|0|1
0|1
ON
Sweep > Sweep Mode
:INITiate:CONTinuous OFF

22 SSA3000X Programming GuideSIGLENT

3.5Sense Subsystem
3.5.1 Frequency Subsection
3.5.1.1 Center Frequency ([:SENSe]:FREQuency:CENTer)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:CENTer <freq>[:SENSe]:FREQuency:CENTer?
Sets the center frequency of the spectrum analyzer.
Gets the center frequency.
Float, unit: Hz, KHz, MHz, GHz
50 Hz~3.199999950 GHz(2.999999950 GHz, 2.099999950 GHz, 1.799999950
GHz, 1.499999950 GHz, 0.999999950 GHz)
Zero Span: 0~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
1.6 GHz(1.5 GHz, 1.05 GHz, 0.9 GHz, 0.75 GHz, 0.5 GHz)
Frequency > Center Frequency:FREQuency:CENTer 0.2 GHz

3.5.1.2 Start Frequency ([:SENSe]:FREQuency:STARt)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:STARt <freq>[:SENSe]:FREQuency:STARt?
Sets the start frequency of the spectrum analyzer.
Gets the start Frequency.
Float, unit: Hz, KHz, MHz, GHz
0 Hz~3.199999900 GHz(2.999999900 GHz, 2.099999900 GHz, 1.799999900
GHz, 1.499999900 GHz, 0.999999900 GHz)
Zero Span: 0~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
0 Hz
Frequency > Start Frequency:FREQuency:STARt 100 Hz

3.5.1.3 Stop Frequency ([:SENSe]:FREQuency:STOP)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:STOP <freq>[:SENSe]:FREQuency:STOP?
Sets the stop frequency of the spectrum analyzer.
Gets the stop frequency.
Float, unit: Hz, KHz, MHz, GHz
100 Hz~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Zero Span: 0~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Frequency > Stop Frequency:FREQuency:STOP 1.0 GHz
SSA3000X Programming Guide 23

SIGLENT

3.5.1.4 Center Frequency Step([:SENSe]:FREQuency:CENTer:STEP[:INCRement])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:CENTer:STEP[:INCRement] <freq>[:SENSe]:FREQuency:CENTer:STEP[:INCRement]?
Specifies the center frequency step size.
Gets the center frequency step.
Float, unit: Hz, KHz, MHz, GHz
1 Hz~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
320 MHz(300 MHz, 210 MHz, 180 MHz, 150 MHz, 100 MHz)
Frequency > Freq Step
:FREQuency:CENTer:STEP 2 MHz

3.5.1.5 Center Frequency Step Mode([:SENSe]:FREQuency:CENTer:STEP:AUTO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:CENTer:STEP:AUTO OFF|ON|0|1[:SENSe]:FREQuency:CENTer:STEP:AUTO?
Specifies whether the step size is set automatically based on the span.
Gets center frequency step mode.
Boolean
OFF|ON|0|1
0|1
ONFrequency > Freq Step
:FREQuency:CENTer:STEP:AUTO OFF

3.5.1.6 Sets CF→Step ([:SENSe]:FREQuency:CENTer:SET:STEP)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:CENTer:SET:STEP
Sets step value equal to center frequency.
None
None
None
None
Frequency > CF→Step:FREQuency:CENTer:SET :STEP

3.5.1.7 Frequency Span ([:SENSe]:FREQuency:SPAN)
CommandFormatInstruction[:SENSe]:FREQuency:SPAN <freq>[:SENSe]:FREQuency:SPAN?
Sets the frequency span. Setting the span to 0 Hz puts the analyzer into zerospan.

24 SSA3000X Programming GuideSIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleGets span value.
Float, unit: Hz, KHz, MHz, GHz
0 Hz, 100 Hz ~ 3.2GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Span > Span
:FREQuency:SPAN 1 GHz

3.5.1.8 Full Span ([:SENSe]:FREQuency:SPAN:FULL)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:SPAN:FULL
Sets the frequency span to full scale.
None
None
None
None
Span > Full Span
:FREQuency:SPAN:FULL

3.5.1.9 Zero Span ([:SENSe]:FREQuency:SPAN:ZERO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:SPAN:ZERO
Sets the frequency span to zero span.
None
None
None
None
Span > Zero Span
:FREQuency:SPAN:ZERO

3.5.1.10 Last Span ([:SENSe]:FREQuency:SPAN:PREVious)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:SPAN:PREVious
Sets the frequency span to the previous span setting.
None
None
None
None
Span > Last Span
:FREQuency:SPAN:PREVious

SSA3000X Programming Guide 25

SIGLENT

3.5.1.11 Zoom In ([:SENSe]:FREQuency:SPAN:DOUBle)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:SPAN:DOUBle
Sets the frequency span to half of the previous span setting.
None
None
None
None
Span> Zoom In:FREQuency:SPAN:DOUBle

3.5.1.12 Zoom Out ([:SENSe]:FREQuency:SPAN:HALF)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:SPAN:HALF
Sets the frequency span to double the previous span setting.
None
None
None
None
Span> Zoom Out:FREQuency:SPAN:HALF

3.5.2 Auto Tune Subsection
3.5.2.1 Auto Tune ([:SENSe]:FREQuency:TUNE:IMMediate)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FREQuency:TUNE:IMMediate
Auto tune the spectrum analyzer parameter to display the main signal.
None
None
None
None
Auto Tune:FREQuency:TUNE:IMMediate

3.5.3 Amplitude Subsection
3.5.3.1 Reference Level(:DISPlay:WINDow:TRACe:Y[:SCALe]:RLEVel)
Command:DISPlay:WINDow:TRACe:Y[:SCALe]:RLEVel <value>

26 SSA3000X Programming GuideSIGLENT
FormatInstruction
Parameter
Type
Parameter
Range

ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:Y[:SCALe]:RLEVel?
This command sets the reference level for the Y-axis.
Gets reference level.
Float, unit: dBm, dBmV, dBuV, V, W
Unit is dBm: -100 dBm ~ 30 dBm
Unit is dBmV: -53.01 dBmV ~ 76.99 dBmV,
Unit is dBuV: 6.99 dBuV ~ 136.99 dBuV,
Unit is Volts: 2.24 uV ~ 7.07 V
Unit is Watts: 100 fW ~ 1 W
Float, unit: dBm
0 dBm
Amplitude > Ref Level:DISPlay:WINDow:TRACe:Y:RLEVel 20 DBM

3.5.3.2 Input Attenuator ([:SENSe]:POWer[:RF]:ATTenuation)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:POWer[:RF]:ATTenuation <value>[:SENSe]:POWer[:RF]:ATTenuation?
Sets the input attenuator of the spectrum analyzer.
Gets the input attenuator.
Integer
0 dB ~ 50 dB
Integer, unit: dB
20 dB
Amplitude > Attenuator:POWer:ATTenuation 10

3.5.3.3 Attenuator Auto Mode([:SENSe]:POWer[:RF]:ATTenuation:AUTO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:POWer[:RF]:ATTenuation:AUTO OFF|ON|0|1[:SENSe]:POWer[:RF]:ATTenuation:AUTO?
This command turns on/off auto input port attenuator state.
Gets input port attenuator state.
Boolean
OFF|ON|0|1
0|1
ONAmplitude > Attenuator:POWer:ATTenuation:AUTO?

3.5.3.4 Preamp on-off ([:SENSe]:POWer[:RF]:GAIN[:STATe])
CommandFormatInstruction[:SENSe]:POWer[:RF]:GAIN[:STATe] OFF|ON|0|1[:SENSe]:POWer[:RF]:GAIN[:STATe]?
Turns the internal preamp on/off.
Gets preamp on-off state.

SSA3000X Programming Guide 27

SIGLENT
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleBoolean
OFF|ON|0|1
0|1
OFF
Amplitude > Preamp:POWer:GAIN ON

3.5.3.5 Amplitude OffSets(:DISPlay:WINDow:TRACe:Y:SCALe:RLEVel:OFFSet )CommandFormatInstruction:DISPlay:WINDow:TRACe:Y:SCALe:RLEVel:OFFSet <value>:DISPlay:WINDow:TRACe:Y:SCALe:RLEVel:OFFSet?
Sets reference offsets.
Gets reference offsets.

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleFloat-300dB~300dB
Float, unit: dB
0dB
Amplitude > Ref OffSets:DISPlay:WINDow:TRACe:Y:SCALe:RLEVel:OFFSet 2

3.5.3.6 Amplitude Units (:UNIT:POWer)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:UNIT:POWer DBM|DBMV|DBUV|V|W:UNIT:POWer?
Specifies amplitude units for the input, output and display.
Gets amplitude units.
Enumeration
DBM|DBMV|DBUV|V|W,
Enumeration
DBM
Amplitude > Units:UNIT:POWer DBMV

3.5.3.7 Scale Type(:DISPlay:WINDow:TRACe:Y[:SCALe]:SPACing)
CommandFormatInstruction

Parameter
Type
Parameter
Range:DISPlay:WINDow:TRACe:Y[:SCALe]:SPACing LINear|LOGarithmic:DISPlay:WINDow:TRACe:Y[:SCALe]:SPACing?
Toggles the vertical graticule divisions between logarithmic unit and linear unit.
The default logarithmic unit is dBm, and the linear unit is V.
Gets scale type.
Enumeration
LINear|LOGarithmic

28 SSA3000X Programming GuideSIGLENT
ReturnDefault
Menu
ExampleEnumeration
LOGarithmic
Amplitude > Scale Type:DISPlay:WINDow:TRACe:Y:SPACing LINear

3.5.3.8 Scale/Div (:DISPlay:WINDow:TRACe:Y[:SCALe]:PDIVision)CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:Y[:SCALe]:PDIVision <integer>:DISPlay:WINDow:TRACe:Y[:SCALe]:PDIVision?
This command sets the per-division display scaling for the y-axis when scale
type of Y axis is set to Log.
Gets Scale/Div when scale type of Y axis is set to Log.
Float
1 dB ~ 10 dB
Float, unit: dB
10 dB
Amplitude > Scale/Div:DISPlay:WINDow:TRACe:Y:PDIVision 10 dB

3.5.3.9 Correction Off ([:SENSe]:CORRection:OFF)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CORRection:OFF
Turn off the amplitude correction function off and all of the correction sets are
off.
None
None
None
None
None
:SENSe:CORRection:OFF

3.5.3.10 Correction Apply State([:SENSe]:CORRection:CSET:ALL[:STATe])
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu[:SENSe]:CORRection:CSET:ALL[:STATe] OFF|ON|0|1[:SENSe]:CORRection:CSET:ALL[:STATe]?
Turns on or off the amplitude corrections.
When turned on, only the correction sets that were turned on are enabled.
When turned off, all of the correction Sets are disabled. If there is no correction
enabled, state can not be set to on.
Boolean
OFF|ON|0|1
0|1
OFF
Amplitude > Corrections > Apply Corrections
SSA3000X Programming Guide 29

SIGLENT
Example:SENSe:CORRection:CSET:ALL:STATe OFF

3.5.3.11 Sets Correction X State Off([:SENSe]:CORRection:CSET[1]|2|3|4:OFF)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CORRection:CSET[1]|2|3|4:OFF[:SENSe]:CORRection:CSET[1]|2|3|4[:STATe]?
Turns the amplitude correction function on/off.
Gets the amplitude correction function state.
None
None
0|1
OFF
Amplitude > Corrections > Correction1|2|3|4:CORRection:CSET2:OFF

3.5.3.12 Set Correction Data([:SENSe]:CORRection:CSET[1]|2|3|4:DATA)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CORRection:CSET[1]|2|3|4:DATA <x1,y1,x2,y2;…>[:SENSe]:CORRection:CSET[1]|2|3|4:DATA?
Set correction X data 1|2|3|4
Read correction X data.
None
None
String
None
None:CORRection:CSET2:DATA?

3.5.3.13 Current Correction Select([:SENSe]:CORRection:SELect)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CORRection:SELect 1|2|3|4[:SENSe]:CORRection:SELect?
Set current correction for load COR file onto proper CorrectionX.
Read current correction.
Enumeration
1|2|3|4
1|2|3|4
1
Amplitude > Corrections > Correction1|2|3|4:CORRection:CSET2:SELect 1

30 SSA3000X Programming GuideSIGLENT

3.5.3.14 Load Correction Data(:MMEMory:LOAD:CORRection:CSET[1]|2|3|4)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MMEMory:LOAD:CORRection:CSET[1]|2|3|4 <name.COR>
Load correction data.
String
None
None
None
Amplitude > Corrections > Correction1|2|3|4 > Load Data
:MMEMory:LOAD:CORRection:CSET1 “oldname.COR”

3.5.3.15 Input Impedance([:SENSe]:CORRection:IMPedance[:INPut][:MAGNitude])CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CORRection:IMPedance[:INPut][:MAGNitude] OHM50 |OHM75[:SENSe]:CORRection:IMPedance[:INPut][:MAGNitude]?
Set the input impedance for voltage-to-power conversions.
Get the input impedance.
Enumeration
OHM50 |OHM75
OHM50 |OHM75
OHM50
Amplitude > Corrections
CORRection:IMPedance?

3.5.4 Bandwidth Subsection
3.5.4.1 Resolution Bandwidth ([:SENSe]:BWIDth[:RESolution])
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:BWIDth[:RESolution] <freq>[:SENSe]:BWIDth[:RESolution]?
Specifies the resolution bandwidth. For numeric entries, all RBW types choose
the nearest (arithmetically, on a linear scale, rounding up) available RBW to thevalue entered.
Discrete
10 Hz, 30 Hz, 100 Hz, 300 Hz, 1 KHz, 3 KHz, 10 KHz, 30 KHz, 100 KHz, 300
KHz, 1 MHz
Float, unit: Hz
1 MHz
BW > RBW:BWIDth 1 KHz

SSA3000X Programming Guide 31

SIGLENT

3.5.4.2 Resolution Bandwidth Auto Mode([:SENSe]:BWIDth[:RESolution]:AUTO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:BWIDth[:RESolution]:AUTO OFF|ON|0|1[:SENSe]:BWIDth[:RESolution]:AUTO?
Turns on/off auto resolution bandwidth state.
Boolean
OFF|ON|0|1
0|1
ONBW > RBW:BWID:AUTO On

3.5.4.3 Video Bandwidth ([:SENSe]:BWIDth:VIDeo)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:BWIDth:VIDeo <freq>[:SENSe]:BWIDth:VIDeo?
Specifies the video bandwidth.
Discrete
1 Hz, 3 Hz, 10 Hz, 30 Hz, 100 Hz, 300 Hz, 1 KHz, 3 KHz, 10 KHz, 30 KHz, 100
KHz, 300 KHz, 1 MHz
Float, unit: Hz
1 MHz
BW > VBW:BWIDth:VIDeo 10 KHZ

3.5.4.4 Auto Video Bandwidth State([:SENSe]:BWIDth:VIDeo:AUTO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:BWIDth:VIDeo:AUTO OFF|ON|0|1[:SENSe]:BWIDth:VIDeo:AUTO?
This command turns on/off auto video bandwidth state.
Boolean
OFF|ON|0|1
0|1
ONBW > VBW
BWIDth:VIDeo:AUTO OFF

3.5.4.5 Video to Resolution Bandwidth Ratio([:SENSe]:BWIDth:VIDeo:RATio)
CommandFormatInstruction
Parameter[:SENSe]:BWIDth:VIDeo:RATio <number>[:SENSe]:BWIDth:VIDeo:RATio?
Specifies the ratio of the video bandwidth to the resolution bandwidth.
Discrete, Float

32 SSA3000X Programming GuideSIGLENTType
Parameter
Range
ReturnDefault
Menu
Example0.001, 0.003, 0.01, 0.03, 0.1, 0.3, 1.0, 3.0, 10.0, 30.0, 100.0, 300.0, 1000.0
Float
1.0
BW > VBW/RBW:BWIDth:VIDeo:RATio 30

3.5.4.6 Auto Video to Resolution Bandwidth Ratio State([:SENSe]:BWIDth:VIDeo:RATio:CONfig?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:BWIDth:VIDeo:RATio:CONfig?
This command turns on/off auto video to resolution bandwidth ratio.
None
None
0|1
1
None
:BWIDth:VIDeo:RATio:CONfig?

3.5.4.7 Filter Type ([:SENSe]:FILTer:TYPE)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:FILTer:TYPE EMI|GAUSS[:SENSe]:FILTer:TYPE?
Sets filter type
Gets filter type
Enumeration
EMI|GAUSS
Enumeration
GAUSS
BW > Filter Type:FILTer:TYPE EMI

3.5.5 Trace Subsection
3.5.5.1 Trace mode (:TRACe[1]|2|3|4:MODE)
CommandFormatInstruction
Parameter
Type
Parameter
Range:TRACe[1]|2|3|4:MODE WRITe|MAXHold|MINHold|VIEW|BLANk|AVERage:TRACe[1]|2|3|4:MODE?
Selects the display mode for the selected trace.
Enumeration
WRITe: puts the trace in the normal mode, updating the data.
MAXHold: displays the highest measured trace value for all the data that has
been measured since the function was turned on.
MINHold: displays the lowest measured trace value for all the data that has
SSA3000X Programming Guide 33

SIGLENT

ReturnDefault
Menu
Examplebeen measured since the function was turned on.
VIEW: turns on the trace data so that it can be viewed on the display.
BLANk: turns off the trace data so that it is not viewed on the display.
AVERage: averages the trace for test period.
Enumeration
Trace1: WRITe, Trace2|3|4: BLANk
Trace:TRAC1:MODE VIEW

3.5.5.2 Query Trace Data (:TRACe[:DATA]?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:TRACe[:DATA]? 1|2|3|4
This query command returns the current displayed data.
Enumeration
1|2|3|4
String
1
None:TRACe:DATA? 1

3.5.5.3 Trace Data Format(:FORMat[:TRACe][:DATA])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:FORMat[:TRACe][:DATA] ASCii|REAL:FORMat[:TRACe][:DATA]?
Sets trace data type.
Gets trace data type.
Enumeration
ASCii|REAL
String
REAL
None:FORMat ASCii

3.5.5.4 Trace Math Type (:TRACe:MATH:TYPE)
CommandFormatInstruction

Parameter
Type
Parameter
Range:TRACe:MATH:TYPE
Off|X-Y+Ref->Z|Y-X+Ref->Z|X+Y-Ref->Z|X+Const->Z|X-Const->Z:TRACe:MATH:TYPE?
Sets trace math type.
Gets trace math type.
In this command, the lower-case parameters should not be neglected, forexample:X-Y+Ref->Z can not write as X-Y+R->Z.
Enumeration
Off: turns off the trace math function.
X-Y+Ref->Z: math variable X minus math variable Y and add reference level
then to output trace.
Y-X+Ref->Z: math variable Y minus math variable X and add reference level

34 SSA3000X Programming GuideSIGLENT

ReturnDefault
Menu
Examplethen to output trace.
X+Y-Ref->Z: math variable X add math variable Y and minus reference level
then to output trace.
X+Const->Z: math variable X add const then to output trace.
X-Const->Z: math variable X minus const then to output trace.
Enumeration
Off
Trace > Math Type:TRACe:MATH:TYPE X-Y+Ref->Z

3.5.5.5 Trace Math Variable X (:TRACe:MATH:X)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:TRACe:MATH:X A|B|C:TRACe:MATH:X?
Sets trace math variable X.
Gets trace math variable X.
Enumeration
A|B|C
EnumerationA
Trace > Math > Variable X:TRACe:MATH:X A

3.5.5.6 Trace Math Variable Y (:TRACe:MATH:Y)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:TRACe:MATH:Y A|B|C:TRACe:MATH:Y?
Sets trace math variable Y.
Gets trace math variable Y.
Enumeration
A|B|C
Enumeration
B
Trace > Math > Variable Y:TRACe:MATH:Y A

3.5.5.7 Trace Math Output (:TRACe:MATH:Z)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu:TRACe:MATH:Z A|B|C:TRACe:MATH:Z?
Sets trace math output.
Gets trace math output.
Enumeration
A|B|C
EnumerationC
Trace > Math > Output
SSA3000X Programming Guide 35

SIGLENT
Example:TRACe:MATH:Z A

3.5.5.8 Trace Math Const (:TRACe:MATH:CONSt)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:TRACe:MATH:CONSt <const>:TRACe:MATH:CONSt?
Sets trace math const.
Gets trace math const.
Enumeration-300dB ~300 dB
Float
0.00dB
Trace > Math > Const:TRACe:MATH:CONSt 7

3.5.5.9 Trace Sweep State（TRACe:SWEep:STATe? 1/2/3/4）
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleTRACe:SWEep:STATe? 1/2/3/4
Get Trace Sweep State
Boolean0|1
0 Indicates that the scan is not over
1 Indicates that the scan is over
None
Trace
TRACe:SWEep:STATe? 1

3.5.6 Detector Subsection
3.5.6.1 Type of Detection([:SENSe]:DETector:TRACe[1]|2|3|4[:FUNCtion])
CommandFormatInstruction
Parameter
Type
Parameter
Range[:SENSe]:DETector:TRACe[1]|2|3|4[:FUNCtion]
NEGative|POSitive|SAMPle|AVERage|NORMAL|QUASi[:SENSe]:DETector:TRACe[1]|2|3|4[:FUNCtion]?
Specifies the detection mode. For each trace interval (bucket), average
detection displays the average of all the samples within the interval.
Enumeration
NEGative: Negative peak detection displays the lowest sample taken during theinterval being displayed.
POSitive: Positive peak detection displays the highest sample taken during theinterval being displayed.
SAMPle: Sample detection displays the sample taken during the interval being
displayed, and is used primarily to display noise or noise-like signals.

36 SSA3000X Programming GuideSIGLENT

ReturnDefault
Menu
ExampleIn sample mode, the instantaneous signal value at the present display point isplaced into memory. This detection should not be used to make the mostaccurate amplitude measurement of non noise-like signals.
AVERage: Average detection is used when measuring the average value of theamplitude across each trace interval (bucket). The averaging method used by
the average detector is set to either video or power as appropriate when the
average type is auto coupled.
NORMAL: Normal detection selects the maximum and minimum video signal
values alternately. When selecting Normal detection,”Norm”appears in theupper-left corner.
QUASi: Quasipeak detection is a form of detection where a signal level isweighted based on the repetition frequency of the spectral components making
up the signal. That is to say, the result of a quasi-peak measurement depends
on the repetition rate of the signal.
Enumeration
POSitive
Detect:DETector:TRAC1 AVERage

3.5.7 Average Subsection
3.5.7.1 Average Type ([:SENSe]:AVERage:TYPE)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:AVERage:TYPE LOGPower|POWer|VOLTage[:SENSe]:AVERage:TYPE?
Toggle the average type between Log power, power and voltage.
Enumeration
LOGPower|POWer|VOLTage
Enumeration
LOGPower
BW > Avg TypeAVERage:TYPE VOLTage

3.5.7.2 Average Number([:SENSe]:AVERage:TRACe[1]|2|3|4:COUNt)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:AVERage:TRACe[1]|2|3|4:COUNt <integer>[:SENSe]:AVERage:TRACe[1]|2|3|4:COUNt?
Specifies the number of measurements that are combined.
Integer
1 ~ 999
Integer
1
Trace > Avg Times:AVERage:TRACe1:COUNt 10

SSA3000X Programming Guide 37

SIGLENT

3.5.7.3 Average Restart([:SENSe]:AVERage:TRACe[1]|2|3|4:CLEar)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:AVERage:TRACe[1]|2|3|4:CLEar
Restarts the trace average. This command is only available when average is
on.
None
None
None
None
None
:AVERage:TRAC1:CLEar

3.5.8 Sweep Subsection
3.5.8.1 Sweep Mode ([:SENSe]:SWEep:MODE)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SWEep:MODE AUTO|FFT|SWEep[:SENSe]:SWEep: MODE?
Sets sweep mode.
Gets sweep mode.
Enumeration
AUTO|FFT|SWEep
Enumeration
SWEep
Sweep
:SWEep:MODE SWEep

3.5.8.2 Sweep Time ([:SENSe]:SWEep:TIME)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SWEep:TIME <time>[:SENSe]:SWEep:TIME?
Specifies the time in which the instrument sweeps the display. A span value of 0
Hz causes the analyzer to enter zero span mode. In zero span the X-axis
represents time rather than frequency.
Float, unit: ks, s, ms, us
917us ~ 1000 s
Float, unit: s312.416ms(216.288ms, 192.256ms, 168.224ms, 120.160ms)
Sweep > Sweep Time
:SWEep:TIME 5s

38 SSA3000X Programming GuideSIGLENT

3.5.8.3 Sweep Time State ([:SENSe]:SWEep:TIME:AUTO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SWEep:TIME:AUTO OFF|ON|0|1[:SENSe]:SWEep:TIME:AUTO?
This command turns on/off auto sweep time state.
Boolean
OFF|ON|0|1
0|1
ON
Sweep > Sweep Time
:SWEep:TIME:AUTO ON

3.5.8.4 Sweep Speed ([:SENSe]:SWEep:SPEed)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SWEep:SPEed NORMal|ACCUracy[:SENSe]:SWEep:SPEed?
Toggles the sweep speed between normal and accuracy.
Enumeration
ACCUracy|NORMal
Enumeration
NORMalSweep > Sweep Rule
:SWEep: SPEed NORMal

3.5.8.5 Sweep Numbers ([:SENSe]:SWEep:COUNt)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SWEep:COUNt <integer>[:SENSe]:SWEep:COUNt?
Sets sweep numbers, when single sweep on.
Gets sweep numbers, when single sweep on.
Integer
1 ~ 99999
Integer1
Sweep > Numbers:SWEep:COUNt 10

3.5.8.6 QPD Time([:SENSe]:QPD:DWELl:TIME)
CommandFormatInstruction
Parameter
Type
Parameter[:SENSe]:QPD:DWELl:TIME < time >[:SENSe]:QPD:DWELl:TIME?
Sets QPD Time
Gets QPD Time
Float，unit: s、ms、us
0us ~ 10s(qusai-peak: 900us ~ 30ks)
SSA3000X Programming Guide 39

SIGLENT
Range
ReturnDefault
Menu
ExampleFloat，unit: s
500ms
Sweep > QPD Time
:QPD:DWELl:TIME 10s

3.5.9 Display Subsection
3.5.9.1 Grid Brightness(:DISPlay:WINDow:TRACe:GRATicule:GRID:BRIGhtness)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:GRATicule:GRID:BRIGhtness <value>:DISPlay:WINDow:TRACe:GRATicule:GRID:BRIGhtness?
Sets grid brightness.
Gets grid brightness.
Integer0 ~ 100
Float
30%
Display > Grid Brightness:DISPlay:WINDow:TRACe:GRATicule:GRID:BRIGhtness 50

3.5.9.2 Display Line on-off(:DISPlay:WINDow:TRACe:Y:DLINe:STATe)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:Y:DLINe:STATe OFF|ON|0|1:DISPlay:WINDow:TRACe:Y:DLINe:STATe?
Toggles the display line between on and off.
Gets the display line state.
Enumeration
OFF|ON|0|1
0|1
OFF
Display > Display Line:DISPlay:WINDow:TRACe:Y:DLINe:STATe ON

3.5.9.3 Display Line (:DISPlay:WINDow:TRACe:Y:DLINe)
CommandFormatInstruction
Parameter
Type
Parameter
Range
Return:DISPlay:WINDow:TRACe:Y:DLINe <value>:DISPlay:WINDow:TRACe:Y:DLINe?
Sets the amplitude value for the display line.
Gets the amplitude value for the display line.
Float, unit: dBm
Ref Level ~ Ref Level - 100 dBm
Float, unit: dBm

40 SSA3000X Programming GuideSIGLENT
Default
Menu
Example0 dBm
Display > Display Line:DISPlay:WINDow:TRACe:Y:DLINe -10

3.6Calculate Subsystem
3.6.1 Marker Subsection
3.6.1.1 Marker On/Off (:CALCulate:MARKer[1]|2|3|4:STATe)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:STATe OFF|ON|0|1:CALCulate:MARKer[1]|2|3|4:STATe?
This command toggles the selected marker status between on and off.
Gets marker state.
Boolean
OFF|ON|0|1
0|1
OFFMarker:CALCulate:MARK1:STATe ON

3.6.1.2 Marker All Off (:CALCulate:MARKer:AOFF)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer:AOFF
Turn all the markers off.
None
None
None
None
None
:CALCulate:MARKer:AOFF

3.6.1.3 Marker Mode (:CALCulate:MARKer[1]|2|3|4:MODE)
CommandFormatInstruction
Parameter
Type
Parameter
Range:CALCulate:MARKer[1]|2|3|4:MODE POSition|DELTa|BAND|OFF:CALCulate:MARKer[1]|2|3|4:MODE?
Selects the type of markers that you want to activate.
Gets the type of markers.
Enumeration
POSition: selects a normal marker that can be positioned on a trace and fromwhich trace information will be generated.
DELTa: activates a pair of markers, one of which is fixed at the current marker
location. The other marker can then be moved around on the trace. The marker
readout shows the marker value which moves.
SSA3000X Programming Guide 41

SIGLENT

ReturnDefault
Menu
ExampleBAND: activates a pair of markers, one of which is fixed at the current marker
location. The two marker can then be moved around on the trace. The marker
readout shows the difference between the two markers.
OFF: turns the designated marker off. If a marker is not active when the modeis queried, “off” will be returned.
Enumeration
OFF
Marker:CALCulate:MARK1:MODE POSition

3.6.1.4 Marker to Trace (:CALCulate:MARKer[1]|2|3|4:TRACe)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:TRACe 1|2|3|4:CALCulate:MARKer[1]|2|3|4:TRACe?
This command assigns the specified marker to the designated trace 1, 2, 3 or 4.
Gets the specified marker to which trace.
Enumeration
1|2|3|4
Enumeration
1
Marker > Select Trace
CALCulate:MARK:TRAC 1

3.6.1.5 Marker Relative To(:CALCulate:MARKer[1]|2|3|4:RELative:TO)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:RELative:TO:MARKer 1|2|3|4:CALCulate:MARKer[1]|2|3|4:RELative:TO:MARKer?
Sets marker relative to.
Gets marker relative to.
Enumeration
1|2|3|4
Enumeration
1
Marker > Relative To:CALCulate:MARKer1:RELative:TO:MARK 3

3.6.1.6 Marker X Value (:CALCulate:MARKer[1]|2|3|4:X)
CommandFormatInstruction:CALCulate:MARKer[1]|2|3|4:X <para>:CALCulate:MARKer[1]|2|3|4:X?
This command positions the designated marker on its assigned trace at the
specified trace X value.
The value is in the X-axis units, which can be a frequency or time.
The query returns the current X value of the designated marker.
When the readout mode is frequency, the query returns the X value of the spanof the marker in integer and the unit is “Hz”.
When the readout mode is time or period, the query returns the X value of the
span of the marker in scientific notation and the unit is “s”.

42 SSA3000X Programming GuideSIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleReference Command::CALCulate:MARKer[1]|2|3|4:X:READout
Frequency: Float, unit: Hz, KHz, MHz, GHz, Default “Hz”
Time: Float, unit: us, ms, s, ks, Default “s”
0 Hz ~ 3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz) or 10 ms ~1000 sFloat
1.6 GHz(1.5 GHz, 1.05 GHz, 0.9 GHz, 0.75 GHz, 0.5 GHz) or 312.64 ms
Marker > Normal:CALCulate:MARKer4:X 0.4 GHz:CALCulate:MARKer4:X 200 ms:CALCulate:MARKer4:X?

3.6.1.7 Reference Marker X Value(:CALCulate:MARKer[1]|2|3|4:X:REFerence)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:X:REFerence <para>:CALCulate:MARKer[1]|2|3|4:X:REFerenc?
This command positions the designated reference marker on its assigned trace
at the specified trace X value.
The value is in the X-axis units, which can be a frequency or time.
The query returns the current X value of the designated reference marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
When the readout mode is frequency, the query returns the X value of the spanof the marker in integer and the unit is “Hz”.
When the readout mode is time or period, the query returns the X value of the
span of the marker in scientific notation and the unit is “s”.
Reference Command::CALCulate:MARKer[1]|2|3|4:X:READout
Frequency: Float, unit: Hz, KHz, MHz, GHz, Default “Hz”
Time: Float, unit: us, ms, s, ks, Default “s”
0 Hz ~ 3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz) or 10 ms ~1000 sFloat
1.6 GHz(1.5 GHz, 1.05 GHz, 0.9 GHz, 0.75 GHz, 0.5 GHz) or 312.64 ms
Marker > Delta Pair
:CALCulate:MARKer1:X:REFerence 1.6 GHz

3.6.1.8 Marker Delta X Value(:CALCulate:MARKer[1]|2|3|4:X:DELTa)
CommandFormatInstruction:CALCulate:MARKer[1]|2|3|4:X:DELTa <para>:CALCulate:MARKer[1]|2|3|4:X:DELTa?
This command positions the designated delta marker on its assigned trace atthe specified trace X value.
The value is in the X-axis units, which can be a frequency or time.
The query returns the current X value of the designated delta marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
When the readout mode is frequency, the query returns the X value of the spanof the marker in integer and the unit is “Hz”.
SSA3000X Programming Guide 43

SIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleWhen the readout mode is time or period, the query returns the X value of the
span of the marker in scientific notation and the unit is “s”.
Reference Command::CALCulate:MARKer[1]|2|3|4:X:READout
Frequency: Float, unit: Hz, KHz, MHz, GHz, Default “Hz”
Time: Float, unit: us, ms, s, ks, Default “s”
0 Hz ~ 3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz) or 10 ms ~1000 sFloat
0 Hz or 0 s
Marker > Delta Pair
:CALCulate:MARKer2:X:DELTa 1.6 GHz

3.6.1.9 Center Pair Marker X Value(:CALCulate:MARKer[1]|2|3|4:X:CENTer)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:X:CENTer <para>:CALCulate:MARKer[1]|2|3|4:X:CENTer?
Sets the center frequency of the center pair marker and the default unit is Hz.
Gets the center frequency of the center pair marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
When the readout mode is frequency, the query returns the X value of the spanof the marker in integer and the unit is “Hz”.
When the readout mode is time or period, the query returns the X value of the
span of the marker in scientific notation and the unit is “s”.
Reference Command::CALCulate:MARKer[1]|2|3|4:X:READout
Frequency: Float, unit: Hz, KHz, MHz, GHz, Default “Hz”
Time: Float, unit: us, ms, s, ks, Default “s”
0 Hz ~ 3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz) or 10 ms ~1000 sFloat
1.6 GHz(1.5 GHz, 1.05 GHz, 0.9 GHz, 0.75 GHz, 0.5 GHz) or 10 ms ~ 1000 s
Marker > Delta Pair > Center:CALCulate:MARKer3:X:CENTer 1.6 GHz

3.6.1.10 Span Pair Marker X Value(:CALCulate:MARKer[1]|2|3|4:X:SPAN)
CommandFormatInstruction:CALCulate:MARKer[1]|2|3|4:X:SPAN <para>:CALCulate:MARKer[1]|2|3|4:X:SPAN?
Sets the X value corresponding to the span of the Span Pair marker.
Gets the X value corresponding to the span of the Span Pair marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
When the readout mode is frequency, the query returns the X value of the spanof the marker in integer and the unit is “Hz”.
When the readout mode is time or period, the query returns the X value of the
span of the marker in scientific notation and the unit is “s”.
Reference Command::CALCulate:MARKer[1]|2|3|4:X:READout

44 SSA3000X Programming GuideSIGLENT
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleFrequency: Float, unit: Hz, KHz, MHz, GHz, Default “Hz”
Time: Float, unit: us, ms, s, ks, Default “s”
0 Hz ~ 3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz) or 10 ms ~1000 sFloat
0 Hz or0 s
Marker > Delta Pair > Span
:CALCulate:MARKer4:X:SPAN 2 GHz

3.6.1.11 Query Marker Y Value (:CALCulate:MARKer[1]|2|3|4:Y?)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:Y?
This command reads the current Y value for the designated marker.
This command can be used to read the results of noise marker.
Make sure that Marker is on, Reference Command::CALCulate:MARKer[1]|2|3|4:STATe:CALCulate:MARKer[1]|2|3|4:MODE
None
None
Float, unit: dBm
None
Marker > Normal:CALCulate:MARKer1:Y?
Return: -25

3.6.1.12 Reference Marker Y Value(:CALCulate:MARKer[1]|2|3|4:Y:REFerence?)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:Y:REFerence?
Gets the current Y value for the designated reference marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
None
None
Float, unit: dBm
None
Marker > Delta Pair
:CALCulate:MARKer1:Y:REFerence?
Return: -25

3.6.1.13 Marker Delta Y Value(:CALCulate:MARKer[1]|2|3|4:Y:DELTa?)
CommandFormat:CALCulate:MARKer[1]|2|3|4:Y:DELTa?

SSA3000X Programming Guide 45

SIGLENT
Instruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleGets the current Y value for the designated delta marker.
This command only can be used when marker mode is DELTa|BAND,
Reference Command::CALCulate:MARKer[1]|2|3|4:MODE
None
None
Float, unit: dBm
None
Marker > Delta Pair
:CALCulate:MARKer1:Y:DELTa?
Return: -25

3.6.1.14 Marker Table (:CALCulate:MARKer:TABLe)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer:TABLe ON|OFF|0|1:CALCulate:MARKer: TABLe?
Toggles the marker table between on and off.
Gets the status of the marker table.
Boolean
ON|OFF|0|10|10Marker > Marker Table:CALCulate:MARKer:TABLe ON

3.6.1.15 Marker to Start Frequency(:CALCulate:MARKer[1]|2|3|4[:SET]:START)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4[:SET]:START
Sets the start frequency to the value of the specified marker frequency. This
command is not available in zero span.
If the Marker is OFF, it will set the marker on center.
None
None
None
None
Marker > M→Start Freq
:CALCulate:MARKer1:START

3.6.1.16 Marker to Stop Frequency(:CALCulate:MARKer[1]|2|3|4[:SET]:STOP)
CommandFormatInstruction:CALCulate:MARKer[1]|2|3|4[:SET]:STOP
Sets the stop frequency to the value of the specified marker frequency. This

46 SSA3000X Programming GuideSIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Examplecommand is not available in zero span.
If the Marker is OFF, it will set the marker on center.
None
None
None
None
Marker > Marker→Stop Freq
:CALCulate:MARKer1:STOP

3.6.1.17 Marker to Center Frequency(:CALCulate:MARKer[1]|2|3|4[:SET]:CENTer)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4[:SET]:CENTer
This command sets the center frequency equal to the specified marker
frequency, which moves the marker to the center of the screen. This commandis not available in zero span.
If the Marker is OFF, it will set the marker on center.
None
None
None
None
Marker > M→CF:CALCulate:MARKer1:CENTer

3.6.1.18 Marker to Center Frequency Step(:CALCulate:MARKer[1]|2|3|4[:SET]:STEP)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4[:SET]:STEP
This command sets the center frequency step equal to the specified marker
frequency. This command is not available in zero span.
If the Marker is OFF, it will set the marker on center.
None
None
None
None
Marker > M→CF Step
:CALCulate:MARKer1:STEP

3.6.1.19 Marker to Reference Level(:CALCulate:MARKer[1]|2|3|4[:SET]:RLEVel)
CommandFormatInstruction:CALCulate:MARKer[1]|2|3|4[:SET]:RLEVel
This command sets the reference level equal to the specified marker frequency.
SSA3000X Programming Guide 47

SIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleIf the Marker is OFF, it will set the marker on center.
None
None
None
None
Marker > M→Ref Level:CALCulate:MARKer2:RLEVel

3.6.1.20 Marker Delta to Span(:CALCulate:MARKer[1]|2|3|4:DELTa[:SET]:SPAN)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:DELTa[:SET]:SPAN
This command sets the span equal to the specified delta marker frequency.
This command can be only used in DELTa|BAND marker mode, Reference
Command:CALCulate:MARKer[1]|2|3|4:MODE
None
None
None
None
Marker > △ M→Span:CALCulate:MARKer2:DELTa:SPAN

3.6.1.21 Marker Delta to Center Frequency(:CALCulate:MARKer[1]|2|3|4:DELTa[:SET]:CENTer)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:DELTa[:SET]:CENTer
This command sets the center frequency equal to the specified delta marker
frequency.
This command can be only used in DELTa|BAND marker mode, Reference
Command:CALCulate:MARKer[1]|2|3|4:MODE
None
None
None
None
Marker > △ M→CF:CALCulate:MARKer3:DELTa:CENTer

3.6.1.22 Peak Search Type(:CALCulate:MARKer:PEAK:SEARch:MODE)
CommandFormatInstruction:CALCulate:MARKer:PEAK:SEARch:MODE MAXimum|MINimum:CALCulate:MARKer:PEAK:SEARch:MODE?
This is for the analyzer’s internal peak identification routine to recognize a

48 SSA3000X Programming GuideSIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Examplesignal as a peak.
Enumeration
MAXimum|MINimum
Enumeration
MAXimum
Peak > Search Config > Peak Type:CALCulate:MARKer:PEAK:SEARch:MODE MINimum

3.6.1.23 Peak Threshold (:CALCulate:MARKer:PEAK:THReshold)CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer:PEAK:THReshold <value>:CALCulate:MARKer:PEAK:THReshold?
Specifies the minimum signal level for the analyzers internal peak identification
routine to recognize a signal as a peak. This applies to all traces and all
windows.
Gets the minimum signal level for the analyzers internal peak identification
routine to recognize a signal as a peak.
Float, unit: dBm-200.0 dBm~ 200.0 dBm
Float, unit: dBm-160.0 dBm
Peak > Search Config > Peak Threshold:CALCulate:MARKer:PEAK:THReshold -50

3.6.1.24 Peak Excursion (:CALCulate:MARKer:PEAK:EXCursion)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer:PEAK:EXCursion <value>:CALCulate:MARKer:PEAK:EXCursion?
Specifies the minimum signal excursion above the threshold for the internal
peak identification routine to recognize a signal as a peak.
Float, unit: dB
0 ~ 200.0dB
Float, unit: dB
0 dB
Peak > Search Config > Peak Excursion:CALCulate:MARKer:PEAK:EXCursion 10

3.6.1.25 Peak Table (:CALCulate:MARKer:PEAK:TABLe)
CommandFormatInstruction
Parameter
Type
Parameter
Range:CALCulate:MARKer:PEAK:TABLe ON|OFF|0|1:CALCulate:MARKer:PEAK:TABLe?
Toggles the peak table between on and off.
Gets the status of the peak table.
Boolean
ON|OFF|0|1
SSA3000X Programming Guide 49

SIGLENT
ReturnDefault
Menu
Example0|10
Peak > Peak Table:CALCulate:MARKer:PEAK:TABLe ON

3.6.1.26 Peak Sort By(:CALCulate:MARKer:PEAK:SORT)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer:PEAK:SORT FREQuency |AMPLitude:CALCulate:MARKer:PEAK:SORT?
Set the type of peak sort byGet the type of peak sort by
Enumeration
FREQuency: Frequency
AMPLitude: Amplitude
Enumeration: FREQ|AMPL
AMPLPeak > Search Config > Sort By:CALCulate:MARKer:PEAK:SORT FREQ

3.6.1.27 Query Peak Table Data (:CALCulate:PEAK:TABLe)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:PEAK:TABLe?
Turning peak table data.
None
None
StringNone
Peak: CALCulate:PEAK:TABLe?

3.6.1.28 Continuous Peaking Marker(:CALCulate:MARKer[1]|2|3|4:CPEak[:STATe])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:CPEak[:STATe] OFF|ON|0|1:CALCulate:MARKer[1]|2|3|4:CPEak[:STATe]?
Toggles the continuous peak search function between on and off.
Gets the continuous peak search function state.
Boolean
OFF|ON|0|1
0|1
None
Peak > Cont Peak
:CALCulate:MARKer1:CPEak ON

50 SSA3000X Programming GuideSIGLENT

3.6.1.29 Peak Search (:CALCulate:MARKer[1]|2|3|4:MAXimum)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:MAXimum
Performs a peak search based on the search mode settings.
(based on the search mode settings, include: peak search mode, peakthreshold and peak excursion, Reference Commands::CALCulate:MARKer:PEAK:SEARch:MODE:CALCulate:MARKer:PEAK:THReshold:CALCulate:MARKer:PEAK: EXCursion)
None
None
None
None
Peak
:CALCulate:MARKer4:MAXimum

3.6.1.30 Next Peak Search(:CALCulate:MARKer[1]|2|3|4:MAXimum:NEXT)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:MAXimum:NEXT
Places the selected marker on the next highest signal peak of the current
marked peak.
(based on the search mode settings, include: peak search mode, peakthreshold and peak excursion, Reference Commands::CALCulate:MARKer:PEAK:SEARch:MODE:CALCulate:MARKer:PEAK:THReshold:CALCulate:MARKer:PEAK: EXCursion)
None
None
None
None
Peak > Next Peak
:CALCulate:MARKer1:MAXimum:NEXT

3.6.1.31 Marker Peak Left Search(:CALCulate:MARKer[1]|2|3|4:MAXimum:LEFT)
CommandFormatInstruction

Parameter:CALCulate:MARKer[1]|2|3|4:MAXimum:LEFT
Places the selected marker on the next highest signal peak to the left of thecurrent marked peak.
(based on the search mode settings, include: peak search mode, peakthreshold and peak excursion, Reference Commands::CALCulate:MARKer:PEAK:SEARch:MODE:CALCulate:MARKer:PEAK:THReshold:CALCulate:MARKer:PEAK: EXCursion)
None
SSA3000X Programming Guide 51

SIGLENTType
Parameter
Range
ReturnDefault
Menu
Example

None
None
None
Peak > Next Left Peak
:CALCulate:MARKer1:MAXimum:LEFT

3.6.1.32 Marker Peak Right Search(:CALCulate:MARKer[1]|2|3|4:MAXimum:RIGHt)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:MAXimum:RIGHt
Places the selected marker on the next highest signal peak to the right of thecurrent marked peak.
(based on the search mode settings, include: peak search mode, peakthreshold and peak excursion, Reference Commands::CALCulate:MARKer:PEAK:SEARch:MODE:CALCulate:MARKer:PEAK:THReshold:CALCulate:MARKer:PEAK: EXCursion)
None
None
None
None
Peak > Next Right Peak
:CALCulate:MARKer1:MAXimum:RIGHt

3.6.1.33 Peak to Peak Search(:CALCulate:MARKer[1]|2|3|4:PTPeak)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:PTPeak
Positions a pair of delta markers on the highest and lowest points on the trace.
None
None
None
None
Peak > Peak Peak
:CALCulate:MARKer1:PTPeak

3.6.1.34 Marker Function (:CALCulate:MARKer[1]|2|3|4:FUNCtion)
CommandFormatInstruction
Parameter
Type:CALCulate:MARKer[1]|2|3|4:FUNCtion OFF|FCOunt|NOISe|NDB:CALCulate:MARKer[1]|2|3|4:FUNCtion?
This command selects the marker function for the designated marker.
Gets the selected marker function for the designated marker.
Enumeration

52 SSA3000X Programming GuideSIGLENT
Parameter
Range

ReturnDefault
Menu
ExampleOFF: refers to the normal function.
FCOunt: refers to the frequency counter function.
NOISe: refers to the noise measurement function.
NDB: refers to the N dB bandwith function.
Enumeration
OFF
Marker Fn:CALCulate:MARK1:FUNCtion FCOunt

3.6.1.35 Query Frequency Counter(:CALCulate:MARKer[1]|2|3|4:FCOunt:X?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:FCOunt:X?
To query the frequency counter
None
None
None
None
Marker Fn > Freq Counter:CALCulate:MARK:FCOunt:X?

3.6.1.36 N dB Bandwidth Result(:CALCulate:MARKer[1]|2|3|4:BANDwidth:RESult?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:BANDwidth:RESult?
Gets the result of N dB bandwidth measurement.
None
None
Float
None
Marker Fn > N dB BW:CALCulate:MARK1:BANDwidth:RESult?

3.6.1.37 N dB Bandwidth Reference Value(:CALCulate:MARKer[1]|2|3|4:BANDwidth[1]|2|3|4:RESult?)
CommandFormatInstruction
Parameter
Type
Parameter
Range:CALCulate:MARKer[1]|2|3|4:BANDwidth:NDB <value>:CALCulate:MARKer[1]|2|3|4:BANDwidth:NDB?
Sets the reference value of N dB bandwidth measurement.
Gets the reference value of N dB bandwidth measurement.
Float-100dB ~ 100dB

SSA3000X Programming Guide 53

SIGLENT
ReturnDefault
Menu
Example

Float
-3 dB
Marker Fn > N dB BW:CALCulate:MARK1:BANDwidth:NDB 10 DB

3.6.1.38 N dB Bandwidth Left and Right Frequency Points（ :CALCulate:MARKer[1]|2|3|4:BANDwidth:RLEFt|?）
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:BANDwidth:RLEFt?
:CALCulate:MARKer[1]|2|3|4:BANDwidth:RRIGht?
Get the frequency points around the N dB bandwidth
Float
0 Hz ~ 3.2 GHz（3.0 GHz、2.1 GHz、1.8 GHz、1.5 GHz、1.0 GHz）
Float
None
Marker Fn > N dB BW:CALCulate:MARKer1:BANDwidth:RRIGht?

3.6.1.39 Marker X-Axis Read Out(:CALCulate:MARKer[1]|2|3|4:X:READout)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:MARKer[1]|2|3|4:X:READout FREQuency|TIME|PERiod:CALCulate:MARKer[1]|2|3|4:X:READout?
Toggles the marker X-Axis readout between frequency, time and period.
Gets the marker X-Axis readout type.
Enumeration
FREQuency|TIME|PERiod
Enumeration
FREQuency
Marker Fn > Read Out:CALCulate:MARKer1:X:READout FREQuency

3.6.2 Limit Subsection
3.6.2.1 Limit Test Start (:CALCulate:LLINe:TEST:STARt)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu:CALCulate:LLINe:TEST:STARt
Sets limit test start.
None
None
None
None
Limit > Test

54 SSA3000X Programming GuideSIGLENT
Example:CALCulate:LLINe:TEST:STARt

3.6.2.2 Limit Test Stop (:CALCulate:LLINe:TEST:STOP)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe:TEST:STOP
Sets limit test stop.
None
None
None
None
Limit > Test
:CALCulate:LLINe:TEST:STOP

3.6.2.3 Gets Limit Test State (:CALCulate:LLINe:TEST:STATe?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe:TEST:STATe?
Gets limit test state.
None
None
0|1
OFF
Limit > Test
:CALCulate:LLINe:TEST:STAT?

3.6.2.4 Limit Line State (:CALCulate:LLINe[1]|2:STATe)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:STATe OFF|ON|0|1:CALCulate:LLINe[1]|2:STATe?
Sets limit line state.
Gets limit line state.
Boolean
OFF|ON|0|1
0|1

OFF
Limit > Limit1|2:CALCulate:LLINe1:STATe OFF

3.6.2.5 Limit Type (:CALCulate:LLINe[1]|2:TYPE)
CommandFormatInstruction:CALCulate:LLINe[1]|2:TYPE UPPer|LOWer:CALCulate:LLINe[1]|2:TYPE?
Mode sets a limit line to be either an upper or lower type limit line. An upper line
will be used as the maximum allowable value when comparing with the data.
Gets limit type.
SSA3000X Programming Guide 55

SIGLENT
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleEnumeration
UPPer|LOWer
Enumeration
The default setting of LINe1 is UPPer, the default setting of LINe2 is LOWer
Limit > Limit1|2 Edit > Type:CALCulate:LLINe1: TYPE LOWer

3.6.2.6 Limit Mode (:CALCulate:LLINe[1]|2:MODE)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:MODE LINE|POINt:CALCulate:LLINe[1]|2:MODE?
Sets limit mode
Gets limit mode
Enumeration
LINE|POINt
Enumeration
LINE
Limit > Limit1|2 Edit > Mode
:CALCulate:LLINe1: MODE POINt

3.6.2.7 Limit Line Y-axis Value (:CALCulate:LLINe[1]|2:Y)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:Y <value>:CALCulate:LLINe[1]|2:Y?
Sets the Y-axis value of a limit line. Limit line Y-axis value is set independently
and is not affected by the X-axis units.
Gets the Y-axis value of a limit line.
Float-400 dBm~330 dBm
Float
0dBm
Limit > Limit1|2 Edit > Amplitude:CALCulate:LLINe1:Y 5dBm

3.6.2.8 Define Limit Points Data (:CALCulate:LLINe[1]|2:DATA)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault:CALCulate:LLINe[1]|2:DATA <x-axis>,<ampl>{,<x-axis>, <ampl>}:CALCulate:LLINe[1]|2:DATA?
Use this command to define the limit points.
Gets the defined limit points.
X-axis: Float
Amplitude: Float
X-axis: 0~3.2GHz
Amplitude: -400 dBm~330 dBm
X-axis: Float
Amplitude: Float
X-axis: -1Hz

56 SSA3000X Programming GuideSIGLENT

Menu
ExampleAmplitude: 0 dBm
Limit > Limit1|2 Edit
:CALC:LLINe1:DATA 10000000,-20,20000000,-30

3.6.2.9 Add Limit Point Data (:CALCulate:LLINe[1]|2:DATA)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:ADD <x-axis>,<ampl>
Add limit point data
X-axis: Float
Amplitude: Float
X-axis: 0~3.2GHz
Amplitude: None
X-axis: Float
Amplitude: Float
X-axis: -1Hz
Amplitude: 0 dBm
Limit > Limit1|2 Edit
:CALCulate:LLINe1:ADD 10000000,-20

3.6.2.10 Delete Assigned Limit Point(:CALCulate:LLINe[1]|2:DELete)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:DELete <number>
Use this command to delete the assigned limit point.
Integer
None
None
None
Limit > Limit1|2 Edit > Del Point:CALCulate:LLINe1:DELete 2

3.6.2.11 Delete All Limit Points (:CALCulate:LLINe:ALL:DELete)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe[1]|2:ALL:DELete
Use this command to define all the limits points.
None
None
None
None
Limit > Limit1|2 Edit > Del All:CALCulate:LLINe2:ALL:DELete

SSA3000X Programming Guide 57

SIGLENT

3.6.2.12 Limit X-axis Unit (:CALCulate:LLINe:CONTrol:DOMain)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe:CONTrol:DOMain FREQuency|TIME:CALCulate:LLINe:CONTrol:DOMain?
Toggles the limit X-axis value between frequency and time.
Gets the limit X-axis unit.
Enumeration
FREQuency|TIME
Enumeration
FREQuency
Limit > Setup > X Axis
:CALCulate:LLINe:CONTrol:DOMain FREQuency

3.6.2.13 Limit Beep State (:CALCulate:LLINe:CONTrol:BEEP)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe:CONTrol:BEEP OFF|ON|0|1:CALCulate:LLINe:CONTrol:BEEP?
Use this command to turn on/off the limit beep status.
Gets limit beep state.
Boolean
OFF|ON|0|1
0|1
ON
Limit > Setup > Buzzer:CALCulate:LLINe:CONTrol:BEEP OFF

3.6.2.14 Query Limits Result (:CALCulate:LLINe:FAIL?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:LLINe:FAIL?
This query returns the limits pass/failed result. If the test result fails, thiscommand will get result FAIL. If the test result passes, it will get result PASS.
None
None
PASS|FAIL
None
None:CALCulate:LLINe:FAIL?

3.6.2.15 Limit Fail to Stop (:CALCulate:LLINe:FAIL:STOP)
CommandFormatInstruction
Parameter:CALCulate:LLINe:FAIL:STOP OFF|ON|0|1:CALCulate:LLINe:FAIL:STOP?
Sets whether to stop the test if the test fails.
Gets whether to stop the test if the test fails.
Boolean58 SSA3000X Programming GuideSIGLENTType
Parameter
Range
ReturnDefault
Menu
ExampleOFF|ON|0|1
0|1
OFF
Limit > Setup > Fail to stop
:CALCulate:LLINe:FAIL:STOP OFF

3.7Measurement Subsystem
3.7.1 ACPR Subsection
3.7.1.1 Main Channel ([:SENSe]:ACPRatio:BWIDth:INTegration)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:ACPRatio:BWIDth:INTegration <freq>[:SENSe]:ACPRatio:BWIDth:INTegration?
Specifies the range of integration used in calculating the power in the main
channel.
Gets the range of integration used in calculating the power in the main channel.
Float, unit: Hz, KHz, MHz, GHz
100 Hz~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
1MHz
Meas > ACPR > Meas Setup > Main Channel:ACPRatio:BWIDth:INTegration 20 MHz

3.7.1.2 Adjacent Channel Bandwidth([:SENSe]:ACPRatio:OFFSet:BWIDth[:INTegration])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:ACPRatio:OFFSet:BWIDth[:INTegration] <freq>[:SENSe]:ACPRatio:OFFSet:BWIDth[:INTegration]?
Specifies the bandwidth used in calculating the power in the adjacent channel.
Gets the bandwidth used in calculating the power in the adjacent channel.
Float, unit: Hz, KHz, MHz, GHz
100 Hz~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
1MHz
Meas > ACPR > Meas Setup > Adjacent Chn:ACPRatio:OFFSet:BWIDth 20 MHz

3.7.1.3 Channel Space([:SENSe]:ACPRatio:OFFSet[:FREQuency])
CommandFormat[:SENSe]:ACPRatio:OFFSet[:FREQuency] <freq>[:SENSe]:ACPRatio:OFFSet[:FREQuency]?
SSA3000X Programming Guide 59

SIGLENT
Instruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleSets the space value between the center frequency of main channel power andthat of the adjacent channel power.
Gets adjacent channel space
Float, unit: Hz, KHz, MHz, GHz
100 Hz~700 MHz
Float, unit: Hz
3MHz
Meas > ACPR > Meas Setup > Adj Chn Space:ACPRatio:OFFSets 20 MHz

3.7.1.4 Query Main Channel Power (:MEASure:ACPRatio:MAIN?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:ACPRatio:MAIN?
Return the main channel power of ACPR measurement.
None
None
Float, unit: dBm
None
Meas > ACPR
:MEASure:ACPRatio:MAIN?

3.7.1.5 Query Lower Adjacent Channel Power(:MEASure:ACPRatio:LOWer:POWer?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:ACPRatio:LOWer:POWer?
Return the lower adjacent channel power of ACPR measurement.
None
None
Float, unit: dBm
None
Meas > ACPR
:MEASure:ACPRatio:LOWer:POWer?

3.7.1.6 Query Lower Adjacent Channel Power Ratio(:MEASure:ACPRatio:LOWer?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
Return:MEASure:ACPRatio:LOWer?
Return the lower adjacent channel power to main channel power ratio.
None
None
Float, unit: dBm

60 SSA3000X Programming GuideSIGLENT
Default
Menu
ExampleNone
Meas > ACPR
:MEASure:ACPRatio:LOWer?

3.7.1.7 Query Upper Adjacent Channel Power(:MEASure:ACPRatio:UPPer:POWer?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:ACPRatio:UPPer:POWer?
Return the upper adjacent channel power of ACPR measurement.
None
None
Float, unit: dBm
None
Meas > ACPR
:MEASure:ACPRatio:UPPer:POWer?

3.7.1.8 Query Upper Adjacent Channel Power Ratio(:MEASure:ACPRatio:UPPer?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:ACPRatio:UPPer?
Return the upper adjacent channel power to main channel power ratio.
None
None
Float
None
Meas > ACPR
:MEASure:ACPRatio:UPPer?

3.7.2 CHP Subsection
3.7.2.1 Integration BW ([:SENSe]:CHPower:BWIDth:INTegration)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CHPower:BWIDth:INTegration <freq>[:SENSe]:CHPower:BWIDth:INTegration?
Specifies the integration bandwidth to calculate the power.
Gets the integration bandwidth.
Float, unit: Hz, KHz, MHz, GHz
100 Hz~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Zero Span: 0~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
2 MHz
Meas > Ch Power > Meas Setup > Integration BW:CHPower:BWIDth:INTegration 1.8 GHz

SSA3000X Programming Guide 61

SIGLENT

3.7.2.2 Channel Span([:SENSe]:CHPower:FREQuency:SPAN:POWer)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CHPower:FREQuency:SPAN:POWer
Sets the analyzer span for the channel power measurement. Be sure the span
is set larger than the integration bandwidth.
None
None
None
None
Meas > Ch Power > Meas Setup > Span
:CHPower:FREQuency:SPAN:POWer

3.7.2.3 Query Channel Power and Power Spectral Density(:MEASure:CHPower?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:CHPower?
This command returns scalar results of main channel power, and power density.
None
None
Float, Channel Power unit: dBm
Float, Density unit: dBm/Hz
None
Meas > Ch Power:MEASure:CHPower?

3.7.2.4 Query Channel Power (:MEASure:CHPower:CHPower?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:CHPower:CHPower?
This command returns the value of the channel power in dBm units.
None
None
Float
None
Meas > Ch Power:MEASure:CHPower:CHPower?

3.7.2.5 Query Power Spectral Density(:MEASure:CHPower:DENSity?)
CommandFormat:MEASure:CHPower:DENSity?

62 SSA3000X Programming GuideSIGLENT
Instruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleThis command returns the value of the channel power density in dBm/Hz.
None
None
Float
None
Meas > Ch Power:MEASure:CHPower:DENSity?

3.7.3 OBW Subsection
3.7.3.1 Select the Method of OBW ([:SENSe]:OBWidth:METHod)CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:OBWidth:METHod PERCent|DBC[:SENSe]:OBWidth:METHod?
This command toggles the method of OBW measurement between percent anddBc.
Gets the method of OBW measurement.
Enumeration
PERCent|DBC
Enumeration
PERCent
Meas > Occupied BW > Meas Setup > Method:OBW:METHod PERCent

3.7.3.2 Set Percentage(%) Method of OBW([:SENSe]:OBWidth:PERCent)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:OBWidth:PERCent <para>[:SENSe]:OBWidth:PERCent?
Edit the percentage of signal power used when determining the occupied
bandwidth. Press {%} to set the percentage ranging from 10.00% to 99.99%.
Gets the percentage of signal power.
Float
10~99.99
Float
99
Meas > Occupied BW > Meas Setup > %:OBW:PERCent 50

3.7.3.3 Set dBc Method of OBW ([:SENSe]:OBWidth:XDB)
CommandFormatInstruction[:SENSe]:OBWidth:XDB <value>[:SENSe]:OBWidth:XDB?
Specify the power level used to determine the emission bandwidth as thenumber of dB down from the highest signal point, within the occupied

SSA3000X Programming Guide 63

SIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Examplebandwidth span.
Gets dBc value.
Float
0.1~100
Float
26
Meas > Occupied BW > Meas Setup > dBc:OBWidth:XDB 3

3.7.3.4 Query OBW and Centroid (:MEASure:OBWidth?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:OBWidth?
Use this command to query the occupied bandwidth and bandwidth centroid
according to the method you set.
None
None
Float, unit: Hz
None
Meas > Occupied BW:MEASure:OBW?

3.7.3.5 Query OBW (:MEASure:OBWidth:OBWidth?)
CommandFormatInstruction

Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:OBWidth:OBWidth?
Use this command to query the occupied bandwidth according to the method
you set.
Query Centroid Result.
None
None
Float, unit: Hz
None
Meas > Occupied BW:MEASure:OBW:OBW?

3.7.3.6 Query OBW Centroid (:MEASure:OBWidth:CENTroid?)CommandFormatInstruction
Parameter
Type
Parameter
Range
Return:MEASure:OBWidth:CENTroid?
Use this command to query the occupied bandwidth according to the method
you set.
None
None
Float, unit: Hz

64 SSA3000X Programming GuideSIGLENT
Default
Menu
ExampleNone
Meas > Occupied BW: MEASure:OBW:CENTroid?

3.7.3.7 Query Transmit Frequency Error(:MEASure:OBWidth:OBWidth:FERRor?)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:OBWidth:OBWidth:FERRor?
Use this command to query transmit frequency error.
None
None
Float, unit: Hz
None
Meas > Occupied BW:MEASure:OBWidth:OBWidth:FERRor?

3.7.4 SubsectionT-power(T-Power)
3.7.4.1 T-power Center Frequency([:SENSe]:TPOWer:FREQuency:CENTer)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:TPOWer:FREQuency:CENTer <freq>[:SENSe]:TPOWer:FREQuency:CENTer?
Sets T-power center frequency.
Gets T-power center frequency.
Float, unit: Hz, KHz, MHz, GHz
50 Hz~3.199999950 GHz(2.999999950 GHz, 2.099999950 GHz, 1.799999950
GHz, 1.499999950 GHz, 0.999999950 GHz)
Zero Span: 0~3.2 GHz(3.0 GHz, 2.1 GHz, 1.8 GHz, 1.5 GHz, 1.0 GHz)
Float, unit: Hz
1.6GHz(1.5 GHz, 1.05 GHz, 0.9 GHz, 0.75 GHz, 0.5 GHz)
Meas > T-power > Meas Setup > Center Freq
:TPOWer:FREQuency:CENTer 15KHz

3.7.4.2 T-power Start Line ([:SENSe]:TPOWer:LLIMit)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu[:SENSe]:TPOWer:LLIMit <time>[:SENSe]:TPOWer:LLIMit?
Sets T-power start line.
Gets T-power start line.
Float, unit: ks, s, ms, us
0 ~ 1000 s
Float, time unit: s0
Meas > T-power > Meas Setup > Start Line
SSA3000X Programming Guide 65

SIGLENT
Example:TPOWer:LLIMit 0.01

3.7.4.3 T-power Stop Line ([:SENSe]:TPOWer:RLIMit)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:TPOWer:RLIMit <time>[:SENSe]:TPOWer:RLIMit?
Sets T-power stop line.
Gets T-power stop line.
Float, unit: ks, s, ms, us
0 ~ 1000 s
Float, time unit: s
20ms
Meas > T-power > Meas Setup > Stop Line
:TPOWer:RLIMit 0.02

3.7.4.4 Query T-power (:MEASure:TPOWer?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:TPOWer?
Query the result of T-power measurement.
Float, unit: dBm
None
Float, unit: dBm
None
Meas > T-power:MEASure:TPOWer?

3.7.5 Spectrum Monitor（SPECtrogram）
3.7.5.1 Spectrogram state([:SENSe]:SPECtrogram:STATe)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SPECtrogram:STATe RUN|PAUSe[:SENSe]:SPECtrogram:STATe?
Sets spectrogram state.
Gets spectrogram state.
Enumeration
RUN: Start
PAUSe: Pause
RUN|PAUSe
RUN
Meas > Spectrum Monitor > Meas Setup > Spectrogram:SPECtrogram:STATe PAUSe

66 SSA3000X Programming GuideSIGLENT

3.7.5.2 Spectrogram Restart ([:SENSe]:SPECtrogram:RESTart)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:SPECtrogram:RESTart
Restart spectrogram.
None
None
None
None
Meas > Spectrum Monitor > Meas Setup > Restart:SPECtrogram:RESTart

3.7.6 Third-order Intercept Point（TOI）
3.7.6.1 Query Third-order Intercept Point result(:MEASure:TOI?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:TOI?
Gets the result of Third-order Intercept Point
None
None
Float
None
Meas > TOI:MEASure:TOI?

3.7.6.2 Query Third-order Intercept Point(:MEASure:TOI:IP3?)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MEASure:TOI:IP3?
Gets the min intercept of the Lower TOI(Lower 3rd) and the Upper TOI(Upper
3rd)
None
None
Float
None
Meas > TOI:MEASure:TOI:IP3?

SSA3000X Programming Guide 67

SIGLENT

3.8Trigger Subsystem
3.8.1 Trigger Type (:TRIGger[:SEQuence]:SOURce)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:TRIGger[:SEQuence]:SOURce IMMediate|VIDeo|EXTernal:TRIGger[:SEQuence]:SOURce?
Specifies the source (or type) of triggering used to start a measurement.
Gets trigger type.
Enumeration
IMMediate: free-run triggering.
VIDeo: triggers on the video signal level.
EXTernal: allows you to connect an external trigger source.
Enumeration
IMMediate
Trigger:TRIGger:SOURce IMMediate

3.8.2 Video Trigger Level(:TRIGger[:SEQuence]:VIDeo:LEVel)
CommandFormatInstruction

Parameter
Type
Parameter
Range

ReturnDefault
Menu
Example:TRIGger[:SEQuence]:VIDeo:LEVel <value>:TRIGger[:SEQuence]:VIDeo:LEVel?
Specifies the level at which a video trigger will occur. Video is adjusted using
this command, but must also be selected using the command.
Gets video Trigger Level.
Float, unit: dBm, dBmV, dBuV, V, W
Unit is dBm: -300 dBm ~ 50 dBm
uni is dBmV: -253.01 dBmV ~ 96.99 dBmV
unit is dBuV: -193.01 dBuV ~ 156.99 dBuVunit is Volts: 223.61 aV ~ 70.71 V
unit is Watts: 1.00E-33 W ~ 100 W
Float, unit: dBm, dBmV, dBuV, V, W
0 dBm
Trigger > Video Level:TRIGger:VIDeo:LEVel 0.5 dBm

3.8.3 Trigger Edge(:TRIGger[:SEQuence]:RFBurst:SLOPe)
CommandFormatInstruction

Parameter
Type
Parameter:TRIGger[:SEQuence]:RFBurst:SLOPe POSitive|NEGative:TRIGger[:SEQuence]:RFBurst:SLOPe?
This command activates the trigger condition that allows the next sweep to startwhen the external voltage (connected to EXT TRIG IN connector) passes
through approximately 1.5 volts. The external trigger signal must be a 0V to+5V TTL signal. This function only controls the trigger polarity (for positive or
negative-going signals).
Gets Trigger edge.
Enumeration
POSitive: positive edge.

68 SSA3000X Programming GuideSIGLENT
Range
ReturnDefault
Menu
ExampleNEGative: negative edge.
Enumeration
POSitive
Trigger > External Trigger:TRIGger:RFBurst:SLOPe POSitive

3.9TG Subsystem
3.9.1 TG On-off (:OUTPut[:STATe])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:OUTPut[:STATe] OFF|ON|0|1:OUTPut[:STATe]?
Sets TG on-off.
Gets TG state.
Boolean
OFF|ON|0|1
0|10
TG > TG:OUTPut ON

3.9.2 TG Level(:SOURce:POWer[:LEVel][:IMMediate][:AMPLitude])CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:SOURce:POWer[:LEVel][:IMMediate][:AMPLitude] <value>:SOURce:POWer[:LEVel][:IMMediate][:AMPLitude]?
Sets TG level.
Gets TG level.
Float, unit: dBm
0 dBm ~ -20 dBm
Float
0 dBm
TG > TG Level:SOURce:POWer -20

3.9.3 TG Level OffSets(:SOURce:CORRection:OFFSet )CommandFormatInstruction
Parameter
Type
Parameter
Range
Return:SOURce:CORRection:OFFSet <value>:SOURce:CORRection:OFFSet?
Sets TG level offsets.
Gets TG level offsets.
Float, unit: dBm
200 dBm ~ -200 dBm
Float
SSA3000X Programming Guide 69

SIGLENT
Default
Menu
Example0 dBm
TG > Lel OffSets:SOURce:CORRection:OFFSet 1

3.9.4 TG Normalize on-off(:CALCulate:NTData[:STATe])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:CALCulate:NTData[:STATe] OFF|ON|0|1:CALCulate:NTData[:STATe]?
Sets TG normalize on-off.
Gets TG normalize state.
Boolean
OFF|ON|0|1
0|10
TG > Normalize > Normalize:CALCulate:NTData ON

3.9.5 TG Normalize Reference Level(:DISPlay:WINDow:TRACe:Y[:SCALe]:NRLevel)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:Y[:SCALe]:NRLevel <value>:DISPlay:WINDow:TRACe:Y[:SCALe]:NRLevel?
Sets TG normalize reference level.
Gets TG normalize reference level.
Float, unit: dB-200 dB ~ 200 dB
Float, unit: dB
0 dB
TG > Normalize > Ref Lvl:DISPlay:WINDow:TRACe:Y:NRLevel 10

3.9.6 TG Normalize Reference Position(:DISPlay:WINDow:TRACe:Y[:SCALe]:NRPosition)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:TRACe:Y[:SCALe]:NRPosition <integer>:DISPlay:WINDow:TRACe:Y[:SCALe]:NRPosition?
Sets TG normalize reference position.
Gets TG normalize reference position.
Integer0 ~ 100%
Float
100%
TG > Normalize > Position:DISPlay:WINDow:TRACe:Y:NRPosition 10

70 SSA3000X Programming GuideSIGLENT

3.9.7 TG Normalize Reference Trace on-off(:DISPlay:WINDow:NTTRace[:STATe])
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:DISPlay:WINDow:NTTRace[:STATe] OFF|ON|0|1:DISPlay:WINDow:NTTRace[:STATe]?
Sets TG normalize reference trace on-off.
Boolean
OFF|ON|0|1
0|10
TG > Normalize > Ref Trace:DISPlay:WINDow:NTTRace ON

3.10Demod Subsystem
3.10.1 Demod Mode ([:SENSe]:DEMod)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:DEMod AM|FM|OFF[:SENSe]:DEMod?
Sets demod mode.
Gets demod mode.
Enumeration
AM|FM|OFF
Enumeration
OFF
Demod
:DEMod AM

3.10.2 Demod Time ([:SENSe]:DEMod:TIME)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:DEMod:TIME <time>[:SENSe]:DEMod:TIME?
Sets demod time.
Gets demod time.
Float, unit: ms, us, s
5 ms ~1000 s
Float, unit: s
5 ms
Demod
DEMod:TIME 5 ms

3.10.3 Earphone ([:SENSe]:DEMod:EPHone)
CommandFormatInstruction[:SENSe]:DEMod:EPHone OFF|ON|0|1[:SENSe]:DEMod:EPHone?
Sets earphone on-off.
SSA3000X Programming Guide 71

SIGLENT

Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleGets earphone on-off.
Boolean
OFF|ON|0|1
0|1
OFF
Demod > Earphone:DEMod:EPHone ON

3.10.4 Volume ([:SENSe]:DEMod:VOLume)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:DEMod:VOLume <value>[:SENSe]:DEMod:VOLume?
Sets volume value.
Gets volume value.
Integer0 ~ 10Integer6
Demod > Volume:DEMod:EPHone ON

3.11Calibration Subsystem
3.11.1 Calibration on-off([:SENSe]:CALibration:STATe)CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example[:SENSe]:CALibration:STATe OFF|ON|0|1[:SENSe]:CALibration:STATe?
Sets calibration on-off.
Gets calibration on-off.
Boolean
OFF|ON|0|1
0|1
OFF
Syetem > Calibration > Auto Cal:CALibration:STATe ON

3.12Memory Subsystem
3.12.1Store File (:MMEMory:STORe)
CommandFormat:MMEMory:STORe STA|TRC|COR|CSV|LIM|JPG|BMP|PNG,<file>

72 SSA3000X Programming GuideSIGLENT
Instruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
ExampleStore file
String
None
None
None
File > Save
:MMEMory:STORe STA,ABC.sta

3.12.2Load File (:MMEMory:LOAD)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MMEMory:LOAD STA|TRC|COR|LIM,<file>
Load file
String
None
None
None
File > Open/Load:MMEMory:LOAD STA,ABC.sta

3.12.3Delete File (:MMEMory:DELete)
CommandFormatInstruction
Parameter
Type
Parameter
Range
ReturnDefault
Menu
Example:MMEMory:DELete <file>
Delete file or folder
String
None
None
None
File > Operate > Delete:MMEMory:DELete ABC.sta

SSA3000X Programming Guide 73

SIGLENT

4.Programming Examples
This chapter gives some examples for the programmer. In these examples you can see how
to use the VISA or sockets, in combination with the commands have been described above
to control the spectrum analyzer. By following these examples, you can develop many more
applications.

4.1Examples of Using VISA
4.1.1 Example of VC++
Environment: Win7 32bit system, Visual Studio
The functions of this example: use the NI-VISA, to control the device with USBTMC or
TCP/IP access to do a write and read.
Follow the steps to finish the example:
1、 Open Visual Studio, create a new VC++ win32 console project.
2、 Set the project environment to use the NI-VISA lib, there are two ways to use NI-VISA,
static or automatic:(1) Static: find files: visa.h, visatype.h, visa32.lib in NI-VISA install path. Copy them to yourproject, and add them into project. In the projectname.cpp file, add the follow two lines:#include "visa.h"#pragma comment(lib,"visa32.lib")(2) Automatic:
Set the .h file include directory, the NI-VISA install path, in our computer we set the path is:
C:\Program Files\IVI Foundation \VISA\WinNT\include. Set this path to project---properties--c/c++---General---Additional Include Directories: See the picture.

Set lib path set lib file:
Set lib path: the NI-VISA install path, in our computer we set the path is: C:\Program Files\IVI
Foundation\VISA\WinNT\lib\msc. Set this path to project---properties---Linker---General---Additional
Directories: as seen in the pictures below.

74 SSA3000X Programming Guide

LibrarySIGLENT

Set lib file:project---properties---Linker---Command Line---Additional Options: visa32.lib

Include visa.h file: In the projectname.cpp file:#include <visa.h>3、Add codes:(1)USBTMC access code.
Write a function Usbtmc_test:
int Usbtmc_test(){/* This code demonstrates sending synchronous read & write commands *//* to an USB Test & Measurement Class (USBTMC) instrument using *//* NI-VISA*//* The example writes the "*IDN?\n" string to all the USBTMC *//* devices connected to the system and attempts to read back *//* results using the write and read functions.
*//* The general flow of the code is *//* Open Resource Manager *//* Open VISA Session to an Instrument*//* Write the Identification Query Using viPrintf *//* Try to Read a Response With viScanf *//* Close the VISA Session *//***********************************************************/ViSessiondefaultRM;
ViSessioninstr;
ViUInt32numInstrs;
ViFindListfindList;
ViStatus status;char instrResourceString[VI_FIND_BUFLEN];
unsigned char buffer[100];inti;/** First we must call viOpenDefaultRM to get the manager* handle. We will store this handle in defaultRM.*/
status=viOpenDefaultRM (&defaultRM);
if (status<VI_SUCCESS){
printf ("Could not open a session to the VISA Resource Manager!\n");returnstatus;}
SSA3000X Programming Guide 75

SIGLENT/* Find all the USB TMC VISA resources in our system and store the number of resources in the system innumInstrs.*/
status = viFindRsrc (defaultRM, "USB?*INSTR", &findList, &numInstrs, instrResourceString);
if (status<VI_SUCCESS){
printf ("An error occurred while finding resources.\nPress 'Enter' to continue.");fflush(stdin);getchar();viClose (defaultRM);
returnstatus;}/** Now we will open VISA sessions to all USB TMC instruments.
* We must use the handle from viOpenDefaultRM and we must
* also use a string that indicates which instrument to open. This
* is called the instrument descriptor. The format for this string* can be found in the function panel by right clicking on the* descriptor parameter. After opening a session to the* device, we will get a handle to the instrument which we* will use in later VISA functions. The AccessMode and Timeout* parameters in this function are reserved for future* functionality. These two parameters are given the value VI_NULL.*/
for (i=0; i<int(numInstrs); i++){
if (i> 0){ viFindNext (findList, instrResourceString);} status = viOpen (defaultRM, instrResourceString, VI_NULL, VI_NULL, &instr);
if (status<VI_SUCCESS){
printf ("Cannot open a session to the device %d.\n", i+1);
continue;}/* * At this point we now have a session open to the USB TMC instrument.
* We will now use the viPrintf function to send the device the string "*IDN?\n",* asking for the device's identification. */char * cmmand ="*IDN?\n";status = viPrintf (instr, cmmand);if (status<VI_SUCCESS){
printf ("Error writing to the device %d.\n", i+1);
status = viClose (instr);
continue;}/** Now we will attempt to read back a response from the device to* the identification query that was sent. We will use the viScanf* function to acquire the data.
* After the data has been read the response is displayed.*/status = viScanf(instr, "%t", buffer);
if (status<VI_SUCCESS){ printf ("Error reading a response from the device %d.\n", i+1);} else{ printf ("\nDevice %d: %s\n", i+1, buffer);}status = viClose (instr);}/** Now we will close the session to the instrument using* viClose. This operation frees all system resources.
*/
status = viClose (defaultRM);
printf("Press 'Enter' to exit.");fflush(stdin);getchar();return 0;}
int _tmain(int argc, _TCHAR* argv[]){
Usbtmc_test();return 0;}

Run result.
76 SSA3000X Programming GuideSIGLENT(2)TCP/IP access code.
Write a function TCP_IP_Test:
int TCP_IP_Test(char *pIP){
char outputBuffer[VI_FIND_BUFLEN];
ViSessiondefaultRM, instr;
ViStatusstatus;/* First we will need to open the default resource manager. */status = viOpenDefaultRM (&defaultRM);
if (status<VI_SUCCESS){
printf("Could not open a session to the VISA Resource Manager!\n");}/* Now we will open a session via TCP/IP device */char head[256] ="TCPIP0::";char tail[] ="::INSTR";
strcat(head,pIP);
strcat(head,tail);
status = viOpen (defaultRM, head, VI_LOAD_CONFIG, VI_NULL, &instr);
if (status<VI_SUCCESS){
printf ("An error occurred opening the session\n");viClose(defaultRM);}
status = viPrintf(instr, "*idn?\n");status = viScanf(instr, "%t", outputBuffer);
if (status<VI_SUCCESS){
printf("viRead failed with error code: %x \n",status);
viClose(defaultRM);}else{ printf ("\nMesseage read from device: %*s\n", 0,outputBuffer);} status = viClose (instr);
status = viClose (defaultRM);
printf("Press 'Enter' to exit.");fflush(stdin);getchar(); return 0;}
int _tmain(int argc, _TCHAR* argv[]){
printf("Please input IP address:");char ip[256];
fflush(stdin);gets(ip);
TCP_IP_Test(ip);return 0;}

Run result.
SSA3000X Programming Guide 77

SIGLENT

4.1.2 Example of VB
Environment: Win7 32bit system, Microsoft Visual Basic 6.0
The function of this example: Use the NI-VISA, to control the device with USBTMC and
TCP/IP access to do a write and read.
Follow the steps to complete the example:
1、 Open Visual Basic, build a standard application program project (Standard EXE)
2、 Set the project environment to use the NI-VISA lib, Click the Existing tab of Project>>Add
Existing Item. Search for the visa32.bas file in the include folder under the NI-VISA
installation path and add the file.

This allows the VISA functions and VISA data types to be used in a program.
3、 Add codes:(1)USBTMC access code.
Write a function Usbtmc_test:
Private Function Usbtmc_test() As Long
' This code demonstrates sending synchronous read & write commands' to an USB Test & Measurement Class (USBTMC) instrument using' NI-VISA' The example writes the "*IDN?\n" string to all the USBTMC' devices connected to the system and attempts to read back' results using the write and read functions.
' The general flow of the code is' Open Resource Manager' Open VISA Session to an Instrument' Write the Identification Query Using viWrite' Try to Read a Response With viRead' Close the VISA Session
78 SSA3000X Programming GuideSIGLENT
Const MAX_CNT = 200
Dim defaultRM As Long
Dim instrsesn As Long
Dim numlnstrs As Long
Dim findList As Long
Dim retCount As Long
Dim status As Long
Dim instrResourceString As String * VI_FIND_BUFLEN
Dim Buffer As String * MAX_CNT
Dim i As Integer' First we must call viOpenDefaultRM to get the manager' handle. We will store this handle in defaultRM.
status = viOpenDefaultRM(defaultRM)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Could not open a session to the VISA Resource Manager!"
Usbtmc_test = status
Exit Function
End If' Find all the USB TMC VISA resources in our system and store the' number of resources in the system in numInstrs.
status = viFindRsrc(defaultRM, "USB?*INSTR", findList, numlnstrs, instrResourceString)If (status < VI_SUCCESS) Then
resultTxt.Text = "An error occurred while finding resources."
viClose (defaultRM)
Usbtmc_test = status
Exit Function
End If' Now we will open VISA sessions to all USB TMC instruments.
' We must use the handle from viOpenDefaultRM and we must
' also use a string that indicates which instrument to open. This
' is called the instrument descriptor. The format for this string' can be found in the function panel by right clicking on the' descriptor parameter. After opening a session to the' device, we will get a handle to the instrument which we' will use in later VISA functions. The AccessMode and Timeout' parameters in this function are reserved for future' functionality. These two parameters are given the value VI_NULL.
For i = 0 To numInstrs
If (i > 0) Thenstatus = viFindNext(findList, instrResourceString)
End Ifstatus = viOpen(defaultRM, instrResourceString, VI_NULL, VI_NULL, instrsesn)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Cannot open a session to the device " + CStr(i + 1)
GoTo NextFind
End If' At this point we now have a session open to the USB TMC instrument.
' We will now use the viWrite function to send the device the string "*IDN?",' asking for the device's identification.
status = viWrite(instrsesn, "*IDN?", 5, retCount)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Error writing to the device."
status = viClose(instrsesn)
GoTo NextFind
End If

SSA3000X Programming Guide 79

SIGLENT' Now we will attempt to read back a response from the device to' the identification query that was sent. We will use the viRead' function to acquire the data.
' After the data has been read the response is displayed.
status = viRead(instrsesn, Buffer, MAX_CNT, retCount)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Error reading a response from the device." + CStr(i + 1)
ElseresultTxt.Text = "Read from device: " + CStr(i + 1) + " " + Buffer
End Ifstatus = viClose(instrsesn)
Next i' Now we will close the session to the instrument using' viClose. This operation frees all system resources.
status = viClose(defaultRM)
Usbtmc_test = 0
End Function(2)TCP/IP access code.
Write a function TCP_IP_Test:
Private Function TCP_IP_Test(ByVal ip As String) As Long
Dim outputBuffer As String * VI_FIND_BUFLEN
Dim defaultRM As Long
Dim instrsesn As Long
Dim status As Long
Dim count As Long
' First we will need to open the default resource manager.
status = viOpenDefaultRM (defaultRM)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Could not open a session to the VISA Resource Manager!"
TCP_IP_Test = status
Exit Function
End If' Now we will open a session via TCP/IP device
status = viOpen(defaultRM, "TCPIP0::" + ip + "::INSTR", VI_LOAD_CONFIG, VI_NULL, instrsesn)
If (status < VI_SUCCESS) Then
resultTxt.Text = "An error occurred opening the session"viClose (defaultRM)
TCP_IP_Test = status
Exit Function
End Ifstatus = viWrite(instrsesn, "*IDN?", 5, count)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Error writing to the device."
End Ifstatus = viRead(instrsesn, outputBuffer, VI_FIND_BUFLEN, count)
If (status < VI_SUCCESS) Then
resultTxt.Text = "Error reading a response from the device." + CStr(i + 1)
ElseresultTxt.Text = "read from device:" + outputBuffer
End Ifstatus = viClose(instrsesn)
status = viClose(defaultRM)
TCP_IP_Test = 0
End Function(3) Button control code:
Private Sub exitBtn_Click()End
End Sub
Private Sub tcpipBtn_Click()
80 SSA3000X Programming GuideSIGLENT
Dim stat As Long
stat = TCP_IP_Test(ipTxt.Text)
If (stat < VI_SUCCESS) Then
resultTxt.Text = Hex(stat)
End IfEnd Sub
Private Sub usbBtn_Click()Dim stat As Long
stat = Usbtmc_test
If (stat < VI_SUCCESS) Then
resultTxt.Text = Hex(stat)
End IfEnd Sub

Run result:4.1.3 Example of MATLAB
Environment: Win7 32bit system, MATLAB R2013a
The function of this example: Use the NI-VISA, to control the device with USBTMC or
TCP/IP access to do a write and read.
Follow the steps to complete the example:
1、 Open MATLAB, modify the current directory. In this demo, the current directory is
modified to D:\USBTMC_TCPIP_Demo.
2、 Click File>>New>>Script in the Matlab interface to create an empty M file
3、 Add codes:(1)USBTMC access code
Write a function Usbtmc_test.
function USBTMC_test()% This code demonstrates sending synchronous read & write commands% to an USB Test & Measurement Class (USBTMC) instrument using% NI-VISA%Create a VISA-USB object connected to a USB instrument
vu = visa('ni','USB0::0xF4ED::0xEE3A::sdg2000x::INSTR');%Open the VISA object createdfopen(vu);%Send the string "*IDN?",asking for the device's identification.
SSA3000X Programming Guide 81

SIGLENT
fprintf(vu,'*IDN?');%Request the data
outputbuffer = fscanf(vu);disp(outputbuffer);%Close the VISA object
fclose(vu);delete(vu);clear vu;end

Run result:(
2)TCP/IP access code.
Write a function TCP_IP_Test:
function TCP_IP_test()% This code demonstrates sending synchronous read & write commands% to an TCP/IP instrument using NI-VISA%Create a VISA-TCPIP object connected to an instrument%configured with IP address.
vt = visa('ni',['TCPIP0::','10.11.13.32','::INSTR']);%Open the VISA object createdfopen(vt);%Send the string "*IDN?",asking for the device's identification.
fprintf(vt,'*IDN?');%Request the data
outputbuffer = fscanf(vt);disp(outputbuffer);%Close the VISA object
fclose(vt);delete(vt);clear vt;
end

Run result:4.1.4 Example of LabVIEW
Environment: Win7 32bit system, LabVIEW 2011
The functions of this example: use the NI-VISA, to control the device with USBTMC and
TCP/IP access to do a write and read.
82 SSA3000X Programming GuideSIGLENT
Follow the steps to complete the example:
1、 Open LabVIEW, create a VI file.
2、 Add controls. Right-click in the Front Panel interface, select and add VISA resource
name, error in, error out and some indicators from the Controls column.
3、 Open the Block Diagram interface. Right-click on the VISA resource name and you canselect and add the following functions from VISA Palette from the pop-up menu: VISA Write,
VISA Read, VISA Open and VISA Close.
4、 Connect them as shown in the figure below

5、 Select the device resource from the VISA Resource Name list box and run the program.

In this example, the VI opens a VISA session to a USBTMC device, writes a command to thedevice, and reads back the response. In this example, the specific command being sent isthe device ID query. Check with your device manufacturer for the device command set. Afterall communication is complete, the VI closes the VISA session.
6、Communicating with the device via TCP/IP is similar to USBTMC. But you need tochange VISA Write and VISA Read Function to Synchronous I/O. The LabVIEW default isasynchronous I/O. Right-click the node and select Synchronous I/O Mod>>Synchronous
from the shortcut menu to write or read data synchronously.
7、 Connect them as shown in the figure below

SSA3000X Programming Guide 83

SIGLENT

8、 Input the IP address and run the program.

84 SSA3000X Programming GuideSIGLENT

4.2Examples of Using Sockets/Telnet
4.2.1 Example of Python
Python is an interpreted programming language that lets you work quickly and is very
portable.Python has a low-level networking module that provides access to the socketinterface.Python scripts can be written for sockets to do a variety of test and measurements
tasks.
Environment: Win7 32bit system, Python v2.7.5
The functions of this example: Open a socket, sends a query, and closes the socket. It
does this loop 10 times.
Below is the code of the script:#!/usr/bin/env python#-*- coding:utf-8 –*#----------------------------------------------------------------------------# The short script is a example that open a socket, sends a query,# print the return message and closes the socket.
#----------------------------------------------------------------------------import socket # for sockets
import sys # for exit
import time # for sleep#----------------------------------------------------------------------------remote_ip = "10.11.13.32" # should match the instrument’s IP address
port = 5025 # the port number of the instrument service
count = 0
def SocketConnect():try:#create an AF_INET, STREAM socket (TCP)s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
except socket.error:
print ('Failed to create socket.')sys.exit();try:#Connect to remote servers.connect((remote_ip , port))
info = s.recv(4096)
print (info)
except socket.error:
print ('failed to connect to ip ' + remote_ip)
return s

def SocketQuery(Sock, cmd):
try :#Send cmd string
Sock.sendall(cmd)time.sleep(1)except socket.error:#Send failed
print ('Send failed')
sys.exit()
reply = Sock.recv(4096)
return reply
def SocketClose(Sock):#close the socket
SSA3000X Programming Guide 85

SIGLENT
Sock.close()time.sleep(.300)
def main():global remote_ip
global port
global count# Body: send the SCPI commands *IDN? 10 times and print the return message
s = SocketConnect()for i in range(10):qStr = SocketQuery(s, b'*IDN?')
print (str(count) + ":: " + str(qStr))count = count + 1 SocketClose(s)input('Press "Enter" to exit')
if __name__ == '__main__':proc = main()
Run result:4.2.2 Example of Telnet
Telnet SCPI: Provides the ability to send single SCPI commands from a remote PC to theanalyzer using LAN port number 5024.
How to send single SCPI commands using Telnet:
1. On the remote PC, click Start, then Run
2. Type: telnet <ip address> 5024
3. A Telnet window with a >> prompt should appear on the remote PC screen.
4. From the SCPI prompt:•

Type single SCPI commands. Press Enter to send the command.

86 SSA3000X Programming GuideSIGLENT•

To exit the telnet window click X in the upper-right corner.

•

To get a normal telnet prompt, press Ctrl ] (closing bracket).

•To get SCPI prompt again, type open <ip Address> 5024.

•

To close the normal telnet window, type Quit and press Enter.

SSA3000X Programming Guide 87