Gather and Displaying Aircraft ADSB & ACARS Data – Part I

Software Defined Radio (SDR) is a technology that allows over-the-air transmissions to be tuned in and captured on computers. Software is used to program, run and interpret the data. This may not be understood at first, one might ask, exactly what can be listened to? How can it be interpreted? At a most basic level there is software that utilizes the SDR dongles to listen to any over the air frequencies such as emergency frequencies (police, EMS, etc), aircraft broadcasts, HAM. Much like the police scanner radios of old, an SDR is capable of tuning in frequencies, but unlike a radio scanner an SDR shows a wide frequency range allowing people to visually see active broadcasts across a spectrum. SDRs are also capable of much more, since they are software defined, software can interpret data transmissions. This paper will discuss the use of an SDR to gather airplane data that is broadcast over-the-air. This data can be plotted on a map, or in my case gathered for data analysis. This is a multi-part article. The first post (or part) will relate specifically to the Hardware requirements and setup, the second part will relate specifically to the backend software setup and the final part will be for the creation of the front end UI.

Aircraft Data

ADSB and ACARS are two formats of aircraft data that is transmitted over the air. ADSB transmits aircraft data, such as location, speed, heading, roll, altitude, while ACARS is ground to air (and air to ground) text transmissions (think SMS for pilots).


To better understand ADSB, consider those Android and Apple apps that show aircraft in the air around you. Examples are FlightAware, FlightRadar24 and Radarbox. Using your location on a map, they render aircraft in real time as they move overhead. Clicking on a plane pulls up the planes details, such as their destination, the make/model and sometimes an image of the plane. This data is collected from ADSB transmissions, and often it is collected from regular people who submit their data feeds from their SDR devices, to the service.

If you run ADS-B software locally you’ll get a similar result to these mainstream programs. However, you’ll only see planes that are within the range of your antenna.

Image of ADS-B Software
An example of local ADS-B software pulling in data from an SDR via an antenna

Why Not Use a Service?

If a ADS-B service, like FlightRadar24 is free and has more data than we can pick up on our own, why not just use an app? I’ll answer that with a personal experience. One late night I heard this loud rumble. It sounded like a neighbor dragging their garbage cans across the ground. It sounded like a plane flying low and loud, but it was so late, it wasn’t common. I pulled up all the big commercial apps and no aircraft was spotted in my area. As it flew over I knew it was a plane now, so I pulled up my own ADS-B software and there was a hit. I got this tail number N117WR. When I input that tail number in all the big services, it came back as “blocked content.” The big apps censor out various flights. That was the flight that got me into this project, to create my own data collection on flights in my area and analyze the data later.

Interesting Finds

Rather than a real-time map, I prefer have data of the flights available, this can be later reviewed to find trends or pull up interesting finds. I’ve had a few interesting finds this past month, including:

Dr. Phil’s private plane

A BAe125 aircraft from C Flight of 32 (The Royal) Squadron taking part in a formation flying exercise high over Wembley, London. The world famous Wembley sports stadium is visible in the background.

ER-2 Science Aircraft

Preditor Drone

and much more…


Unlike ADS-B that transmits a plane’s telemetry, ACARS are text messages. Often these messages are undecipherable by non pilots, but sometimes you see interesting things in the messages:

Continuing On to Setup

I’ve covered what we’re doing, the next part will cover how to setup the hardware.

Continue to Part II – Hardware Setup

Part III – Writing code

About Author /

Leave a Comment

Your email address will not be published.

Start typing and press Enter to search