by Fairwaves

The first ever truly embedded SDR

View all updates Aug 10, 2017

XTRX Software Status Update

Most of the updates so far were related to hardware design progress, but hardware is nothing without software, so it’s time for a software update. Sergey has been putting massive amount of work into making sure XTRX software is high performance, flexible and stable. And making sure all most popular applications are supported.

General architecture notes

  • XTRX software is implemented in a modular way to support a variety of interfaces between an XTRX and a PC. Primary interface we’re focusing on right now is PCIe.
  • All RF parameters tuning and calibration is done on a host. Thanks to PCIe bus low latency this doesn’t affect performance while making it much easier/faster to develop.

Max/min transfer speed

Numbers bellow are not theoretical and are based on real tests. A test is assumed correct if it sustains the speed for at least 5 min without any underruns/overruns. Tests are run under RT priority.

Connection type PCIe x2 Gen1
Raw speed 4 Gbps
TX only max sustained rate 192 MB/s
RX only max sustained rate 417 MB/s
TX+RX (same rate) 160+160 MB/s
TX+RX (RX rate is 2x higher) 160+320 MB/s

Current streaming limitations

  • RX: Minimal samplerate is ~400 kSps, but we can reduce it to ~100 kSps using 4x decimation on the host.
  • TX: Minimal samplerate is 2.5 MSps by the FPGA MMCM spec, but for some chips we can get it down to 2.0-2.1 MSps. With the host interpolation we can get it further down to ~500-625 kSps.
  • Both RX and TX single DMA buffer is limited to 32768 bytes. This requires strict timing and sample rates more 25 MSPS have bad performance when an application is not run under the realtime priority (a lot of underruns / overruns).

Platform support

C/NT – Compiles, but hasn’t been tested
WIP – Work in progress, no actual test are done

Platform PCIe
Linux x86_64 Full
Linux i386 C/NT
Linux arm (32-bit) C/NT
Linux Aarch64 (ARM 64-bit) C/NT
Windows i386 WIP
Windows x86_64 WIP
Other Not planned

Applications support

Native XTRX API support

Application Description Support level
gr-osmosdr XTRX support for GNU Radio Full
SoapySDR Plugin to SoapySDR Basic functions
osmo-trx 2G GSM Transceiver Only 1 TRX for now
Amarisoft LTE 4G ENB - PCIe/USB Only FDD for now
kalibrate Freq calibration using 2G BTS Full
srsUE/srsLTE LTE eNB & UE Compiles, runs

Other applications which have been tested with non-native API

  • GnuRadio (SoapySDR) — Ok
  • gqrx (gr-osmosdr) — Ok
  • LTE_fdd_dl_scan from OpenLTE (gr-osmosdr) — not working! (std::bad_alloc)

Applications which haven’t been tested yet (wait list)

  • OpenBTS-UMTS (needs adoption)
  • LTE_fdd_enb from OpenLTE (needs adoption)

Wire streaming types

  • Primary/default streaming type is 16-bit MIMO/SISO to accommodate for 12-bit ADC/DAC resolution, possible decimation gain and fit into an integer number of bytes.
  • We expect that some application won’t need full 12 bits of the dynamic range and can use 8-bit streaming mode to save on processing power and bus bandwidth. This mode is supported for both SISO and MIMO modes, but is currently implemented only in the receive direction.
  • For receive applications which care about achieving maximum bandwidth without loosing dynamic range we’re working on 12-bit transfer mode for MIMO. Non-integer number of bytes per sample makes it significantly harder and more CPU intensive, so we plan to support it only for the MIMO receive mode where we hit bus bandwidth limits with 16-bit samples.
Mode Tx Rx
MIMO 16-bit Yes Yes
MIMO 12-bit No WIP
MIMO 8-bit Planned Yes
SISO 16-bit Yes Yes
SISO 12-bit No No
SISO 8-bit Planned Yes

$248,596 raised

of $90,000 goal

276% Funded! Order Below

Product Choices



Get an XTRX Pro board. Does not include any cables, antennas, or adapter boards.


XTRX Pro Deluxe Bundle

Get an XTRX Pro board as well as an Antennas + Cables set, a PCIe x2 + Front End Adapter, and a USB 3 Adapter with Aluminum Enclosure (see below for details). Also comes with four extra U.FL-to-U.FL cables and four extra U.FL-to-SMA-male cables.


Antennas + Cables

A full complement of cables and antennas for your XTRX, including four RF antennas (95 mm, 2 dBi, SMA male, GSM/3G/LTE 880 - 960 MHz, 1710 - 1990 MHz), one GPS antenna, and five cables.


USB 3 Adapter with Aluminum Enclosure

This adapter converts your XTRX from Mini PCIe to USB 3 and comes with an aluminum enclosure designed specifically for XTRX. The adapter has three status LEDs, a micro USB 3 port, one SMA connector for the GPS antenna, four SMA connectors for the MIMO Tx/Rx antenna pairs, a micro SIM card slot, and a slot for a GPIO FPC cable. Comes with a USB cable and all RF cables for internally connecting an XTRX to the SMA connectors. Does not include an XTRX, antennas, or FPC cable.


PCIe x2 + Front End Adapter

This PCIe card securely holds an XTRX board (not included) so it can be used in a standard PCIe x4 slot. It includes an RF front end with a LNA and PA for up to 100 mW output on each channel. A TDD switch is incorporated for applications like TDD LTE. You can bypass the front end by attaching cables directly to XTRX. This adapter achieves the full 10 Gbit/s raw bus bandwidth and can be plugged into x4/x8/x16 PCIe slots. A six-pin JTAG connector makes it easy to program and debug the FPGA. A micro SIM card slot is also present.


XTRX Pro PCIe Octopack

This single PCIe card comes loaded with eight (8!) removable XTRX Pro boards, metal installation brackets, enough cables for all GPS and MIMO Tx/Rx ports, and a special board for synchronizing all eight XTRX Pro boards.


XTRX Pro Early Access

Here's your chance to get an XTRX Pro board right away. We'll send you an XTRX Pro prototype board within two weeks of you placing your order and we'll follow up with a production version as soon as they come off the assembly line. Only a handful available.



We are a vertically integrated vendor of cellular equipment focused on the needs of emerging markets. We are developing, manufacturing, deploying, and operating turn-key cellular network solutions including radio equipment, towers, power and backhaul all the way to a core network and SS7 interconnect. Our team has been building software-defined radios and systems based on them since 2009 and is well known for its ClockTamer, UmTRX, and UmSITE products.

Alexander Chemeris


Sergey Kostanbaev

Software & Firmware Development

Andrey Sviyazov

Hardware Design

Albert Gardiner


Andrey Bakhmat


Andy Avtushenko


Subscribe to the Crowd Supply newsletter, highlighting the latest creators and projects: