Example: PipeTest
The PipeTest example exercises the FrontPanel pipe endpoints by testing and verifying bulk transfers. Thie example allows you to:
- Perform bandwidth tests at full rate with various block and length settings
- Perform bandwidth tests using block throttling to restrict data flow
- Perform pattern tests with optional verification and error injection
- Perform pipe transfer stress tests
- Perform basic statistical analysis of transfers
The FrontPanel Platform interface for this example is shown below

FrontPanel Platform App
An app version of the PipeTest example is provided as a FrontPanel Platform app, written in JS+HTML+CSS. This app is included in the FrontPanel Platform App Launcher and provides a graphical interface to (mostly) the same functionality.
Command Line App
- Download the pre-built example bitfiles corresponding to your FPGA module from our Pins Downloads.
- Locate
PipeTest.exe(and its source code):- For FrontPanel Classic, these are in the Samples directory installed with the FrontPanel SDK.
- For FrontPanel Platform, they are in the Examples directory.
- You need to have the following in a single directory:
PipeTest.exe(from step 2)okFrontPanel.dll(.sofor Linux,.dylibfor macOS)pipetest.bit(from step 1)
A device is only accessible in one application at a time. Ensure the FrontPanel application is closed before running the example.
Usage: PipeTest bitfile [serial S] [repeat N] [pattern lfsr|sequential|walking1|walking0|hammer|neighbor|fixed F]
[throttlein T] [throttleout T] [check] [inject]
[blocksize B] [segmentsize S]
[stress] [bench] [read N] [write N]
serial S - Optionally specify serial S of device to test.
bitfile - Configuration file to download, alternatively specify \"nobit\" to skip configuration.
repeat N - Repeats the requested tests for N seconds (\"inf\" to run forever).
pattern - Set pattern to one of the supported patterns.
lfsr - [Default] Selects LFSR psuedorandom pattern generator.
sequential - Selects Counter pattern generator.
walking1 - Selects Walking 1's pattern generator. (USB 3.0 only)
walking0 - Selects Walking 0's pattern generator. (USB 3.0 only)
hammer - Selects Hammer pattern generator. (USB 3.0 only)
neighbor - Selects Neighbor pattern generator. (USB 3.0 only)
fixed F - Selects a fixed pattern defined by hex input F. (USB 3.0 only)
throttlein - Specifies a 32-bit hex throttle vector (writes).
throttleout - Specifies a 32-bit hex throttle vector (reads).
check - Turns on validity checks.
inject - Injects an error during data generation.
blocksize B - Sets the block size to B (for BTPipes).
segmentsize S - Sets the segment size to S.
stress - Performs a transfer stress test (validity checks on).
bench - Runs a preset benchmark script and prints results.
csv S - Also output results to a csv file named [S]
read N - Performs a read of N bytes and optionally checks for validity.
write N - Performs a write of N bytes and optionally checks for validity.Example Usage
PS C:\Work\PipeTest> PipeTest.exe pipetest.bit stress
---- Opal Kelly ---- PipeTest Application v2.0 ----
FrontPanel DLL loaded. Version: 6.0.0
Found a device: XEM8320-AU25P
Device firmware version: 1.61
Device serial number: 2607000YFH
Device device ID: 56
FrontPanel support is enabled.
Read SS:4194304 TS:67108864 Pattern:0 Duration: 0.247039 seconds -- 259.069 MB/s
Read SS:4194304 TS:67108864 Pattern:1 Duration: 0.26955 seconds -- 237.433 MB/s
Read SS:4194304 TS:67108864 Pattern:2 Duration: 0.256707 seconds -- 249.311 MB/s
Read SS:4194304 TS:67108864 Pattern:3 Duration: 0.271756 seconds -- 235.505 MB/s
Read SS:4194304 TS:67108864 Pattern:4 Duration: 0.264527 seconds -- 241.941 MB/s
Read SS:4194304 TS:67108864 Pattern:5 Duration: 0.251537 seconds -- 254.436 MB/s
Write SS:4194304 TS:67108864 Pattern:0 Duration: 0.303436 seconds -- 210.917 MB/s
Write SS:4194304 TS:67108864 Pattern:1 Duration: 0.491625 seconds -- 130.18 MB/s
Write SS:4194304 TS:67108864 Pattern:2 Duration: 0.418927 seconds -- 152.771 MB/s
Write SS:4194304 TS:67108864 Pattern:3 Duration: 0.39803 seconds -- 160.792 MB/s
Write SS:4194304 TS:67108864 Pattern:4 Duration: 0.481198 seconds -- 133.001 MB/s
Write SS:4194304 TS:67108864 Pattern:5 Duration: 0.504347 seconds -- 126.897 MB/s