Implementation of an ADS-B/Mode-S Receiver in GNU Radio
Contents
Application Note Number
AN-363
Revision History
Date | Author | Details |
---|---|---|
2016-05-01 | Nate Temple | Initial creation |
Abstract
This AN guides the reader through the implementation of an ADS-B receiver using the gr-air-modes Out-of-Tree (OOT) module for GNU Radio. An explanation of ADS-B is also provided, and several real-world, over-the-air examples and profiled.
Overview
The Ettus Research™ USRP™ (Universal Software Radio Peripheral) is used for a number of military and aerospace applications. In this example, the USRP N200/N210 is used to receive and decode Mode-S beacons from real-world aircraft. The information from these beacons is displayed on Google Earth. This demonstration shows the flexibility offered by GNU Radio, an a open source package and its strong user-base.
The Gnuradio Out-Of-Tree module (OOT) gr-air-modes will be use to receive Mode-S with the USRP.
Requirements
- Python >= 2.5
- NumPy and SciPy
- Gnuradio >= 3.5.0
- Ettus UHD >= 3.4.0
- SQLite 3.7 or later
- CMake 2.6 or later
Installation
$ git clone https://github.com/bistromath/gr-air-modes.git $ cd gr-air-modes/ $ mkdir build $ cd build $ cmake ../ $ make $ sudo make install $ sudo ldconfig
Usage
After successfully building and installing the gr-air-modes OOT, you will have two applications to receive Mode-S.
- modes_rx
- Command line based, textual output of data received
- modes_gui
- GUI based interface with Google Maps integration
Additional Resources
For additional information on gr-air-modes please see the gr-air-modes Github Repository.