Bob W9RAN recently wrote in to let us know about some developments he and Youssef have had with getting the Airspy to function at full speed on a Raspberry Pi 2 with ADS-B decoding. Bob and Youssef created the SpyVerter upconverter, and Youssef is the programmer of SDR# and the co-creator of the Airspy SDR. Bob writes the following:
Airspy is a high-performance SDR that streams 12 bit samples at 20 MSPS (real, not IQ) to a PC where the real processing is done. But 20 million samples per second uses a significant fraction of the bandwidth available with USB 2.0, and has made apparent the weaknesses in USB subsytems on a number of PCs. So of course the natural assumption by “experts” has been that the Raspberry Pi 2 isn’t up to the task.
As we Pi fans know, the Pi 2 has a 900 Mhz 4-core ARM Cortex A7 CPU, and the key to performance is properly implemented code that can take full advantage of the processor architecture.
Youssef Touil, author of SDR# and creator of Airspy has done that, proving first that an optimized multithreaded version of his ADSB decoder would run on a 4-core Odroid that has more CPU power than the Pi 2. But today we have proven that not only can the Raspberry Pi 2 run the optimized ADSB decoder at full speed (20 million samples per second via USB), but that it even has enough horsepower left to run the Virtual Radar Server Google map display in the Pi’s Epiphany web browser!
For those not familiar, the map display is created by a program called Virtual Radar Server that runs on a PC and receives samples from the Pi over ethernet, and includes a web server that allows other computers (in my case, the Pi 2) to view the composite map display. (For more information about ADSB, see my article in QST for January 2014).
I’m really thrilled to be able to demonstrate that the Pi 2 has this
impressive capability! This makes it feasible to create inexpensive high performance ADSB receiving systems, and who knows what else?