When I first started fiddling SDR, the very first experiment I ran was to receive and decode airplane’s telemetry data. That’s esseitnally how the crowd-sourced FlightRadar24.com gather its data - people worldwide set up their radio station to receive airplanes data and contribute received data to the central source.
It takes as cheap as a $20 DVB-T dongle, plus your computer to play out. ADS-B protocol transmists on the 1090Mhz band; on Linux, dump1090 is the most poular choice of decoding ADS-B signals.
There are close to no setup work apart from making sure your SDR device works and is correctly recognised on your computer. With Linux, this has never been a problem for me; the Linux kernel at the time of writing already has drivers for most of the popular devices out there.
dump1090 and you should see decoded data start to flow in. That’s of course assuming there are active airplanes nearby. Example output:
*8d7c6bb9990cd234600405e70602; CRC: 000000 (ok) DF 17: ADS-B message. Capability : 5 (Level 2+3+4 (DF0,4,5,11,20,21,24,code7 - is airborne)) ICAO Address : 7c6bb9 Extended Squitter Type: 19 Extended Squitter Sub : 1 Extended Squitter Name: Airborne Velocity EW status : Valid EW velocity : -209 NS status : Valid NS velocity : 418 Vertical status : Valid Vertical rate src : 0 Vertical rate : 0 *8d7c6bb958c3823c2f4fbe2fb655; CRC: 000000 (ok) DF 17: ADS-B message. Capability : 5 (Level 2+3+4 (DF0,4,5,11,20,21,24,code7 - is airborne)) ICAO Address : 7c6bb9 Extended Squitter Type: 11 Extended Squitter Sub : 0 Extended Squitter Name: Airborne Position (Baro Altitude) F flag : even T flag : non-UTC Altitude : 38000 feet Latitude : -32.647385 Longitude: 141.521375
dump1090 --interactive to show an interactive prompt in your terminal instead, listing latest info of nearby airplanes.
dump1090 also provides a simple web interface to give you a map plot visualisation; the default port is
dump1090 --net and navigate to
http://localhost:8080 to view.
Decoding when you are in the plane
How about doing the above when you’re travelling in a plane, to see realtime data? Since ADS-B has such a large power output of 75W for small aircrafts, you should be able to receive the signal no matter where you seat or how you place your antenna. Though since fiddling with antennas and termminal is rather likely to raise suspicions from the general publilc, I strongly suggest hiding your antenna from other people’s eyes (e.g. your porcket).
Running dump1090 on linux with DVB-T dongel and small antenna tucked in the seat pocket:
With a little bit of scripting you can plot the your flight path. This is a quick plot of the lat lon using matplotlib:
Flight path from the entertainment system for comparison: