3.5.7. Known SCPI & API issues and changes by OS version
Here, you can find a list of known SCPI & API command issues and changes listed by the Red Pitaya OS release version.
If you are facing an issue with one of the examples, a command is not working, or your code does not work, we suggest checking the known issues list from the latest OS release to your current OS version for any applicable changes.
How to find all available SCPI commands per OS version?
Use the SYSTem:Help? (2.04-35) SCPI command, which lists all available SCPI commands.
You can also find all SCPI commands that the board will accept depending on the Red Pitaya OS version here:
Latest Beta OS: Red Pitaya GitHub - scpi-server/src/scpi-commands.cpp.
For all other Red Pitaya OS versions, go to the link above and change the branch version to:
2.07-48 - Branch 2025.2 (file ends in .cpp).
2.07-43 - Branch 2025.1 (file ends in .cpp).
2.05-37 - Branch 2024.3 (file ends in .cpp).
2.04-35 - Branch 2024.2 (file ends in .cpp).
2.00-30 - Branch 2024.1 (file ends in .cpp).
2.00-23 - Branch 2023.3 (file ends in .cpp).
2.00-18 - Branch 2023.2 (file ends in .c).
2.00-15 - Branch 2023.1 - Red Pitaya GitHub 2023.1- scpi-server/src/scpi-commands.c (file ends in .c).
1.04-28 - Branch 2022.2 (file ends in .c).
1.04-18 - Branch 2022.1 (file ends in .c).
..! TODO - add new commands and issues to the list
2.05-37
New Commands
Split trigger commands for standard acquisition and DMA (currently 4-Input only) - same as existing commands, but end with “CH”.
LCR meter commands (LCR mode).
DMA API commands to return data as Numpy array (
rp_AcqAxiGetDataRawNP(channel, pos, np_buffer),rp_AcqAxiGetDataVNP). Check /opt/redpitaya/lib/python/rp.py on the Red Pitaya board for more options.Acquisition API commands to return data as Numpy array (
rp_AcqGetDataPosRawNP,rp_AcqGetDataPosVNP,rp_AcqGetLatestDataRawNP, etc.). Check /opt/redpitaya/lib/python/rp.py on the Red Pitaya board for more options.Acquisition get data around trigger postion
ACQ:SOUR<n>:DATA:TRig? <size>,<t_pos>.Burst Init and Last value commands:
SOUR<n>:BURS:INITValue <amplitude>andSOUR<n>:BURS:LASTValue <amplitude>- the same functionality asSOUR<n>:INITValue <amplitude>andSOUR<n>:LASTValue <amplitude>.Additional sweep command
SOUR:SWeep:DEFault.
Command changes
SYSTem:DATE "<year>-<month>-<day>"- now accepts the “standard” date-time formatting with dashes in between instead of commas.
Issues
Split trigger commands work only on STEMlab 125-14 4-Input.
2.04-35
New Commands
SYSTem:Help?- displays all available SCPI commands.SWEEP SCPI commands (Sweep mode extended).
PLL SCPI commands for SIGNALlab 250-12 only (Phase locked loop).
SOUR<n>:FREQ:FIX:Direct <frequency>- change the frequency setting directly in the FPGA.SOUR<n>:LOAD <load_mode>- Select output load (50 Ohm or INF) for SIGNALlab 250-12.
Command changes
Changed
ACQ:TRig:EXT:LEVtoTRig:EXT:LEV(generation and acquisition share this command).Changed
DAISY:TRIG_O:ENabletoDAISY:TRig:Out:ENable.Changed
DAISY:TRIG_O:SOURtoDAISY:TRig:Out:SOUR.For all SCPI commands
TRIGwas renamed toTRig(does not affect the backwards compatibility).Renamed
SOUR:TRIG:EXT:DEBouncerUstoSOUR:TRig:EXT:DEBouncer[:US](the previous command was misleading - will not be reverted).Renamed
ACQ:TRIG:EXT:DEBouncerUstoACQ:TRig:EXT:DEBouncer[:US](the previous command was misleading - will not be reverted).ACQ:SOUR<n>:DATA:Start:End?toACQ:SOUR<n>:DATA:STArt:End?(backwards compatible with 2.00-23 and older).ACQ:SOUR<n>:DATA:Start:N?toACQ:SOUR<n>:DATA:STArt:N?(backwards compatible with 2.00-23 and older).ACQ:SOUR<n>:DATA:Last:N?toACQ:SOUR<n>:DATA:LATest:N?(backwards compatible with 2.00-23 and older).
Issues
Sweep mode automatically starts changing frequency as soon as it is turned on regardless of whether the output is turned on or generator trigger happened or not.
SOUR<n>:TRIG:SOUR?- stuck in an infinite loop, does not return.SOUR<n>:FUNC?,SOUR<n>:VOLT?,SOUR<n>:Sweep:STAT?,SOUR<n>:Sweep:FREQ:START?- all return in format “Nonern<actual value>rn” (the next command ending in?will return in multiple lines, creating unexpected returns).Specific SCPI CAN commands to fetch data can result in an endless loop in Python if the parameters are not yet specified or the interface is disabled (
CAN:FPGA?,CAN<n>:STATE?, etc.).
2.00-30
New commands
ACQ:DEC:F <decimation_ext>command - better version ofACQ:DECcommand.CAN commands (CAN).
Command changes
For all SCPI commands
TRIGwas renamed toTRig(does not affect the backwards compatibility).ACQ:SOUR<n>:DATA:STA:END?toACQ:SOUR<n>:DATA:Start:End?.ACQ:SOUR<n>:DATA:STA:N?toACQ:SOUR<n>:DATA:Start:N?.ACQ:SOUR<n>:DATA:OLD:N?toACQ:SOUR<n>:DATA:Old:N?(does not affect the backwards compatibility).ACQ:SOUR<n>:DATA:LAT:N?toACQ:SOUR<n>:DATA:Last:N?.ACQ:DATA:UNITStoACQ:DATA:Units(does not affect the backwards compatibility).SOUR:TRIG:EXT:DEBouncerUstoSOUR:TRig:EXT:DEBouncer[:US](the previous command was misleading - will not be reverted).ACQ:TRIG:EXT:DEBouncerUstoACQ:TRig:EXT:DEBouncer[:US](the previous command was misleading - will not be reverted).UART:READ#toUART:READ#?.I2C:Smbus:Read#toI2C:Smbus:Read#?.I2C:Smbus:Read#:WordtoI2C:Smbus:Read#:Word?.I2C:Smbus:Read#:Buffer#toI2C:Smbus:Read#:Buffer#?.I2C:IOctl:Read:Buffer#toI2C:IOctl:Read:Buffer#?.
Issues
Note
TEMPORARY CHANGE OF COMMANDS We realized this command renaming is not backwards compatible, so we will be reverting it to the old version with the next OS update.
2.00-23
New commands
Python API buffer commands:
rp_createBuffer(<maxChannels>, <length>, <initInt16>, <initDouble>, <initFloat>).rp_deleteBuffer(<buffer>).
Issues
Deep Memory Acquisition does not work on SDRlab 122-16 (upgrade to 2.00-30).
2.00-18
New commands
Board Control Commands:
SYSTem:TIME <hours>,<minutes>,<seconds>.SYSTem:TIME?.SYSTem:DATE <year>,<month>,<day>.SYSTem:DATE?.SYSTem:BRD:ID?.SYSTem:BRD:Name?.
Daisy chain clocks and triggers:
DAISY:SYNC:TRIG <state>.DAISY:SYNC:TRIG?.DAISY:SYNC:CLK <state>.DAISY:SYNC:CLK?.
Rise and Fall time API commands:
rp_GenRiseTime(rp_channel_t channel, float time).rp_GenGetRiseTime(rp_channel_t channel, float *time).rp_GenFallTime(rp_channel_t channel, float time).rp_GenGetFallTime(rp_channel_t channel, float *time).
Last and Init Burst value:
SOUR<n>:BURS:LASTValue <amplitude>.SOUR<n>:BURS:LASTValue?.SOUR<n>:INITValue <amplitude>.SOUR<n>:INITValue?.
Sweep API commands.
Deep Memory Acquisition (DMA) commands.
SPI:SETtings:CSMODE <cs_mode>command - sets the default value of the CS pin upon boot.
Issues
Deep Memory Acquisition only works on STEMlab 125-14.
Removed
DAISY:ENable <state>- functionality replaced byDAISY:SYNC:TRIG <state>andDAISY:SYNC:CLK <state>commands.
2.00-15
New commands
Daisy chain clocks and triggers:
DAISY:ENable <state>.DAISY:ENable?.DAISY:TRIG_O:ENable <state>.DAISY:TRIG_O:ENable?.DAISY:TRIG_O:SOUR <mode>.DAISY:TRIG_O:SOUR?.
External Debounce Filter commands:
SOUR:TRig:EXT:DEBouncerUs <utime>.SOUR:TRig:EXT:DEBouncerUs?.ACQ:TRig:EXT:DEBouncerUs <value>.ACQ:TRig:EXT:DEBouncerUs?.
ACQ:TRig:FILL?command - checks whether the acquisition buffer is full.
Issues
SPI:SET:CSMODEandSPI:SET:CSMODE?do not work.X-channel SCPI control buggy.
1.04-28
New commands
NA.
Issues
SOUR:TRIG:INTcommand does not work. It is supposed to synchronously trigger both outputs, but is ignored. UseSOUR<n>:TRIG:INTto trigger individual outputs seperately.ACQ:SOUR<n>:STA:END?does not work.
1.04-18 and older
This is as far as our testing archives reach, for older versions, we suggest consulting the Red Pitaya GitHub CHANGELOG for specific Board versions (The link leads to STEMlab 125-14 changelog).