Dogfighting with ADS-B traffic over Pennsylvania

Flying had become somewhat routine – hundreds of hours in the logbook, an instrument rating, and I had now gone up in varying weather conditions as a cautious and careful pilot without incident. I had recently purchased one of the new Stratus ADS-B In receivers, and appreciated the subset of traffic that appeared on my iPad mini.

It was an unremarkable flight so far, but suddenly the large letters “TRAFFIC” plastered across my screen with corresponding alert. Three hundred feet below and slightly behind was an airplane, approaching fast. I had overflown an airport, but hadn’t seen anybody. I banked left and right in my low wing craft, looking for the guy, who must be right below me, now 200 feet. On a collision course. He was going to rise up into my gear or clip my wingtip. This was an extremely dangerous situation. Craning my neck in all directions, still negative contact.

traffic_alert_screenshot
Where did he come from?!

The other airplane was ever so close, but still below, now slightly off to the right. Evasive action was now mandatory. I looked to my left and above: clear. I did a chandelle, pulling a few G’s. I was VFR, without flight following this morning, and this should nicely take me out of harm’s way.

Except it did not – by awful luck the other pilot had also turned left and was still on my tail! Perhaps he had done the same maneuvering when he saw me. I looked around, still no dice. Well, about this time I figured it out, my stress level dropped significantly, and the experienced reader has probably determined what was happening, given the series of improbable events. In order to test my theory, I made a gentle circle toward back on course, and sure enough, this pesky other pilot followed me back on heading, and then suddenly disappeared altogether.

I was dogfighting with myself. Fortunately, other than a few cups of wasted avgas and a ounce of knowledge gained, there was no harm done.

What happened?

Traffic Information Service (TIS) obtains radar-derived location data of aircraft transponders; this location data is uploaded to a receiver for display as an aid in situational awareness and avoiding potential traffic conflicts. TIS-A used the Mode S data block alone and was restricted to terminal radar control areas, while the newer TIS-B integrates ADS-B location data in addition to radar data for subsequent re-broadcast from a series of ground stations.

The TIS-B uplinks for display are performed both using the 1090 MHz frequency (often called extended squitter) or the 978 MHz frequency (called UAT, for Universal Access Transceiver); in areas of reception for TIS-B this gives the receiver traffic, even without the newest ADS-B Out equipment. This is integrated into the more complete system as part of the full NextGen ensemble – in essence the ADS-B ground stations will uplink both traffic information (ADS-B and radar airplane locations) and FIS-B (flight information service, primarily weather updates).

As ADS-B rebroadcast is upon request and only includes traffic that is relevant to the airplane receiving the broadcast, only airplanes with ADS-B Out equipment will receive a complete traffic picture. Airplanes with ADS-B In equipment, however, may “piggyback” and receive the airplane locations and display them on their screen when in the vicinity of an airplane that has requested ADS-B data.

ADS-B traffic
If you’re ADS-B In, but not ADS-B Out equipped, you’re only seeing part of the picture

Thus, my own airplane, with only the Mode S transponder (not ADS-B Out), was being tracked by ground radar, and I received the location of myself via the TIS-B upload, as I was near to a major airport providing this (radar-based) service and another airplane that had triggered the broadcast upload. The application running on my iPad, ForeFlight, did its best to determine what my own track was, but displayed the slightly laggy radar data on my screen as another ship. My non-baro-aided ADS-B In only “knows” of the GPS location, so if this differs enough from the TIS information, the unknown craft will be displayed.

In talking with ForeFlight support, their programmers note that ADS-B/TIS-B In will attempt to eliminate the ownship based on the current GPS location, however, this is imperfect and sometimes the uploaded data will show. With ADS-B Out on the aircraft, ForeFlight will eliminate ownship because it knows your airplane’s exact location and N-number from the Out transmission.

Since my initial surprise, I have had numerous appearances of ownship alerts using ForeFlight, all in TIS-B areas which generally exist around busier Class B airports. A hallmark is the slight lag of the upload, so the ship appears slightly behind and does whatever maneuvering you have been doing; and altitude is invariably within 300 feet or so.

Awareness of these events will prevent pilots from being surprised by the sudden appearance of phantoms, and help the ADS-B user to distinguish the real threats from the sudden appearance of ghost planes from self-tracking. In this situation the primary danger that could result is from excessive or inappropriate maneuvering as part of a startle or panicked reaction, which could be even more dangerous than a real threat.

Until ADS-B Out is required, shadows of ourselves, our own ghost airplanes, will remain on occasion.

16 Comments

    • Yes – Mode S has a unique identifier of each aircraft which is essentially digitally encoded and detected by the SSR antenna of the facility. So the radar sweeps with Mode S information can detect “unique” aircraft and assign this to Flight numbers or N-numbers etc.

      However this information is not passed to Foreflight on the TIS upload, so Foreflight doesn’t know who you are other than matching the dot moving to your own GPS derived position and path. Also keep in mind that Mode S receives pressure-derived altitude from the plane’s transponder, and Foreflight with Stratus 2 (not 2s) only knows of GPS-derived altitude, which may introduce further discordance between the TIS position and where Foreflight thinks you are.

      Even with baro-aided Stratus 2s, the Stratus device is generally kept inside the plane, which may give a lower pressure reading than the transponder pressure due to venturi effects. (Similar to when you use the cabin alternate static source, you may see a change in altitude, almost always an increase.) So the “matching up” of your ownship is imperfect.

  • I too was on a VFR flight but had flight following. I was using WingX with an ELF GPS receiver when I notice I was about to collide with another plane slightly below and behind me. I did the same thing. Began maneuvering away and to my chagrin the other plane did the same thing. My girlfriend was frantically looking for the other traffic as well and I was perplexed as to why ATC had not warned me of the impending collision. It soon became clear that no matter maneuver I made the “shadow” kept following me. I eventually figured it out but there were a few moments of excitement for sure.

  • Nice technical description of this “ghost” phenomenon by the electrophysiologist and understandably so but much too convoluted for my limited comprehension having also also experienced the same dogfight with my Straus in only receiver. I’m not dissing his description and credentials as I am sure he is spot on in his analysis of the seemingly convoluted and complex ADS-S system that we can only surmise will enable us to operate in the ether safely and transparently as it becomes fully implemented in 2020.

  • I have a C172 with Garmin’s GDL-84 installed. It’s a complete ADS-B FAA compliant package with ADS-B out. It displays traffic on the Garmin Pilot iPad application, audibly announces traffic with position in my headset, and lights up a light in the cockpit when a real-time trend algorithm determines if the imposing traffic is a threat. I have never seen a ghost, shadow or tail number of my ownship displayed since it has been installed.

  • I have a fully compliant ADS-B In/Out solution by Garmin (ES transponder, certified position source, 1090 Out, UAT 1090/978 In.) Yet I have experienced a ghost once or twice, so the solution is not necessarily having a fully compliant ADS-B installation. My theory is that there *might* be a discrepancy between the barometric pressure at the radar source and what pressure you set in your altimeter. Just a theory….

    • Your encoder/transponder reports baro altitude referenced to 29.92 to avoid any mismatch in pilot set altimeter settings between aircraft in proximity of each other. Secondary surveillance radar only receives what you are reporting as altitude, based on a common 29.92 reference (ie. the radar does not have or use baro pressure at the radar source).

      • Dave, probably the easiest way to think about it is that the altitude-encoding transponder just encodes the plane’s barometric pressure. In class A airspace reported altitude is indexed to common 29.92 reference (pressure altitude), but for the purposes of the TIS-B upload this is subsequently indexed / referenced to local barometric readings at the facility.

        The SSR facility will take the local altitude reading, determine the altitude from this reading, and re-upload that (altitude) value through the TIS-B to ADS-B / TIS-B receivers. If there is significant local variability, then the GPS altitude may be a bit different from the pressure altitude.

        If TIS upload was only the raw pressure data (pressure altitude alone), indexed to the fixed 29.92 reference, there would be such wide variability between the GPS altitude and the TIS-B altitude, so much to make it useless outside of class A airspace (where everybody is following the same reference.) It would similarly be useless for terrain avoidance with routine > 1000+ foot swings between the TIS-B and GPS altitudes.

  • The TIS-B uplink is only provided on UAT 978 MHz, not both 1090 MHz or 978 MHz as described in the article. Yes the TIS-B uplink provides information on traffic that may be reporting ‘out’ on both 978 or 1090, but it only comes up via 978. The TIS-B message actually includes all traffic the ground station ‘sees’ or knows about – including Mode A or C equipped aircraft – not just ADS-B ‘out’ aircraft. The 1090 receiver is only receiving direct air-to-air broadcasts from 1090 ADS-B out aircraft.

    • The article is correct. TIS-B is uplinked on both 978 and 1090 MHz. The FAA has this information available in their NextGEN educational material.

      • Oops, my mistake. I was confusing FIS-B. And upon further review, the TIS-B uplink technically ONLY contains non-ADS-B out traffic. ADS-R on the other hand is the rebroadcast of ADS-B out traffic broadcasting on the opposite link of what you are broadcasting as receiver capability (FAA assumes you are receiving all common link traffic directly air-to-air). If you are broadcasting that you are dual link ‘in’ capable, then you only get TIS-B and therefore only non-ADS-B traffic. Who knew? Just when I thought I had a handle on it all…

  • I have a TSO out and a garmin gdl39 / garmin pilot in. I still occasionally get a shadow target. I have gotten used to it by being vigilant. If I check often and there is nothing near me, then I suddenly get an alert, then I don’t react. It quite often even comes up with my tail number. They should write the software to ignore your own tail number.

  • I used a Stratus for 2 years before upgrading to ADS-B out, it is a great product if you fly in busy airspace with a large number of equipped aircraft to light up your iPad. Imagine my surprise when I got my first traffic warning after upgrading, very similar to the one described in the story, and suddenly realized it was an actual high wing coming up from below my low wing at almost the exact same speed. Don’t assume you have an echo, remember taking action to confirm it is a shadow is far better than the alternative.

Leave a Reply

Your email address will not be published. Required fields are marked *