Tag Archives: Raspberry Pi Radio Projects

Making a FlightAware ADS-B feeder with a Raspberry Pi 3 and RTL-SDR dongle

It’s been nearly a year since I acquired both the RTL-SDR (above) and Rasperry Pi 3 (below)r.

Remember when I made a plea for Pi 3 projects just last year––?

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


If you only plan to use this SDR and antenna as an ADS-B feeder, you might go for the FlightAware Dongle and 1090 MHz antenna combo.


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.

Directions below are a highly distilled version of that tutorial. If you’re new to all of this, as I was, follow these directions instead of the above tutorial. Be aware that the directions assume you’re using the Pi 3 and a Windows PC to burn the image file.

  1. Download PiAware image7-zipSD card formatter, and the Win32 Disk Imager. Decompress all compressed files, install and note the folder locations.
  2. Register your username at FlightAware–presuming you don’t already have an account, of course.
  3. 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!
  4. Use Win32 Disk imager to write the PiAware image to your MicroSD card.
  5. 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.
  6. Remove the microSD card containing the PiAware image; insert it into the Pi 3.
  7. 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.
  8. Plug the Raspberry Pi 3 into a power source…and cross your fingers!
  9. Grab a cup of coffee, walk the dog, or listen to this 12 minute version of the BBC countdown; it could take at least this long for FlightAware to start receiving data from your ADS-B feeder.
  10. 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.

Feeding FlightAware

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:

Future plans

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!

Guest Post: Richard builds a WiFi radio with the Raspberry Pi

Many thanks to SWLing Post contributor, Richard Schreiber (KE7KRF), who shares the following guest post:

Yet Another Internet Radio!

by Richard Schreiber (KE7KRF)

After deciding that an internet radio could be an important source of entertainment in our household, we formulated a few general guidelines:

  • We opted not to use an aggregator but would pick and choose stations we enjoyed and discover the URL’s ourselves. Also would be satisfied with a couple of dozen stations. Based on a recent decision to pare down the number of TV channels we were paying for, having access to hundreds of stations seemed impractical and unnecessary.
  • The price had to be affordable, thus eliminating many stand-alone, commercially available internet radios.
  • We already owned a quality portable speaker (Bose SoundLink Mini) so the internet radio didn’t need to duplicate that component.
  • Didn’t want to tie up nor be tethered to a laptop, tablet, or netbook. We predicted that would eventually lead to less and less use of the radio.

After some research, coupled with the fact I already had some experience with Raspberry Pi computers, that small device appeared to be our best choice. I had recently purchased the newer 2 B model, which has plenty of computing power, and had installed Ubuntu Linaro as the OS. (As an aside, this OS has not to my knowledge been upgraded for the latest Raspberry Pi 3). There are several other operating systems that will work just as well including the official Raspbian OS available through the Raspberry Pi Foundation.

I installed the MPD music player daemon and its client MPC, which is used to add to and delete station URL’s from the playlist, control volume, etc. An important find was the iPhone app called MPod which provides remote wireless access to the features of MPC. At the moment it is a free app for the iPhone (in my case the iPod Touch).

For portability, my Raspberry Pi is being used “headless”, meaning it is not connected to a monitor, keyboard or mouse. If maintenance is required you can use PuTTY, a SSH and telnet client, wirelessly from a Windows (or MAC?) PC, using a command-line interface. Mainly this is needed to shut down the Raspberry Pi properly before turning off the power, but it boots completely on its own when powered up. The MPod app will then load the playlist of stations and let you start playing the radio without direct access to the Raspberry Pi.

The sound output of my Raspberry Pi is connected to the auxiliary port of our Bose SoundLink Mini Bluetooth speaker. But instead of trying to implement Bluetooth on the Raspberry Pi, I took the easy way out and use a direct connection. The sound reproduction from this setup is very good, though audiophiles might be somewhat more critical.

The above represents a minimal investment if you already have a good speaker on hand. It does require some on-line research and learning at least enough to install the OS and software. The good news is that there are many websites and forums providing step-by-step instructions and helpful hobbyists willing to explain some of the more cryptic aspects. A few of the websites that I found to be helpful:




A couple of these also explain how to add a display to your Raspberry Pi internet radio.

Our Raspberry Pi radio is on each evening and has been trouble free. It is worth mentioning that this is a very portable setup, and can even be powered by a battery pack (the kind used for recharging tablets and cell phones) for a few hours. Of course you need to be near a wifi hotspot.

Thank you, Richard! What a great way to use the inexpensive Raspberry Pi. I have a spare Pi2 and an amplified speaker here at the house. Though I don’t need another WiFi radio, it would be fun putting this little system together. 

Let’s talk Raspberry Pi 3 radio projects…


I just received the recently released Raspberry Pi 3 that I ordered from MCM a couple weeks ago.


Now I’m plotting a few potential radio projects!

Recommendations anyone?

I’d love some input from SWLing Post readers as I’d like to feature a few Raspberry Pi projects here (and I’d certainly welcome your guest posts!).


I’d love to run my RTL-SDR or (better yet)  SDRplay RSP with the Pi 3, but I’m sure there are a number of other projects I’ve never considered. I also have the original Raspberry Pi, but what I love about the Pi 3 is built-in wireless connectivity–of course, it’s faster than the original Pi, so I’m sure that’ll help with many radio applications.

Please comment with your suggestions and Raspberry Pi experience! I’m all ears!