Monday, January 11, 2016

ADS-B For Cheapskates

Never say I never give you anything, dear readers. I'm about to show you how to make a homebuilt 978MHz ADS-B receiver in 30 minutes and for under $100. I built this a month and a half ago in preparation for a major trip with the Pacer that I'll be writing about shortly, and it has worked flawlessly and been an invaluable addition to the flight bag. I used it with an iPad 2 running WingX Pro7, but it purportedly works just as well with ForeFlight and various other EFB apps on a wide variety of platforms. The commercial versions of this box (Stratus, Garmin GDL39, etc) retail for $500-800. The original parts list, assembly instructions, and code were put together by a pilot whiz named Christopher Young, who posted it to Reddit. I've just expanded, simplified and illustrated his instructions using my own recent stratux build.

Stratux is based on the Raspberry Pi, an ultra-cheap miniturized Linux computer designed for student experimentation. Don't let that scare you; you won't be dealing with the Linux OS at all. A number of Raspberry Pi kits are now offered online, such as this $70 one from Amazon; it comes with everything needed for the stratux build except for a DC power source (AC power cord is included). We'll cover that at the end. The other piece of the puzzle is a USB Software Defined Radio (SDR) dongle with antenna; stratux uses the $22 NooElec NESDR Mini2. Here's everything as it came from Amazon:

Here's everything unwrapped. You can set aside the HDMI cord and the SDR remote control, you won't be using them. 

Making sure you've grounded yourself first, remove the motherboard and the two small metal heat sinks from their packages. Remove the adhesive backing from the heat sinks and apply them to the appropriate chips on the motherboard (see below). Separate the two halves of the clear plastic case, insert the motherboard, and mate the case halves again until you hear a definite click.


Take the tiny Edimax wifi dongle out of its package and plug it into one of the four USB ports. Plug the NooElec SDR dongle into another USB port, and connect the antenna. The assembled computer should look like this:


Next, take the microSD card, use the full-size SD adapter if necessary, and put it into a computer with a SD card reader (if you don't have one, USB readers can be had for $6). Next, download the most recent release of the stratux software from this page (I used v0.4r4) and decompress the ZIP file. The resultant image file includes both the Raspbian (neƩ Linux) operating system as well as the stratux code. You'll need a way to flash the IMG onto the SD card, such as Win32DiskImager for Windows or PiFiller for Mac. Once complete, eject the microSD card and insert it into the microSD slot on the Raspberry Pi.

That's it. Plug the Raspberry Pi in using the wall adapter and fire up the tablet computer that houses our EFB app. Go to Wifi settings and select the Wifi network "stratux," which will appear as soon as the Pi has finished its short bootup sequence. From here the procedure will vary by EFB app; WingX automatically connects and you'll see "stratux" in a green field on the lower right of the screen when in Moving Map mode. Note that you won't actually be receiving ADS-B data unless you live right next to one of the FAA's transmitters.


Time to go flying. Here's where you have to figure out a 12V power source. If your plane has a cigarette lighter and you don't mind a little power cord spaghetti, use a 12V USB adapter and a 5v/1.2A USB-to-microUSB cord like the one that comes with practically every non-Apple phone these days. If you don't have a cigarette lighter or want a cleaner out-of-the-way setup, a lithium ion battery pack like this one is a cheap option. I normally use the cigarette lighter and keep two battery packs handy as backups (for both the iPad and stratux). You can experiment with mounting options using velcro or zipties; so far I've just left mine sitting on the glareshield (on the right side, below pic was while testing).


So far I've found that the antenna works best in its retracted position; orientation doesn't seem to make a difference. I start receiving ADS-B data somewhere between 500 and 3000 feet depending on how close I am to a transmitter. The text weather is very quick; it only takes a second or two to update every airport within a 250 mile radius of the transmitter. The radar takes a little longer, sometimes doesn't load at all if ADS-B signal strength is weak, and of course there are the well-known latency issues, but its still a valuable resource for making strategic decisions.

I expected to mostly use the stratux for weather updates but I've found the traffic feature unexpectedly useful. True, it doesn't show all targets and sometimes it doesn't work at all (since I don't have ADS-B Out, another airplane that does has to be within 25nm of me) but is nevertheless a welcome aid to the Mark I eyeball. Several times already I've been alerted to potential threats before ATC called them out, and on one occasion I declined an erroneous instruction by an overwhelmed tower controller based on traffic I didn't see but ADS-B showed was there. I'm still a bit miffed at the way the FAA is handling the ADS-B Out mandate, but I can certainly see the practical upside to the system once everyone is participating. I just wish there was a VFR ADS-B Out solution as cheap and elegant as the stratux.

3 comments:

Anonymous said...

Hi Sam: does it transmit ADS-B too? For example, can I track you on FR24?

Check This Out said...

Wireless device, in addition to supply just to walk you through the straightforward setup procedure, it’s super easy, in addition to you’ll question the reason why you didn’t change to cellular internet prior to!

Unknown said...

I certainly appreciate your stuff provided in the blogs.
wireless broadband rural areas