In the long run, however, I’d never devote an RSP as a dedicated ADS-B feeder. Why? The RSP is a very versatile, full-featured SDR and I wouldn’t want to tie it up with such a relatively routine, simple task.
Many thanks to SWLing Post contributor, Dan Srebnick (K2DLS), who recently posted a detailed overview of his ADS-B installation on his blog:
Monitoring NextGen ATC (on the cheap!)
A key component of next generation air traffic control is Automatic Dependent Surveillance – Broadcast (ADS-B). The current FAA mandate is for all included aircraft to output ADB-B transmissions no later than January 1, 2020. But you don’t have to wait to receive and map ADS-B. There is a lot of air traffic to be seen.
[…]I decided to use a spare older RTL-SDR stick based on the RTL2832U and R820T chips. This USB device comes with a small antenna that I hoped would be good enough to get me started. It is not in any way optimized for the 1090 MHz signals that are used by ADS-B and is roughly 19 parts per million (ppm) off frequency. It cost a bit over $10 at a hamfest a couple of years ago. The designs have improved since the early models were offered. Newer models include a TCXO (thermally compensated crystal oscillator) for stability and accuracy.
I needed software to take signals from the RTL-SDR stick and plot them on a map. That software is “dump1090”, originally written by Salvatore Sanfilippo. I added an install stanza to the Makefile, along with a systemd service file, for a smooth system install. I also needed to install the RTL-SDR USB drivers. The complete installation runs “headless”, meaning no monitor, keyboard or mouse need be connected. Remote management can be done via ssh.[…]
This is fantastic, Dan! Thank you for taking the time to share all of the code snippets you needed to do the installation on the Raspberry Pi B as well. Post Readers: if you have an older Raspberry Pi and RTL-SDR sitting on a shelf, use Dan’s guidance to turn them into an ADS-B feeder!
Although many of you suggested some great projects, I never actually got around to doing any of them. Now, don’t get me wrong––I wanted to, of course, but simply got involved with reviews, NPOTA, two months of travel…and, well, life.
Then, last week at the Winter SWL Fest, a common theme emerged in both presentations and discussions: the numerous applications of the super-cheap, and thus super-ubiquitous, RTL-SDR dongle. In their engaging presentations, both Dan Srebnick and Mark Fahey––SWLing Post contributors and good friends––focused on the power of the RTL-SDR, expounding upon some simple, inexpensive applications in their forums. It was inspiring. Also, buddy Eddie Muro showed me just how easily an ADS-B receiver could be set up using an Android phone.
Back to the Pi. Though I was already aware the Pi 3 and RTL-SDR could be united to make an ADS-B receiver, watching Mark Fahey talk about how simply one could feed the FlightAware network with ADS-B data finally hooked me. Why not, indeed? Here was fun to be had!
Mark preparing to woo his captive audience at the Winter SWL Fest!
I couldn’t get the idea out of my head, so Tuesday, the day following my return, I set the afternoon aside. I rolled up my sleeves, and with my long-neglected Pi 3 and RTL-SDR, got ready to cook up a flight sensor.
I figured I was probably missing a component or two, and fully expected the process to be complicated, but decided I wouldn’t let this deter me. And guess what? I was wrong on both counts!
FlightAware ADS-B feeder recipe
A computer to install the PiAware image on a MicroSD card
Note: I used this excellent PiAware ADS-B feeder tutorial to build my system–it’s detailed and doesn’t make the lofty assumption that you actually understand formatting cards, building disk images, and/or editing config text files.
Use SD Card Formatter to format your MicroSD card. Just make sure you’re formatting the correct drive, else you could easily wipe the wrong disk/card!
Use Win32 Disk imager to write the PiAware image to your MicroSD card.
If using WiFi, open Windows Explorer. Locate text document called piaware-config on the MicroSD card, open it with a text editor, and locate the WiFi ssid and password locations. Per the config comments, edit them to match your WiFi system. Note that any special characters in both the name and password will require the use of quotation marks (again, noted in the config file comments). Save the file in the same location on the disc image.
Remove the microSD card containing the PiAware image; insert it into the Pi 3.
Connect the RTL-SDR or FlightAware dongle to the Raspberry Pi. Attach an appropriate antenna to the RTL-SDR. Note: You’ll get the best results if you place the antenna outdoors with line of sight to the skies.
Plug the Raspberry Pi 3 into a power source…and cross your fingers!
When you see this My ADS-B button in the header of FlightAware (see below), you’ll know you’re in business. Congratulations! You can now watch the skies.
After my ADS-B receiver had been in operation for a while, I was very impressed with the data FlightAware was able to pull from my ADS-B feed. I was equally impressed with the number of distant aircraft I could receive with such a modest antenna––a number of them up to 135 miles from my location. Once I find a suitable outdoor location for the mag mount antenna, currently indoors, I expect the reception distance will increase significantly.
You can also connect to the live feed from your ADS-B receiver through your local network. Here’s a screenshot of my live data:
At the moment, my ADS-B receiver is located indoors, in a south-facing window.
It works, but clearly isn’t ideal. Since the Pi 3 connects to my network via WiFi, I intend to install the full ADS-B receiver system into a small weatherproof case and mount it outside. My Pi 3 has no case, so I purchased an inexpensive one yesterday. I should be able to feed it power with an outdoor outlet…but I’m very tempted to experiment with making it solar powered. To find out if this is a logical move, I need to observe and measure the power requirements first, and will be doing that in the next few weeks.
Meantime, I’m thoroughly enjoying watching the (amazingly busy) traffic in the skies…and the kid in me relishes it!
Thanks, Mark, for the great idea!
Have any SWLing Post readers attempted to build a solar-powered or outdoor ADS-B receiver? Please comment!
Many thanks to Jon Hudson with SDRplay who noted that, yesterday, the beta Windows version of ADS-B for SDRplay was released:
“We now have an updated beta version of ADS-B for Windows. This is based upon the 16bit Mutability version of dump1090 developed by Oliver Jowett and unlocks the full 12 bit performance of the RSP1. People should see a significant performance improvement over the dump1090_sdrplus version, which was based upon 8 bit code. Go to http://www.sdrplay.com/windows.html – as with the recent update on Raspberry Pi, it supports both 2MHz and 8MHz demodulator modes. We recommend you uninstall the previous version (if you had it) before installing this one. Performance should be better than before. This is still in beta so any feedback or comments to [email protected] is welcomed.”
Many thanks to Jon Hudson with SDRplay who shares the following announcement:
We now have an updated beta version of ADS-B for both the Raspberry Pi 2 and 3. This is based upon the 16bit Mutability version of dump1090 developed by Oliver Jowett and unlocks the full 12 bit performance of the RSP1. People should see a significant performance improvement over the dump1090_sdrplus version, which was based upon 8 bit code. The latest beta version can be downloaded in binary form from http://www.sdrplay.com/rpi_adsb.html .
Section 1 is how to load a brand new image onto an SD card
Section 2 should be straightforward – 2 commands – one to get the software and another one to run it.
Though I don’t live in a metro area with a lot of air traffic, I am often in the flight path of a couple major airports. I’ve been looking for a simple way to try ADS-B (and ACARS). As soon as I locate a dedicated monitor and keyboard for my Raspberry Pi 3–and a little dedicated time–I will give the ADS-B app a go. Thanks again, Jon!
For those who receive (and send) flight data from ADS-B capable devices such as the RTL-SDR dongles or have Apps for their tablets and phones, FlightAware announced on Wednesday this change to their service:
Hi from FlightAware,
After months of development, we released a large upgrade to our back-end flight tracking engine on Tuesday. Not only did the upgrade include dozens of bug fixes and flight tracking improvements, but we added a massive enhancement for US and Canadian flight tracking — the flight status and radar data is now live with no more five minute delay! Previously, the US/Canada data feed contained a five minute delay in addition to our ~30 second processing time, but now all data is less than a minute delayed from real time. In addition to the general improvement, this yields a lot of additional benefits:
More seamless transition between RADAR, ADS-B, and MLAT positions
Flights will no longer transition from “Arriving soon” to “Arrived 5 minutes ago”
Fewer estimated positions due to delayed RADAR data
Now that the radar data in the US and Canada is real-time, we’ll soon be enabling public MLAT data in the US, which is real-time just like our ADS-B data.
This is a major upgrade in data for folks in North America, and it will make using programs like PlanePlotter even more useful!
For those who might be interested in building their own dedicated ADS-B receiver, information may be found here. Of course FlightAware may be used as an online flight checking service just for tracking the progress of a given flight, which is in itself a lot of fun!