Difference between revisions of "Implementation of an ADS-B/Mode-S Receiver in GNU Radio"

From Ettus Knowledge Base
Jump to: navigation, search
(Requirements)
(Installation)
Line 31: Line 31:
  
 
==Installation==
 
==Installation==
 +
You will need to have a working installation of GNU Radio and UHD to proceed with this Application Note. If you do not yet have GNU Radio and UHD installed, please reference the  Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux|Linux]], [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on OS X|OS X]] or [[Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Windows|Windows]] Application Notes.
 +
 +
The instructions below will install the required dependencies, build and then install the Out-Of-Tree module gr-air-modes.
  
 
     $ sudo apt-get install sqlite3 libsqlite3-dev python-zmq python-numpy python-scipy
 
     $ sudo apt-get install sqlite3 libsqlite3-dev python-zmq python-numpy python-scipy

Revision as of 23:21, 3 May 2016

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/Mode-S 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 N210 and WBX daughterboard is used to receive and decode ADS-B and Mode-S beacons from real-world aircraft. While a USRP N210/WBX is used for this demonstration, a B200/B210/B200mini/B205mini/E310/E312 or X300/X310 with an appropriate daughter board will work. The information from these beacons is displayed on a Google Earth map. This demonstration shows the flexibility offered by GNU Radio, an open source package and it's strong user-base.

The GNU Radio Out-Of-Tree module (OOT) gr-air-modes will be use to receive ADS-B/Mode-S with the USRP.

Requirements

  • Python >= 2.5
  • PyZMQ
  • NumPy and SciPy
  • SQLite 3.7 or later
  • CMake 2.6 or later
  • Gnuradio >= 3.5.0
  • Ettus UHD >= 3.4.0

Installation

You will need to have a working installation of GNU Radio and UHD to proceed with this Application Note. If you do not yet have GNU Radio and UHD installed, please reference the Building and Installing the USRP Open-Source Toolchain (UHD and GNU Radio) on Linux, OS X or Windows Application Notes.

The instructions below will install the required dependencies, build and then install the Out-Of-Tree module gr-air-modes.

   $ sudo apt-get install sqlite3 libsqlite3-dev python-zmq python-numpy python-scipy
   $ 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.