Register now for better personalized quote!

Raspberry Pi 4: How I built a software-defined radio system to track passing planes

Jul, 06, 2020 Hi-network.com

One of the things about being in lockdown here in London is that I've had time to work on various projects that have been sat on the back burner. So in the last three months or so, I've set up a much improved microphone and camera system for podcasting and streaming, built a new time-lapse rig for the sky that passes by, practiced my wildlife photography on the local suburban critters, and built and set up a software-defined radio system to track passing aircraft.

Aircraft over London on a July afternoon, as tracked by my ADS-B receiver

Simon Bisson

Developer

  • It's the end of programming as we know it -- again
  • Developers feel secure in their jobs, but they're still thinking about quitting
  • The future of the web will need a different sort of software developer
  • The best Linux laptops for consumers and developers

That last one is perhaps the more interesting for ZDNet's readers, as it's how you can start to feed aircraft location data into a growing network of tracking stations that uses the GPS locations most aircraft transmit to build a global map of air traffic. This approach, ADS-B, is intended to make it easier for aircraft to locate each other and for air traffic control to keep track of them. The fact that the data is there for anyone to capture and use is just a side-effect.

SEE:Hiring Kit: Python developer(TechRepublic Premium)

Picking up the ADS-B signals is easy enough: they're broadcast on a known frequency, 1090MHz, and have to deliver data in a set format. If you've got the right receiver, that binary data can be quickly translated into coordinates that can be plotted on a map, using callsigns to look up aircraft type and owner. You've probably seen services like Flightradar24 and Flightaware in the news, offering ADS-B information to anyone with a web browser.

Those services get their data from a network of volunteers, with their own ADS-B receivers. Usually based around open source software, their base stations are easy enough to build and deploy, using software-defined radios to receive ADS-B signals. Most are based around a popular chipset that was originally developed to add USB digital TV receivers to PCs, with a set of APIs that made it easy to adapt for other uses.

Setting up an ADS-B base station is now as easy as getting a Raspberry Pi, plugging in a receiver, and downloading and configuring a ready-to-run system image. My system is based around a 2GB Raspberry Pi 4 in a heatsink case, with a Flightaware ADS-B radio stick, a 1090MHz desktop antenna, and a copy of Flightaware's Piaware software distribution.

Based on Raspbian, Piaware is a headless Linux distribution with all the software you need to work with a radio stick, including the Dump1090 ADS-B Mode S decoder. Dump1090 comes with a built-in web app that maps currently tracked aircraft and can also be used to send data to other apps and servers, helping feed data into larger public ADS-B networks.

You can get kits that include all the parts you need to set up and run an ADS-B receiver from hobbyist electronics stores, for around

tag-icon Hot Tags :

Copyright © 2014-2024 Hi-Network.com | HAILIAN TECHNOLOGY CO., LIMITED | All Rights Reserved.