Capture & Decode ADS-B Aircraft Signals

~130 minBeginnerPopular

Receive live aircraft transponder broadcasts on 1090 MHz, decode ADS-B messages, track flights on a real-time map, and feed data to global tracking networks.

Prerequisites
Everything needed before starting

Hardware

  • RTL-SDR Blog V4 or FlightAware Pro Stick Plus
  • 1090 MHz antenna (included kit antenna is fine to start)
  • USB cable + Raspberry Pi, laptop, or desktop
  • Optional: outdoor antenna mount for extended range

Software / Account

  • Linux (Raspberry Pi OS recommended) or Windows
  • RTL-SDR drivers installed (see Workshop 1)
  • Free FlightAware account (for PiAware feeding)
  • Python 3 + pyModeS for message analysis (optional)
Step 1 of 714% complete
Step 115 min
What is ADS-B and How it Works

ADS-B (Automatic Dependent Surveillance-Broadcast) is a surveillance technology where aircraft automatically broadcast their identity, position, altitude, velocity, and other data for anyone with a suitable receiver to decode. No interrogation is needed — broadcasts are continuous.

The two ADS-B frequencies

1090 MHz1090ES (Extended Squitter)

Primary worldwide standard. Used by all commercial aircraft. Mode S transponder based. RTL-SDR receives this perfectly.

978 MHzUAT (Universal Access Transceiver)

US-only, used by general aviation (GA) aircraft below FL180 (18,000 ft). Carries FIS-B weather and TIS-B traffic info.

What ADS-B broadcasts

  • ICAO 24-bit address (unique aircraft identifier, like a MAC address)
  • Aircraft callsign / flight number
  • GPS position: latitude, longitude (±10 m accuracy)
  • Barometric altitude and GPS altitude
  • Ground speed and track (direction of travel)
  • Vertical rate (climb/descent rate in ft/min)
  • Aircraft category (heavy, medium, rotorcraft, etc.)
  • Emergency status and squawk code

Modulation: PPM at 1 Mbit/s

ADS-B 1090ES uses Pulse Position Modulation (PPM) at exactly 1 Mbit/s. Each bit is represented by the position of a 0.5 µs pulse within a 1 µs bit period. The standard preamble is four pulses at 0, 1, 3.5, and 4.5 µs, followed by 56 or 112 bits of data. This simple modulation is why cheap 8-bit RTL-SDRs can decode it perfectly — no complex DSP required.

ADS-B Out is mandated in most controlled airspace worldwide. In the US (FAA), all aircraft operating in Class A, B, and C airspace must be ADS-B Out equipped since January 1, 2020.

What is ADS-B and How it Works