This past weekend I built a fully self-hosted ADS-B plane tracking system that monitors aircraft flying over my house in real time — no third party APIs for flight position data, no rate limits, no filtering. All position tracking runs locally on my Proxmox homelab using a cheap RTL-SDR dongle and a rooftop antenna.

 

📡   How It Works

Aircraft broadcast their position, altitude, speed, heading and identity on 1090MHz continuously. An RTL-SDR V3 dongle picks up these signals through a dual band outdoor fiberglass antenna mounted on my downspout, and dump1090-mutability decodes them into readable aircraft data updated every second.

 

🗺️   Web Interface

tar1090 serves a modern ADS-B Exchange style map showing all aircraft in real time. My receiver location and range circles are overlaid on the map, giving a clear picture of local coverage. The whole thing is embedded directly in my Home Assistant dashboard on a dedicated Radar tab.

 

🤖   Discord Integration

Every 10 seconds my Discord bot Zarka polls the local dump1090 JSON feed. When a plane enters my 4 mile radius it posts a full embed including:

  • Flight number, airline and aircraft type (Boeing 737, Airbus A321, etc.)
  • Altitude, speed, heading and vertical rate
  • Squawk code with emergency detection
  • Distance and bearing from my house
  • A photo of the actual aircraft from planespotters.net
  • A Mapbox dark mode static map with the flight path trail

Military aircraft get a special red embed and a direct ping.

RHODY21 C-130J Super Hercules detected overhead
Rhode Island ANG C-130J Super Hercules (RHODY21) detected at 2,575ft over Longmeadow

 

🔊   Home Assistant Integration

When a plane is under 5,000ft and within 3.5 miles my Google Nest Mini announces it via local Piper TTS — the airline name, altitude, and which direction it’s approaching from. Only fires between 8am and 11pm so it doesn’t wake anyone up.

 

✈️   Notable Catches

Some highlights from the first few days of running:

  • Kuwait Air Force C-17 Globemaster — transatlantic flight from the UK to Charleston AFB, tracked from over my house
  • Rhode Island ANG C-130J Super Hercules — RHODY callsign out of Quonset
  • Massachusetts ANG UH-60 Black Hawk — BOSOX callsign, named after the Red Sox
  • Connecticut ANG CH-47 Chinooks — NOMAD callsign, regularly flying out of Bradley ANGB
  • Turkish Airlines, Aer Lingus and various transatlantic flights on the northeast corridor

 

🛠️   Stack

  • RTL-SDR V3 + dual band outdoor antenna
  • dump1090-mutability on Proxmox LXC
  • tar1090 web interface
  • Zarka Discord bot (discord.py)
  • Home Assistant with Piper TTS
  • Mapbox Static API for flight path maps
  • planespotters.net + adsbdb.com for aircraft data