2.1.6. Streaming
The Streaming application enables users to stream data from Red Pitaya to:
A file saved on the Red Pitaya SD card
A file saved on a remote computer via the ethernet protocol (UDP or TCP).
The user can set:
The sampling frequency (rate)
Input channel count (Channel 1, Channel 2, or Both (4 Channels for STEMlab 125-14 4-Input))
Input channel resolution (8 or 16 bits)
Input attenuation (HV/LV mode) (for 125-xx, a switch of the jumper is required)
Whether to use the calibration or not (for 125-xx, the filter is also calibrated)
RAW / Volts mode
The number of samples or unlimited sampling
Streamed data can be stored into:
Standard audio WAV file format
Technical Data Management Streaming (TDMS) file format
Fast and compact binary format (BIN). It can be converted to CSV format.
Max. streaming speeds are limited to:
10 MB/s for streaming to an SD card (SD card class 10 is recommended for optimal streaming performance)
20 MB/s for streaming over 1 Gbit network (A direct connection is recommended to achieve the best streaming performance)
Note
The maximum continuous streaming speeds are limited to the total input data rate, not the network transfer rates. If the maximum data rate is exceeded, the data pipeline inside Red Pitaya starts to clog, which leads to unpredictable behaviour. Here are a few examples of maximum data rates:
One channel, 8-bits per sample: Max sampling frequency 20 MHz.
One channel, 16-bits per sample: Max sampling frequency 10 MHz.
Two channels, 8-bits per sample: Max sampling frequency per channel 10 MHz (assuming same frequencies for both channels)
Two channels, 16-bits per sample: Max sampling frequency per channel 5 MHz (assuming same frequencies for both channels)
If acquiring a limited amount of samples in a short duration, it is possible to reach higher sampling frequencies (up to the sampling speed of fast analog inputs).
Note
We plan to expand the functionality by adding the generation to the Streaming application in the future. For now, it is possible for a user to implement it by themselves.
2.1.6.1. Getting started with the Red Pitaya streaming feature
Run the Streaming app from the Red Pitaya Web interface
Stream locally to a file
Set the app’s properties & click RUN
Example: streaming on ch1, 8-bit resolution, 5.208 MS/s into TDMS file format
Press STOP to stop streaming
Click Browse to open the file browser and download the streaming data file
Open the file in a program that supports TDMS file reading, visualisation, and processing, such as DIAdem.
Streaming to a remote computer
Get the streaming client for your computer. Clients are located on the board itself and can be downloaded from there.
Set the app’s properties & click RUN
Example: streaming on ch1, 16-bit resolution 5 MS/s, TCP
Run the streaming app on a remote computer (copy the IP address from the web interface and choose the required file format).
rpsa_client.exe -h 192.168.1.29 -p TCP -f ./ -t wav
Data streaming can be stopped by pressing Ctrl + C.
The created wav file can be read or viewed in Audacity:
rpsa_client.exe -h 192.168.1.29 -p TCP -f ./ -t tdms
Data streaming can be stopped by pressing Ctrl + C.
The created tdms file can be read or viewed in DIAdem.
rpsa_client.exe -h 192.168.1.29 -p TCP -f ./ -t csv -s 100000 -v
The application saves data from the board in BIN format. This is a binary format. If the application has finished writing data correctly and there is enough free space on the disk, the conversion to CSV format will be automatic.
The created CSV file can be opened with any text editor or spreadsheet editor:
2.1.6.2. Streaming application for the Desktop (Linux, Windows)
You can also use the desktop version of the client for streaming.
Download the client
Files with clients are in the streaming web application. You can download it from RP itself.
Unzip and run the client
The running application automatically detects boards on the network if streaming is running on them. The boards and the client must be on the same network.