Implementation of an ADS-B/Mode-S Receiver in GNU Radio

From Ettus Knowledge Base
Revision as of 11:53, 1 May 2016 by Ettus (Talk | contribs)

Jump to: navigation, search

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.