Installation
Build from source and install gr-adsb for your GNU Radio version
Quickstart
Open the example flowgraph and start receiving aircraft in minutes
Block Reference
Explore the Framer, Demod, and Decoder blocks and their parameters
ADS-B Concepts
Understand Mode S, Extended Squitter, and CPR position encoding
What gr-adsb does
gr-adsb provides three GNU Radio blocks that form a complete receive chain for 1090 MHz ADS-B signals:Framer — detect bursts
The ADS-B Framer block watches the magnitude-squared signal stream for the characteristic 8-pulse ADS-B preamble and tags each burst with its start offset and SNR estimate.
Demod — recover bits
The ADS-B Demod block reads tagged bursts and performs pulse-position demodulation (PPM) to extract up to 112 raw bits per message.
Key features
- Broad SDR support — works with any hardware supported by GNU Radio and OsmoSDR: USRP, RTL-SDR, HackRF, BladeRF, AirSpy, and more
- Flexible sample rates — supports 2 Msps, 4 Msps, 6 Msps, and any integer multiple of 2 Msps
- 10+ decoded message types — DF 0, 4, 5, 11, 16, 17, 18, 19, 20, 21 including Extended Squitter ADS-B
- Error correction — optional CRC-based conservative burst error correction
- Live map visualization — built-in ZeroMQ/Flask webserver streams decoded planes to a Google Maps view at
localhost:5000 - SQLite playback — record demodulated bursts and replay them offline with gr-sqlite
Supported GNU Radio versions
| GNU Radio version | Branch |
|---|---|
| 3.10 | maint-3.10 |
| 3.9 | maint-3.9 |
| 3.8 | maint-3.8 |