Experiences with using GNU Radio for Real-time Wireless Signal Classification
The ability to monitor the wireless spectrum in real-time is important in a variety of environments including high-security and control-system environments such as power plants and military facilities, as well as shared spectrum environments such as the 3.5 GHz band model that was announced by the Federal Communications Commission (FCC). In all of these cases, real-time detection and classification of signals while minimizing missed detections and misclassifications is paramount. Motivated by these important applications, we built a real-time system for spectrum monitoring and analysis which uses GNU Radio and Universal Software Radio Peripheral (USRP) X310s. In this paper, we focus on the GNU Radio-specific implementation challenges we face as well as the approaches we take to tackle these challenges. We also present our experiences with our implementation. We show that in some instances, particularly message passing, we can achieve a substantial improvement in processing performance by using alternative mechanisms, including Qt Signals and Slots (yielding a 78x performance improvement) and treating streams of data as strings, or by simply improving upon the existing code such as switching to using VOLK.
- I grant gnuradio.org a perpetual, non-exclusive license to distribute this article.
- I certify that I have the right to grant this license.
- I understand that submissions cannot be completely removed once accepted.
- I understand that gnuradio.org reserves the right to reclassify or reject any submission.