R&S FSL  SCPI Command Structure and Syntax 
1300.2519.12 5.5  E-11 
SCPI Command Structure and Syntax 
S
CPI (Standard Commands for Programmable Instruments) describes a standard command set for 
programming instruments, irrespective of the type of instrument or manufacturer. The goal of the SCPI 
consortium is to standardize the device–specific commands to a large extent. For this purpose, a model 
was developed which defines the same functions inside a device or for different devices. Command 
systems were generated which are assigned to these functions. Thus it is possible to address the same 
functions with identical commands. The command systems are of a hierarchical structure. 
SCPI is based on standard IEEE 488.2, i.e. it uses the same syntactic basic elements as well as the 
common commands defined in this standard. Part of the syntax of the device responses is defined with 
greater restrictions than in standard IEEE 488.2 (see section "Responses to Queries"). 
 
Structure of a Command 
The commands consist of a so–called header and, in most cases, one or more parameters. Header and 
parameter are separated by a "white space" (ASCII code 0 to 9, 11 to 32 decimal, e.g. blank). The 
headers may consist of several key words. Queries are formed by directly appending a question mark to 
the header. 
 
Note:  Not all commands used in the following examples are implemented in the instrument. 
Common commands 
Common commands consist of a header preceded by an asterisk "*" and one or several parameters, if 
any. 
 
Examples: 
*RST 
RESET, resets the device 
 
*ESE 253 
EVENT STATUS ENABLE, sets the bits of the event status enable 
register 
 
*ESR?  
EVENT STATUS QUERY, queries the contents of the event status 
register. 
 
Device–specific commands 
• Hierarchy 
Device–specific commands are of hierarchical structure (see Fig. 5–1). The different levels are 
represented by combined headers. Headers of the highest level (root level) have only one key word. 
This key word denotes a complete command system. 
Example: SENSe 
This key word denotes the SENSe command system. 
For commands of lower levels, the complete path has to be specified, starting on the left with the 
highest level, the individual key words being separated by a colon ":".  
Example: SENSe:FREQuency:SPAN 10MHZ 
This command lies in the third level of the SENSe system. It sets the frequency span.