Online / 6 & 7 February 2021


Never compile on the target ! GNU Radio on embedded systems using Buildroot

feedback on a graduate course on developing an embedded network analyzer

G. Goavec-Merou & J.-M Friedt

Embedded systems are tailored to a specific task aimed at minimizing resource and energy consumption (e.g. ADi PlutoSDR). Cross-compiling benefits from powerful personal computer computational resources and user-friendly interfaces while removing the burden on the embedded board of running the compiler. GNU Radio was ported to Buildroot to provide SDR enthusiasts access to the many boards supported by this cross-compilation framework. We demonstrate its use in a graduate course project aimed at developing an embedded network analyzer.

A network analyzer for characterizing a radiofrequency device requires a radiofrequency receiver for collecting the signal that was generated to probe the response of a Device Under Test, and a matching signal source. We consider the RTL-SDR dongle as the receiver, while the Raspberry Pi processor Phase Locked Loop (PLL) has been shown to generate a radiofrequency signal in the FM band. In this demonstration, PiFM is used as a signal source. As students were not allowed to visit university during lockdown, a cost-effective solution had to be found to provide hardware to all students to complete the course at home: the solution of a Raspberry Pi4 and DVB-T dongle was selected to provide the framework of embedded radiofrequency system development. GNU Radio is cross-compiled using Buildroot to the Raspberry Pi 4, iterative tests allow for checking the functionality of each step, until a complete measurement is achieved.


Photo of Jean-Michel Friedt Jean-Michel Friedt