UAT flight tracking?

Does Flightaware track and publish the tracks of UAT ADS-B OUT equipped airplanes?

No, we currently only support 1090ES, which is the international standard with much higher equipage rates. We might look at 978 in the future, but it’s less of a priority since we already receive RADAR in the US.

Do you only receive radar tracks from FAA, or if an airplane is equipped with ADS-B Out and within range of an FAA ADS-B tower (but VFR 1200 and not participating in flight following), do those tracks get to FA from the FAA?

I was looking at dump1090 help output and I note one of the possible arguments is -freq . Hmmm. I wonder if one set that to 978000000 (978 MHz, as the argument is expressed in hz) if it would receive and successfully decode UAT transmissions. Probably not since there is FIS-B data on UAT, and possibly other data formatting issues, etc., but…

I would get another SDR and dedicate it to UAT if there was software support for it, just sayin’ …

There’s a separate program (github.com/zaitcev/ruat) that claims to be able to decode UAT transmissions. I, however, haven’t had success with this.

Thank you for the steer. I will git it and make it and see what it does exactly, as a hobby project.

I wonder if dump1090 could be modified (dump978?) to decode the UAT ADSB data. I think dump1090 can act as a tunnel / hub for multiple radios / RPi’s .

Seems it isn’t a short term FA priority, however dbaker and Karl may have suggestions for their development path vision.

For example, would they be cool with PiAware users uploading UAT data should the decode magic be made to work? Perhaps it would be transparent to FA adept servers if the resultant aircraft position reports were the same format. Or, alternately, maybe they want to gain useable intellectual property (possible something that could be monetized) by tracking UAT equipped aircraft separately or tagged as such or whatever.

My understanding is that UAT uses a completely different modulation, so you’d have to reimplement all of that. And that’s the hard bit TBH - once you have clean demodulated data, interpreting it is relatively easy.

well, I did find the spec for the modulation and data structures easily enough. RTCA does a lot of electronics research and specification generation for the FAA, like a think tank, and I ran across this:

adsb.tc.faa.gov/WG5_Meetings/Mee … B-FRAC.pdf

Which seems to be, a draft of the UAT spec.

Lots of cool words like “Reed-Solomon code” and “FEC Parity”.

For those that are interested, dump978 (thanks for the name suggestion!) is alive and well and decodes data:

github.com/mutability/dump978

It’s, uh, not exactly user friendly, but the demodulator seems solid enough and I’ve written some basic decoding/transcoding utilities to go with it.

Curious…

Obj, How do you test that?

  • UAT is USA only isn’t it?

:question:

It is indeed US-only. Kind people (notably k6rtm) sent me RF captures to work with :slight_smile:

It might be interesting to add the 978 functionality into unified instance of dump1090 and have a mode where it alternately listens on 1090 or 978 for 30 seconds at a time. Although it would potentially mean that those receivers might miss some positions while they were off frequency, it would allow at least some positions to be received on both frequencies using a single dongle and antenna without any hardware deployment changes.

Interesting - I’ve actually experimented with something a bit similar with frequency-hopping around 1090MHz +/- a few hundred kHz to look for out-of-spec transponders, much the same idea.

That said, the dongles are so cheap it’s probably way simpler to just add a second dongle and split the antenna feed.

If I am reading wikipedia right, the UAT has been deployed in US, Sweden and China. Korea is close to implement UAT (at least one ADS-R station is in service). Not sure if other countries will follow.

Does FA accept decoded UAT messages and include them in their processes?

The final data that is sent to FlightAware doesn’t distinguish whether it came over ES or UAT… It is decoded on the Pi and sent over the network as lists of: ident, hexcode, squawk, lat, lon, alt, etc. Including UAT derived positions would be acceptable as long as the data is sent in the same format. The UAT-specific data fields could simply be ignored.

Have started playing with dump978-mutability on my test rig using my current 1090 tuned antenna. Got messages almost immediately. Looks promising.

Cheers!
Litterbug


pi@raspberrypi ~/dump978 $ rtl_sdr -f 978000000 -s 2083334 -g 48 - | ./dump978 | ./uat2text
Found 1 device(s):
  0:  Generic, RTL2832U, SN: 77771111153705700

Using device 0: Generic RTL2832U
Found Rafael Micro R820T tuner
Exact sample rate is: 2083334.141630 Hz
Sampling at 2083334 S/s.
Tuned to 978000000 Hz.
Tuner gain set to 48.00 dB.
Reading samples in async mode...
HDR:
 MDB Type:          1
 Address:           A34E82 (ICAO address via ADS-B)
SV:
 NIC:               9
 Latitude:          +40.3871
 Longitude:         -83.0791
 Altitude:          6100 ft (barometric)
 N/S velocity:      -1 kt
 E/W velocity:      -164 kt
 Track:             269
 Speed:             164 kt
 Vertical rate:     192 ft/min (from geometric altitude)
 UTC coupling:      yes
 TIS-B site ID:     0
MS:
 Emitter category:  Light <= 7000kg
 Callsign:          N312CT
 Emergency status:  No emergency
 UAT version:       2
 SIL:               3
 Transmit MSO:      47
 NACp:              10
 NACv:              2
 NICbaro:           0
 Capabilities:      CDTI ACAS
 Active modes:
 Target track type: true heading
AUXSV:
 Sec. altitude:     6175 ft (geometric)


Sample screenshot in action with no fine tuning done:


Cheers!
LitterBug

Looks good!

The italicized flights will be non-ADS-B flights that are being relayed from ground radar, so presumably you have line of sight to a ground station. There are a few bits in github that will extract info from the ground uplink (NEXRAD weather maps, METARs etc) if you’re interested in that too.

I was looking at the 978 raw data earlier in the week and found the coords of a ground link within 5 miles of my house. I could see the METAR and Nexrad data but did not do anything to decode it yet. Just started playing around with it while still tweeking my 1090 feed. Figured if there was something out there to play around with, I would spend some time working on the 978 after my next round of 1090 optimizations. Basically just a quick proof of concept. Good to know about the Italicized data. I copied the 1090 mutability web page over and updated it to say 978. Other than that, no tweaks so far. Still pulling from my 1090 coco 114mm antenna too.

Cheers!
LitterBug