How to: build your own ADS-B receiver

I have no doubt that there are other ways to make this work, and also that there are other components that may also work that may be smaller, better etc. The program for the Stratux setup was designed around the components in that shopping list, so changing components may produce undesirable results. I'm sure they could also work, but unless you have the coding knowledge to modify the program to make things work, you are probably better off sticking with the list.

One other note, the software has been continually updated, and has added new features and bug fixes. If you haven't got the latest version, it may be worth looking at downloading the newest version and updating your software.
 
This is a no-brainer for me, I already had all the stuff laying around from my nerd-project feeding Flightradar24 and Flightaware. I just bought a second Rasberry Pi and a second SDR radio tuner and I'm in business! This beats the hell out of a 500-$1000 DGL-39 or Stratus that doesn't really show much traffic anyways because most GA owners are procrastinating until 2020 to buy their -out setup.
 
Well, my understanding is that XM requires a monthly subscription, while FIS-B weather is FREE, so there's that... My experience with the stratux, and I've used it quite a bit, is that the radar updates pretty quickly. The data is usually no more than 5 or 10 minutes old provided you have good reception. I have seen the metar info update before the controllers could cut a new ATIS, so that updates pretty quick as well. As for the XM, I'm sure it would require both additional hardware and software to make that happen.
 
All you have to do is buy 2 of these instead of 1. http://www.amazon.com/gp/product/B00P2UOU72

The software will automatically assign one to 978 and the other to 1090. Basically what it will do is it will show you mainly airliners that are equipped with ADS-B, because 1090 is the current international standard. 978 is more of a US standard.
There is one additional step, you need to go to the webpage for stratux 192.168.10.1 and enable it. Works like a charm once I enabled it. I flew with 2 tablets yesterday and certainly enjoyed the weather and traffic in the cockpit for extra institutional awareness.
 
I apologize for necroposting this...

I was wondering if anyone has brought this device up in a Airbus or Boeing or is everyone bringing them up in GA aircraft. (or willing to admit to doing it - I guess I'm just putting myself out there - come get me FAA)

Messing with just a Bad Elf GPS in an EFB flight bag in an Embraer or Canadair - you found blind spots where the Bad Elf just wouldn't receive a good signal -(I have no actual idea why the degraded GPS reception - I'm guessing due to the heated windows) - moving the Bad Elf GPS receiver to the unheated portion of the window usually solved the problem.

However in an Airbus all the windows are heated, and I'm only having sporadic luck getting a GPS signal inside the cockpit with the Elf.

So I'm wondering if anyone else is willing to admit having experience playing with this thing in an Airbus or Boeing.

I went ahead and built one with the latest parts list using the Raspberry Pi 3 iteration instead of the 2 from last year.

So far my experience has been mixed. Like @wheelsup I'm mostly interested in the weather info pushed to me and the big picture radar mosaic.

Traffic I already get from TCAS, but it's a very limited picture - just relative position and relative altitude no id.
Weather I can get - but it's all pull only if ACARS is working today. If it's not working I have no weather other than what I can dial up over COM2.
Radar, I have too but I can only see as far as the next thunderstorm cell - I can't see if there's another cell hiding behind it.

GPS from Strattux has been rock solid compared with the Bad Elf. I have a valid usable GPS signal no matter where I put the GPS receiver.
1090/UAT reception - I get more 1090 than I receive UAT.

Traffic - I can receive my own transponder - average -1db signal strength. Other 1090 traffic in the flight levels is unreliable - sometimes I can see other folks, other times I can't. There doesn't appear to be any rhyme or reason. Sometimes I receive 1090 signals from aircraft hundreds of miles away, but I can't get the 1090 squawk from the guy that just 10 miles away. Average reception strength is -25 to -30 db for the ones I do receive (so 1000x weaker than my transponder signal? - each 3db is half power I believe). The altitude reported by the 1090 requires interpretation because Strattux converts it to a relative altitude compared to your GPS altitude, which is not the same altitude you're flying at. So you have to do the mental math to correct the altitude info.
However when I do get the full 1090 message decoded, I know exactly who that guy is on my TCAS display and I can see his heading, speed, transponder reported altitude, tail number, and flight ID (whatever he entered - usually flight number but sometimes I decode other unrepeatable phrases instead of their flight number)
When I get lower in the terminal area, I start getting UAT traffic, but by then there's so much traffic the display is very cluttered and makes the traffic presentation unusable. - I wish there was a way to filter the traffic.

FIS-B reception - mixed. When I get the UAT transmission, weather is great - I get the METARS but I get what I get, and sometimes I want a METAR for a specific airport, well I didn't get that part of the broadcast so there's no info.
I am able to get the radar mosiac pushed to the Foreflight app, but because reception is spotty I don't have the full picture. So far it's not 100% reliable, and so I'm guessing maybe 25% of the time I'm able to get a broadcast.

Then I found out I mixed my antennas up - I plugged the 978 antenna into the 1090 radio and vice versa, so I've got that fixed. and will play with it some more to see if things change.

The biggest drawback - since I fly for a low tier airline with no wifi service, the pax in back that don't have their devices in airplane mode, they've connected to the Strattux hotspot looking for GoGo internet service and not finding it ... I've seen as many as 40 connected clients to the Strattux, that could be why I'm getting mixed performance with the FIS-B download and display. And if anyone's in back from the FAA to help, they'll easily figure out what's going on and might decide to visit up front afterwards.

It has been an interesting experiment. It's nice to have the extended 1090 info when everything is finally implemented in 2020. Whether the airlines will equip their aircraft to display to extra 1090 info, I doubt it - there's no need.
(The Navy if they don't plan on installing 1090 decoding capability on their ships, should - it makes the ID job of sorting out non-cooperative air tracks simpler?, but then I'm guessing bad guys could equip their planes to send out bogus 1090 info, so maybe not.)

I'll most likely disassemble the device when I'm done experimenting and use the Pi for something else, like a retro arcade gaming emulator.
 
Last edited:
The biggest drawback - since I fly for a low tier airline with no wifi service, the pax in back that don't have their devices in airplane mode, they've connected to the Strattux hotspot looking for GoGo internet service and not finding it ... I've seen as many as 40 connected clients to the Strattux, that could be why I'm getting mixed performance with the FIS-B download and display. And if anyone's in back from the FAA to help, they'll easily figure out what's going on and might decide to visit up front afterwards.

How savvy are you? The reason I ask is that you can modify the hostapd (program that makes the Stratux a WiFi hotspot) configuration file so that it hides the SSID (network name). This means it won't show up in the list of available WiFi networks for most people including yourself on your iPad. You'll have to connect to it by selecting "Other..." at the bottom of the WiFi and putting in the exact details to be able to connect to it.

Let me know if I'm speaking gibberish...

Glad to hear you've used it up front on the heavy metal. Really interested to hear if you can get the radar picture working reliably because I'd really like to have that as well.
 
Glad to hear you've used it up front on the heavy metal. Really interested to hear if you can get the radar picture working reliably because I'd really like to have that as well.

I'm not very tech saavy unfortunately, Tinkered a bit around the hostapd.conf Now it doesn't broadcast the ssid, changed the name as well and added WPA so it's not viewable by the general public, but still vulnerable if someone brings aboard stuff that goes looking for hidden ssids. Now it just looks like someone didn't put their smartphone in airplane mode and left their hotspot going.

Reliability? - I would have to say, not reliable in a turbine aircraft manufactured by Airbus (and I'm extrapolating to probably not reliable in a Boeing as well) as long as the antennas are internal to the aircraft. I think if the antennas are external, it would work a lot better.

Weather is hit or miss in flight level cruise - it doesn't matter what orientation I put the antennas or where I put the antennas. Weather downloads when it connects, but the connection is intermittent varying between 0, 1 and 2 ADS-B tower. So the weather info is incomplete.
The best reception has been down low below 18,000ft, I have been able to get as many as 6 towers, at that point I might have a complete download.

So at best you might get a broadbrush strategic weather picture with the AIRMET/SIGMETs but you have no idea what information you're missing

At worst you have a fairly reliable homemade GPS that can drive any EFB application on the iPad, but it doesn't work with JeppFD.

The third-party EFB apps appear to decode the GDL90 NMEA stream directly off the Stratux, but the Jepp app appears to rely solely on the Apple's Location Services API which isn't updated by the Stratux so Jepp is lost with this ADS-B receiver.
 
I apologize for necroposting this...

I was wondering if anyone has brought this device up in a Airbus or Boeing or is everyone bringing them up in GA aircraft. (or willing to admit to doing it - I guess I'm just putting myself out there - come get me FAA)

Messing with just a Bad Elf GPS in an EFB flight bag in an Embraer or Canadair - you found blind spots where the Bad Elf just wouldn't receive a good signal -(I have no actual idea why the degraded GPS reception - I'm guessing due to the heated windows) - moving the Bad Elf GPS receiver to the unheated portion of the window usually solved the problem.

However in an Airbus all the windows are heated, and I'm only having sporadic luck getting a GPS signal inside the cockpit with the Elf.

So I'm wondering if anyone else is willing to admit having experience playing with this thing in an Airbus or Boeing.

I went ahead and built one with the latest parts list using the Raspberry Pi 3 iteration instead of the 2 from last year.

So far my experience has been mixed. Like @wheelsup I'm mostly interested in the weather info pushed to me and the big picture radar mosaic.

Traffic I already get from TCAS, but it's a very limited picture - just relative position and relative altitude no id.
Weather I can get - but it's all pull only if ACARS is working today. If it's not working I have no weather other than what I can dial up over COM2.
Radar, I have too but I can only see as far as the next thunderstorm cell - I can't see if there's another cell hiding behind it.

GPS from Strattux has been rock solid compared with the Bad Elf. I have a valid usable GPS signal no matter where I put the GPS receiver.
1090/UAT reception - I get more 1090 than I receive UAT.

Traffic - I can receive my own transponder - average -1db signal strength. Other 1090 traffic in the flight levels is unreliable - sometimes I can see other folks, other times I can't. There doesn't appear to be any rhyme or reason. Sometimes I receive 1090 signals from aircraft hundreds of miles away, but I can't get the 1090 squawk from the guy that just 10 miles away. Average reception strength is -25 to -30 db for the ones I do receive (so 1000x weaker than my transponder signal? - each 3db is half power I believe). The altitude reported by the 1090 requires interpretation because Strattux converts it to a relative altitude compared to your GPS altitude, which is not the same altitude you're flying at. So you have to do the mental math to correct the altitude info.
However when I do get the full 1090 message decoded, I know exactly who that guy is on my TCAS display and I can see his heading, speed, transponder reported altitude, tail number, and flight ID (whatever he entered - usually flight number but sometimes I decode other unrepeatable phrases instead of their flight number)
When I get lower in the terminal area, I start getting UAT traffic, but by then there's so much traffic the display is very cluttered and makes the traffic presentation unusable. - I wish there was a way to filter the traffic.

FIS-B reception - mixed. When I get the UAT transmission, weather is great - I get the METARS but I get what I get, and sometimes I want a METAR for a specific airport, well I didn't get that part of the broadcast so there's no info.
I am able to get the radar mosiac pushed to the Foreflight app, but because reception is spotty I don't have the full picture. So far it's not 100% reliable, and so I'm guessing maybe 25% of the time I'm able to get a broadcast.

Then I found out I mixed my antennas up - I plugged the 978 antenna into the 1090 radio and vice versa, so I've got that fixed. and will play with it some more to see if things change.

The biggest drawback - since I fly for a low tier airline with no wifi service, the pax in back that don't have their devices in airplane mode, they've connected to the Strattux hotspot looking for GoGo internet service and not finding it ... I've seen as many as 40 connected clients to the Strattux, that could be why I'm getting mixed performance with the FIS-B download and display. And if anyone's in back from the FAA to help, they'll easily figure out what's going on and might decide to visit up front afterwards.

It has been an interesting experiment. It's nice to have the extended 1090 info when everything is finally implemented in 2020. Whether the airlines will equip their aircraft to display to extra 1090 info, I doubt it - there's no need.
(The Navy if they don't plan on installing 1090 decoding capability on their ships, should - it makes the ID job of sorting out non-cooperative air tracks simpler?, but then I'm guessing bad guys could equip their planes to send out bogus 1090 info, so maybe not.)

I'll most likely disassemble the device when I'm done experimenting and use the Pi for something else, like a retro arcade gaming emulator.

From my early days flying FPV (Drones to most folks), I found a lot of times GPS would not work was due to a harmonic of another device crossing over into GPS bandwidth. A great tool (but likely too expensive to figure out your problem, not to mention weird looks from other crew members) would be this: http://rfexplorer.com/ Your heated windows theory has a lot of merit also. Another very useful and free tool would be GPS test, an android app. Learn how it reacts outdoors, and compare how it reacts before and after you power up the airbus.
 
I'm not very tech saavy unfortunately, Tinkered a bit around the hostapd.conf Now it doesn't broadcast the ssid, changed the name as well and added WPA so it's not viewable by the general public, but still vulnerable if someone brings aboard stuff that goes looking for hidden ssids. Now it just looks like someone didn't put their smartphone in airplane mode and left their hotspot going.

Exactly, now 99% of the people in the back shouldn't have the ability to bombard it with 2.4 Ghz.

Reliability? - I would have to say, not reliable in a turbine aircraft manufactured by Airbus (and I'm extrapolating to probably not reliable in a Boeing as well) as long as the antennas are internal to the aircraft. I think if the antennas are external, it would work a lot better.

Weather is hit or miss in flight level cruise - it doesn't matter what orientation I put the antennas or where I put the antennas. Weather downloads when it connects, but the connection is intermittent varying between 0, 1 and 2 ADS-B tower. So the weather info is incomplete.
The best reception has been down low below 18,000ft, I have been able to get as many as 6 towers, at that point I might have a complete download.

That's too bad... was really hoping it was a processing issue that could be solved by kicking everyone else off the wifi.

At worst you have a fairly reliable homemade GPS that can drive any EFB application on the iPad, but it doesn't work with JeppFD.

The third-party EFB apps appear to decode the GDL90 NMEA stream directly off the Stratux, but the Jepp app appears to rely solely on the Apple's Location Services API which isn't updated by the Stratux so Jepp is lost with this ADS-B receiver.

It's too bad JeppFD isn't supporting this stuff. There's lots of freely available information out there on the radio waves that would be nice to have if the RF side could be sorted out.

I know SJI is starting to open up better access to some weather information on their EFB system through a new weather app that they had developed in house. Perhaps it's not too much of a stretch to think that some of that will trickle down to all of their "owned but operated by" GoGo equipped aircraft.
 
Well, it appears that the orientation of the 978MHz antenna makes a difference. Turning it 90 degrees now means getting FIS-B reception for approx 80% of a flight compared to less than 20% of the flight.

So I guess I am going to have to revise the viability of this device upwards.

Signal strength of GPS signals is attenuated 12db inside an Airbus cockpit vs outside which means the GPS signal inside an Airbus (28db average) is 1/16 the signal strength on the ramp (40db average)

The 1090 and 978 signals are also attenuated but even worse, Average signal strength of ads-b ground towers that I am receiving in flight above FL300 is around -25db. However I don't know what signal strength I would be getting compared to a general aviation aircraft like a Cessna or piper. But with the change in antenna orientation I am now able to reliably receive the FIS-B broadcast and receive enough of the broadcast to get useful information, like airmets and sigmets and the national nexrad radar mosaic for most of the flight in cruise flight.

The furthest ads-b tower that I have been able to receive useful information has been 200 miles though most will be within 100 miles.
 
@woodreau

By 90 degrees, do you mean horizontal or vertical ?

It worked very well in the Citation, but poor in the Challenger. There are a couple differences between the two. Window size and shapes are different, the Challenger has smaller windows with less view of the ground. Possible obscuration of ground antennas. Windows were pneumatically heated for de-ice, whereas the Challenger has electric window heat.

It is almost a wash because we have wifi on the challenger which almost eliminates the need for ADS-B info, except traffic.


Sent from my StarTac using Etch A Sketch.
 
Originally I had the antenna oriented so that it was pointing straight up.

When I turned the antenna 90 degrees to point into the aircraft away from the window with the antenna parallel to the flight deck floor, I started receiving ads-b tower broadcasts in the cruise flight levels. All of the Airbus windows are electrically heated all the time and I have a hard time getting a bad elf GPS-1000 receiver (the old 30-pin plug in dongle) to work.

I think my experience with this is similar to yours in terms of data received. I've never gotten more than 3 towers in flight at the cruise flight levels, but when descending into the terminal areas, I am able to pick up more towers.

Any 1090 traffic that is decoded is usually farther out and out of the range of the aircraft tcas display. Or the traffic is at the low levels - between the ground and 18000ft and of no concern of me.

The only time I could see the traffic being useful is when the approach controllers are setting up the landing lineup, it was "gee-whiz" to see the three streams of landing lineups going into ohare and I could identify each aircraft by flight number and tail number and see their individual ground speeds.

Or going into LA and watching the controllers merge the downwind and seal beach arrivals in with the arrivals from the east. Hearing controllers call out flights and then glancing at the display you could see where that guy was relative to own ship.
 
I was/am thinking of getting the Stratus 2S for use with ForeFlight before I saw this. Now I'm thinking about building one of these instead.
How does it compare with the 2S?
 
Last edited:
I was/am thinking of getting the Stratus 2S for use with ForeFlight before I saw this. Now I'm thinking about building one of these instead.
How does it compare with the 2S?
It does everything the stratus does minus the AHRS. There is an AHRS unit available and the newest software load does support it (I haven't tested it yet), though officially it is still in beta.

I've got maybe 100 hours on my first one and just a couple flights on my second one - zero issues anywhere. It's physically larger than the stratus due to the external antennas, but running them side by side I've had better acquisition and depending on location more towers with the Stratux, so at least there's some advantage.

I got an email last night from FltPlan.com talking about a new ADS-B receiver which led me to a replacement antenna that is much smaller, I went ahead and ordered one. I'll probably throw it on my old Stratux and run them side by side to see how the reception is, if it's comparable, I'll ditch the big ones and it'll be smaller than the stratus.
 
Back
Top