List of supported SCPI commands

LEDs and GPIOs

Parameter options:

  • <dir> = {OUT,IN}

  • <gpio> = {{DIO0_P...DIO7_P}, {DIO0_N...DIO7_N}}

  • <led> = {LED0...LED8}

  • <pin> = {gpio, led}

  • <state> = {0,1}

Table of correlated SCPI and API commands on Red Pitaya.

SCPI

API

description

DIG:PIN:DIR <dir>,<gpio>
Examples:
DIG:PIN:DIR OUT,DIO0_N
DIG:PIN:DIR IN,DIO1_P

rp_DpinSetDirection

Set direction of digital pins to output or input.

DIG:PIN <pin>,<state>
Examples:
DIG:PIN DIO0_N,1
DIG:PIN LED2,1

rp_DpinSetState

Set state of digital outputs to 1 (HIGH) or 0 (LOW).

DIG:PIN? <pin> > <state>
Examples:
DIG:PIN? DIO0_N
DIG:PIN? LED2

rp_DpinGetState

Get state of digital inputs and outputs.

Analog Inputs and Outputs

Parameter options:

  • <ain> = {AIN0, AIN1, AIN2, AIN3}

  • <aout> = {AOUT0, AOUT1, AOUT2, AOUT3}

  • <pin> = {ain, aout}

  • <value> = {value in Volts}

SCPI

API

description

ANALOG:PIN <pin>,<value>
Examples:
ANALOG:PIN AOUT2,1.34

rp_ApinSetValue

Set analog voltage on slow analog outputs.
Voltage range of slow analog outputs is: 0 - 1.8 V
ANALOG:PIN? <pin> > <value>
Examples:
ANALOG:PIN? AOUT2 > 1.34
ANALOG:PIN? AIN1 > 1.12

rp_ApinGetValue

Read analog voltage from slow analog inputs.
Voltage range of slow analog inputs is: 0 3.3 V

Signal Generator

Parameter options:

  • <n> = {1,2} (set channel OUT1 or OUT2)

  • <state> = {ON,OFF} Default: OFF

  • <frequency> = {0Hz...62.5e6Hz} Default: 1000

  • <func> = {SINE, SQUARE, TRIANGLE, SAWU, SAWD, PWM, ARBITRARY, DC, DC_NEG} Default: SINE

  • <amplitude> = {-1V...1V} Default: 1 for SIGNALlab 250-12 this value {-5V…5V}

  • <offset> = {-1V...1V} Default: 0

  • <phase> = {-360deg ... 360deg} Default: 0

  • <dcyc> = {0...1} Default: 0.5 Where 1 corresponds to 100%

  • <array> = {value1, ...} max. 16k values, floats in the range -1 to 1

  • <burst> = {BURST , CONTINUOUS} Default: CONTINUOUS

  • <count> = {1...50000, INF} INF = infinity/continuous, Default: 1

  • <time> = {1us-500s} Value in us.

  • <trigger> = {EXT_PE, EXT_NE, INT, GATED}
    • EXT = External

    • INT = Internal

    • GATED = gated busts

SCPI

API

description

OUTPUT:STATE <state>
Examples:
OUTPUT:STATE ON
rp_GenOutEnableSync

Runs or Stop two channels synchronously

OUTPUT<n>:STATE <state>
Examples:
OUTPUT1:STATE ON
rp_GenOutEnable
rp_GenOutDisable
Disable or enable fast analog outputs.
SOUR<n>:FREQ:FIX <frequency>
Examples:
SOUR2:FREQ:FIX 100000

rp_GenFreq

Set frequency of fast analog outputs.

SOUR<n>:FUNC <func>
Examples:
SOUR2:FUNC TRIANGLE

rp_GenWaveform

Set waveform of fast analog outputs.

SOUR<n>:VOLT <amplitude>
Examples:
SOUR2:VOLT 0.5

rp_GenAmp

Set amplitude voltage of fast analog outputs.
Amplitude + offset value must be less than maximum output range ± 1V
SOUR<n>:VOLT:OFFS <offset>
Examples:
SOUR1:VOLT:OFFS 0.2

rp_GenOffset

Set offset voltage of fast analog outputs.
Amplitude + offset value must be less than maximum output range ± 1V
SOUR<n>:PHAS <phase>
Examples:
SOUR2:PHAS 30

rp_GenPhase

Set phase of fast analog outputs.

SOUR<n>:DCYC <par>
Examples:
SOUR1:DCYC 0.2

rp_GenDutyCycle

Set duty cycle of PWM waveform.

SOUR<n>:TRAC:DATA:DATA <array>
Examples:
SOUR1:TRAC:DATA:DATA
1,0.5,0.2

rp_GenArbWaveform

Import data for arbitrary waveform generation.

SOUR<n>:BURS:STAT <burst>
Examples:
SOUR1:BURS:STAT BURST
SOUR1:BURS:STAT CONTINUOUS

rp_GenMode

Enable or disable burst (pulse) mode. Red Pitaya will generate R number of N periods of signal and then stop. Time between bursts is P.

SOUR<n>:BURS:NCYC <count>
Examples:
SOUR1:BURS:NCYC 3

rp_GenBurstCount

Set N number of periods in one burst.

SOUR1:BURS:NOR <count>
Examples:
SOUR1:BURS:NOR 5

rp_GenBurstRepetitions

Set R number of repeated bursts.

SOUR1:BURS:INT:PER <time>
Examples:
SOUR1:BURS:INT:PER 1000000

rp_GenBurstPeriod

Set P total time of one burst in in micro seconds. This includes the signal and delay.

SOUR<n>:TRIG:SOUR <trigger>
Examples:
SOUR1:TRIG:SOUR EXT

rp_GenTriggerSource

Set trigger source for selected signal.

SOUR:TRIG:IMM

Examples:
SOUR:TRIG:IMM

rp_GenTrigger

Triggers selected source immediately for two channels
SOUR<n>:TRIG:IMM

Examples:
SOUR1:TRIG:IMM

rp_GenTrigger

Triggers selected source immediately for selected channel
GEN:RST

Reset generator to default settings.

GEN:SYNC

Reset two generators at the simultaneously.

Acquire

Parameter options:

  • <n> = {1,2} (set channel IN1 or IN2)

Control

SCPI

API

description

ACQ:START

rp_AcqStart

Starts acquisition.

ACQ:STOP

rp_AcqStop

Stops acquisition.

ACQ:RST

rp_AcqReset

Stops acquisition and sets all parameters to default values.

Sampling rate & decimation

Parameter options:

  • <decimation> = {1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536} Default: 1

  • <average> = {OFF,ON} Default: ON

SCPI

API

description

ACQ:DEC <decimation>

rp_AcqSetDecimation

Set decimation factor.

ACQ:DEC? > <decimation>
Example:
ACQ:DEC? > 1

rp_AcqGetDecimation

Get decimation factor.

ACQ:AVG <average>

rp_AcqSetAveraging

Enable/disable averaging.

ACQ:AVG? > <average>
Example:
ACQ:AVG? > ON

rp_AcqGetAveraging

Get averaging status.

Trigger

Parameter options:

  • <source> = {DISABLED, NOW, CH1_PE, CH1_NE, CH2_PE, CH2_NE, EXT_PE, EXT_NE, AWG_PE, AWG_NE} Default: DISABLED

  • <status> = {WAIT, TD}

  • <time> = {value in ns}

  • <counetr> = {value in samples}

  • <gain> = {LV, HV}

  • <level> = {value in V}

  • <mode> = {AC,DC}

SCPI

API

DESCRIPTION

ACQ:TRIG <source>
Example:
ACQ:TRIG CH1_PE

rp_AcqSetTriggerSrc

Disable triggering, trigger immediately or set trigger source & edge.

ACQ:TRIG:STAT?
Example:
ACQ:TRIG:STAT? > WAIT

rp_AcqGetTriggerState

Get trigger status. If DISABLED -> TD else WAIT.

ACQ:TRIG:DLY <time>
Example:
ACQ:TRIG:DLY 2314

rp_AcqSetTriggerDelay

Set trigger delay in samples.

ACQ:TRIG:DLY? > <time>
Example:
ACQ:TRIG:DLY? > 2314

rp_AcqGetTriggerDelay

Get trigger delay in samples.

ACQ:TRIG:DLY:NS <time>
Example:
ACQ:TRIG:DLY:NS 128

rp_AcqSetTriggerDelayNs

Set trigger delay in ns.

ACQ:TRIG:DLY:NS? > <time>
Example:
ACQ:TRIG:DLY:NS? > 128ns

rp_AcqGetTriggerDelayNs

Get trigger delay in ns.

ACQ:SOUR<n>:GAIN <gain>

Example:
ACQ:SOUR1:GAIN LV

rp_AcqSetGain

Set gain settings to HIGH or LOW
(For SIGNALlab 250-12 this is 1:20 and 1:1 attenuator).
This gain is referring to jumper settings on Red Pitaya fast analog inputs.
ACQ:SOUR<n>:COUP <mode>
Example:
ACQ:SOUR1:COUP AC

rp_AcqSetAC_DC

Sets the AC / DC modes for input. (Only SIGNALlab 250-12)

ACQ:SOUR<n>:COUP? > <mode>
Example:
ACQ:SOUR1:COUP? > AC

rp_AcqGetAC_DC

Get the AC / DC modes for input. (Only SIGNALlab 250-12)

ACQ:TRIG:LEV <level>
Example:
ACQ:TRIG:LEV 125 mV

rp_AcqSetTriggerLevel

Set trigger level in mV.

ACQ:TRIG:LEV? > level
Example:
ACQ:TRIG:LEV? > 123 mV

rp_AcqGetTriggerLevel

Get trigger level in mV.

ACQ:TRIG:EXT:LEV <level>
Example:
ACQ:TRIG:EXT:LEV 1

rp_AcqSetTriggerLevel

Set trigger external level in V. (Only SIGNALlab 250-12)

ACQ:TRIG:EXT:LEV? > level
Example:
ACQ:TRIG:EXT:LEV? > 1

rp_AcqGetTriggerLevel

Get trigger external level in V. (Only SIGNALlab 250-12)

Data pointers

Parameter options:

  • <pos> = {position inside circular buffer}

SCPI

API

DESCRIPTION

ACQ:WPOS? > pos
Example:
ACQ:WPOS? > 1024

rp_AcqGetWritePointer

Returns current position of write pointer.

ACQ:TPOS? > pos
Example:
ACQ:TPOS? > 512

rp_AcqGetWritePointerAtTrig

Returns position where trigger event appeared.

Data read

  • <units> = {RAW, VOLTS}

  • <format> = {FLOAT, ASCII} Default FLOAT

SCPI

API

DESCRIPTION

ACQ:DATA:UNITS <units>
Example:
ACQ:GET:DATA:UNITS RAW

rp_AcqScpiDataUnits

Selects units in which acquired data will be returned.

ACQ:DATA:FORMAT <format>
Example:
ACQ:GET:DATA:FORMAT ASCII

rp_AcqScpiDataFormat

Selects format acquired data will be returned.

ACQ:SOUR<n>:DATA:STA:END? >
<start_pos>,<end_pos>
Example:
ACQ:SOUR1:GET:DATA 10,13 >
{123,231,-231}
rp_AcqGetDataPosRaw
rp_AcqGetDataPosV
Read samples from start to stop position.
<start_pos> = {0,1,...,16384}
<stop_pos> = {0,1,...116384}
ACQ:SOUR<n>:DATA:STA:N?
<start_pos>,<m> > ...
Example:
ACQ:SOUR1:DATA? 10,3 >
{1.2,3.2,-1.2}
rp_AcqGetDataRaw
rp_AcqGetDataV

Read m samples from start position on.

ACQ:SOUR<n>:DATA?
Example:
ACQ:SOUR2:DATA? >
{1.2,3.2,...,-1.2}
rp_AcqGetOldestDataRaw
rp_AcqGetOldestDataV
Read full buf.
Size starting from oldest sample in buffer (this is first sample after trigger delay).
Trigger delay by default is set to zero (in samples or in seconds).
If trigger delay is set to zero it will read full buf. size starting from trigger.
ACQ:SOUR<n>:DATA:OLD:N?<m>
Example:
ACQ:SOUR2:DATA:OLD? 3 >
{1.2,3.2,-1.2}
rp_AcqGetOldestDataRaw
rp_AcqGetOldestDataV
Read m samples after trigger delay, starting from oldest sample in buffer
(this is first sample after trigger delay).
Trigger delay by default is set to zero (in samples or in seconds).
If trigger delay is set to zero it will read m samples starting from trigger.
ACQ:SOUR<n>:DATA:LAT:N?<m>
Example:
ACQ:SOUR1:DATA:LAT? 3 >
{1.2,3.2,-1.2}
rp_AcqGetLatestDataRaw
rp_AcqGetLatestDataV
Read m samples before trigger delay.
Trigger delay by default is set to zero (in samples or in seconds).
If trigger delay is set to zero it will read m samples before trigger.
ACQ:BUF:SIZE? > <size>
Example:
ACQ:BUF:SIZE? > 16384

rp_AcqGetBufSize

Returns buffer size.