I'm assuming the GDL 39 is airborne when receiving -- there's no guarantee of ground-based coverage, and unless you're close to a transmitter or have line-of-sight due to elevation you might not have any signal to work with.
I think the first thing you should do is verify some sort of signal is present, using osmocom_fft or whatever, and then record some samples you can work with offline to decode. Maybe go for a flight near the uplink, verify there's a signal using both the GDL 39 and the RTL dongle, and record some nice strong samples to hack on later.
I haven't looked into decoding UAT with any seriousness apart from reading DO-282B, but 2 samples per symbol should be enough to work with. Maybe I'm being clueless here, but I don't see justification for saying the RTL dongles can't sample fast enough for UAT. The usual noncoherent method -- a differential quadrature demodulator -- should be fine, and saves you from having to phase- and frequency-synchronize with the baseband signal. I haven't looked closely at your code, but your description sounds pretty close to that. You'll see (up to) 312.5kHz deviation on a '1' bit, and (up to) -312.5kHz deviation on '0'.
You can probably get away with open-loop clock recovery since the packets are so short, but you'll still have to estimate the center of the bit so you can sample and slice.
Personally, as a registered GNU Radio fanboy, I'd be using GR to at least get started demodulating UAT. It gets you graphical sinks to work with and a set of proven signal processing blocks, so you don't have to worry as much about an ad-hoc approach being valid or not.
--n
On Wed, Jan 22, 2014 at 8:54 AM, Pete Zaitcev zaitcev@kotori.zaitcev.uswrote:
I know someone who's reveiving FIS-B with a GDL 39, although his home base is about 100 km north-east. I'm somewhat confident that I should have the coverage. One problem is, from what I heard, the ground stations will not broadcast anything until a UAT-equipped aircraft checks in.
Regardless, I was hoping that Nick or other experts chime in on the code itself. Honestly I have no clue what I'm doing here. I imagine that if signal is present, then vector pointed by Q+jI rotates at ~300 revolutions per second. Therefore, I calculate the phase angle difference between two samples taken at twice the UAT bit rate and see if it's anywhere reasonable. It may be a bogus technique for any number of reasons.
-- Pete
On Wed, 22 Jan 2014 08:25:57 -0800 David Jacobowitz david.jacobowitz@gmail.com wrote:
This may be dumb because I haven't looked into it, but is it reasonable
to
expect to receive a signal?
Are you in the US? There really aren't that many UAT equipped aircraft
yet.
The FAA is rebroadcasting ADSB ES responses on UAT as well as providing weather and other data, but that is all coming from ground stations. If
you
need line of sight and you're on the ground yourself you may be out of
luck.
- Dave J