Tagged: limesdr

A Comprehensive Lab Comparison between Multiple Software Defined Radios

Librespace, who are the people behind the open hardware/source SatNOGS satellite ground station project have recently released a comprehensive paper (pdf) that compares multiple software defined radios available on the market in a realistic laboratory based signal environment. The testing was performed by Alexandru Csete (@csete) who is the programmer behind GQRX and Gpredict and Sheila Christiansen (@astro_sheila) who is a Space Systems Engineer at Alexandru's company AC Satcom. Their goal was to evaluate multiple SDRs for use in SatNOGS ground stations and other satellite receiving applications. 

The SDRs tested include the RTL-SDR Blog V3, Airspy Mini, SDRplay RSPduo, LimeSDR Mini, BladeRF 2.0 Micro, Ettus USRP B210 and the PlutoSDR. In their tests they measure the noise figure, dynamic range, RX/TX spectral purity, TX power output and transmitter modulation error ratio of each SDR in various satellite bands from VHF to C-band.

The paper is an excellent read, however the results are summarized below. In terms of noise figure, the SDRplay RSPduo with it's built in LNA performed the best, with all other SDRs apart from the LimeSDR being similar. The LimeSDR had the worst noise figure by a large margin.

In terms of dynamic range, the graphs below show the maximum input power of a blocking signal that the receivers can tolerate vs. different noise figures at 437 MHz. They write that this gives a good indication of which devices have the highest dynamic range at any given noise figure. The results show that when the blocking signal is at the smallest 5 kHz spacing the RSPduo has poorest dynamic range by a significant margin, but improves significantly at the 100 kHz and 1 MHz spacings. The other SDRs all varied in performance between the different blocking signal separation spacings.

Overall the PlutoSDR seems to perform quite well, with the LimeSDR performing rather poorly in most tests among other problems like the NF being sensitive to touching the enclosure, and the matching network suspected as being broken on both their test units. The owner of Airspy noted that performance may look poor in these tests as the testers used non-optimized Linux drivers, instead of the optimized Windows drivers and software, so there is no oversampling, HDR or IF Filtering enabled. The RSPduo performs very well in most tests, but very poorly in the 5 kHz spacing test.

The rest of the paper covers the TX parameters, and we highly recommend going through and comparing the individual result graphs from each SDR test if you want more information and results from tests at different frequencies. The code and recorded data can also be found on the projects Gitlab page at https://gitlab.com/librespacefoundation/sdrmakerspace/sdreval.

DragonOS: Debian Linux with Preinstalled Open Source SDR Software

Thank you to Aaron for submitting news about his latest project called "DragonOS" which he's been working on while in COVID-19 lock down. DragonOS is a Debian Linux based operating system which comes with many open source software defined radio programs pre-installed. It supports SDRs like the RTL-SDR, HackRF and LimeSDR.

Aaron's video below shows how to set up DragonOS in a VirtualBox, and he has two other videos on his channel showing how to set up ADS-B reception with Kismet, and how to run GR-RDS in GNURadio. He aims to continue with more tutorial videos that make use of the software installed on DragonOS in the near future.

DragonOS 10 Installer (download in description)

Screenshot of the GR-RDS Tutorial

PiSDR Updated to Version 3.0: Now Supports the Airspy HF+

PiSDR is a Raspberry Pi distribution that is pre-loaded with multiple programs for various software defined radios. It currently supports RTL-SDR, LimeSDR, PlutoSDR, Airspy, and as of the most recent update the Airspy HF+. The currently pre-installed software packages include SDR Angel, Soapy Remote, GQRX, GNURadio, LimeUtil, and LimeVNA.

Recently version 3.0 was released, and this new version adds a few new features like Desktop shortcuts, Raspberry Pi 4 support, Airspy HF+ support and documentation.

The latest image can be downloaded from the PiSDR website at https://pisdr.luigifreitas.me. It can be burned to an SD card in the same way that you would with a standard Raspbian installation. This is a great image to start from if you're experimenting with RTL-SDRs on a Raspberry Pi, as it means that you don't need to go through all the steps of installing the drivers and software like GQRX and GNU Radio which can take a long time to install.

PiSDR Running a SDRAngel with a LimeSDR
PiSDR Running a SDRAngel with a LimeSDR

SDR Makerspace Conference to be Held in Switzerland in November

SDR Makerspace is a community based in Greece that is run by the European Space Agency and Libre Space Foundation (who are responsible for the SatNOGS project). It provides funding and resources for Software Defined Radio based space communication projects.

On November 28-29 2019 they are holding the SDR Makerspace Conference in Payerne, Switzerland. The conference is free to register although spaces are limited.

The technical talks during the first day will be:

  • Open-Source SDR Software for Satellite Communications - Alexandru Csete
  • LimeSDR as an enabler for Satellite TV Transmissions - Dave Crump
  • How wide band data converters enable SDR in Satcoms - e2v
  • Teaching SDR: EPFL experience - Bixio Rimoldi
  • Xilinx’s adaptive solutions for SDR application - Georg Hanak
  • SDR Makerspace: Evaluation of SDR Boards and Toolchains - Sheila Christiansen
  • SDR and Amateur radio in space - Michel Burnand
  • SDR Makerspace lightning talks - Multiple Authors

The second day will consist of workshops on using SDRs for satellite communications, and on using the LimeNET Micro and LimeRFE for SDR satcom development.

Exhibitors who will be at the conference.
Exhibitors who will be at the conference.

Using a LimeSDR and RTL-SDR to Transfer a Text File Over the Air

Over on his blog nuclearrambo has been working on a project that uses a LimeSDR and RTL-SDR to transfer a small CSV text file over the air.

The transmitting side consists of a GNU Radio flowchart that encodes the text file into a binary string, modulates that binary string with Binary Phase Shift Keying (BPSK), and then transmits it using the LimeSDR.

The receiving side uses an RTL-SDR, and is based on another GNU Radio flowgraph that uses a polyphase clock sync block to synchronize the sampling time, a costas loop for fine frequency correction, an LMS DD equalizer block to compensate for multipath effects, and finally demodulation blocks that recover the bits and text file from the BPSK signal.

His results showed that he can almost recover the entire file except for the first few bytes of data which is always lost since it takes time for the clock sync and costas loop block to converge. The post goes into further detail about what each of the blocks do and some of the signal theory math behind everything. The GNU Radio GRC file is also provided if you want to try it out yourself.

LimeSDR Transmitting a CSV file to a RTL-SDR with BPSK modulation.
LimeSDR Transmitting a CSV file to a RTL-SDR with BPSK modulation.

XYNC: A Massive MIMO SDR with up to 32×32 TX/RX Channels

Back in 2017 we posted about the crowd funding of the Fairwaves XTRX, a small PCIe based TX/RX capable software defined radio that back then cost US$199 (now only the XTRX Pro is available for US$599). The XTRX is based on the same RF chips that are used in the LimeSDR and each unit has 2 x 2 MIMO (multi-input, multi-output), 120 MSPS SISO / 90 MSPS MIMO, 30 MHz to 3.7 GHz tuning range and comes with an on board GPSDO.

Recently Fairwaves have begun crowdfunding a new software defined radio called the XYNC. The XYNC is essentially a motherboard for connecting up to 16 XTRX boards together which results in an SDR with 32 TX and 32 RX channels.

If you’re working on a massive MIMO system or have a large swath of spectrum you need to monitor, XYNC (pronounced iks-sync) is right for you. XYNC builds on the success of the Octopack SDR we offered during the XTRX campaign and takes into account feedback from the original Octopack users.

You can connect two XYNC boards, either to increase the number of RX/TX channels (e.g., two XYNC Octos give you 32 TX and 32 RX channels) or to increase throughput per channel (e.g., two XYNC Quadros give you twice the throughput of a single XYNC Octo). Connecting more than two XYNC boards is also possible, but requires an external clock and 1 pps signal distribution circuitry, neither of which is provided as part of this campaign.

While advertised as low cost, the pricing is probably out of reach for most hobbyists, with the quad 8x8 unit coming in at US$4500 and the top 16 board 32x32 unit priced at US$13,000. Still, these prices are very good for a massively MIMO SDR and pricing is set to rise once the crowdfunding campaign ends in 39 days.

The XSYNC Massively MIMO SDR with up to 32x32 TX/RX Channels
The XSYNC Massively MIMO SDR with up to 32x32 TX/RX Channels

Exploring the Limits of General Purpose SDR Devices

Back in August 2019 the Chaos Communication Camp was held in Germany. This is a 5 day conference that covers a variety of hacker topics, sometimes including SDR. At the conference Osmocom developer Harald Welte (aka @LaF0rge) presented a talk titled "The Limits of General Purpose SDR devices". The talk explains how general purpose TX capable SDRs like HackRFs and LimeSDRs have their limitations when it comes to implementing advanced communications systems like cellular base stations.

If you prefer, the talk can be watched directly on the CCC website instead of YouTube.

Why an SDR board like a USRP or LimeSDR is not a cellular base station

It's tempting to buy a SDR device like a LimeSDR or USRP family member in the expectation of operating any wireless communications system out there from pure software. In reality, however, the SDR board is really only one building block. Know the limitations and constraints of your SDR board and what you need around it to build a proper transceiver.

For many years, there's an expectation that general purpose SDR devices like the Ettus USRP families, HackRF, bladeRF, LimeSDR, etc. can implement virtually any wireless system.

While that is true in principle, it is equally important to understand the limitations and constraints.

People with deep understanding of SDR and/or wireless communications systems will likely know all of those. However, SDRs are increasingly used by software developers and IT security experts. They often acquire an SDR board without understanding that this SDR board is only one building block, but by far not enough to e.g. operate a cellular base station. After investing a lot of time, some discover that they're unable to get it to work at all, or at the very least unable to get it to work reliably. This can easily lead to frustration on both the user side, as well as on the side of the authors of software used with those SDRs.

The talk will particularly focus on using General Purpose SDRs in the context of cellular technologies from GSM to LTE. It will cover aspects such as band filters, channel filters, clock stability, harmonics as well as Rx and Tx power level calibration.

The talk contains the essence of a decade of witnessing struggling SDR users (not only) with running Osmocom software with them. Let's share that with the next generation of SDR users, to prevent them falling into the same traps.

The Limits of General Purpose SDR devices

Uplinking to QO-100 with a LimeNET Micro and LimeRFE

The LimeNet Micro is a is a $329 board that combines a Raspberry Pi 3 (compute module) together with a LimeSDR radio. The LimeRFE is an amplifier and filter board accessory designed to be used with LimeSDR units. When a LimeNET Micro and LimeRFE are used together, it is possible to create a transmit capable radio system that can be used for amateur radio.

Daniel Estévez has recently been doing several experiments with the LimeRFE, and this time he's managed to create an uplink capable ground station for the QO-100 amateur radio geostationary satellite. The LimeRFE can output 1W at 2.4 GHz and Daniel writes that with a low cost 2.4 GHz WiFi parabolic grid antenna this is more than enough power to work QO-100.

In terms of software, Daniel is using a Python script that communicates with the Limesuite API for PTT control. For transmitting IQ data generated by GNU Radio he uses limesdr_send. So far he's been able to successfully test a CW beacon, SSB voice and waterfall text generated by gr-paint.

LimeNet Micro + LimeRFE + 2.4 GHz WiFi Antenna = Full QO-100 Solution
LimeNet Micro + LimeRFE + 2.4 GHz WiFi Antenna = Full QO-100 Solution