FIS-B ADS-B Receiver

Discussions related to modulation techniques, filtering, error correction and detection, wireless link layer implementations, etc

Moderator: robert.ghilduta

Post Reply
rayrv9a
Posts: 7
Joined: Wed Sep 03, 2014 10:45 am

FIS-B ADS-B Receiver

Post by rayrv9a » Sat Feb 07, 2015 2:32 pm

Hi,

I am trying to use the bladeRF (115 FPGA) as a receiver for the FAA's Next Gen Flight Information Service-Broadcast system. They transmit at 978MHz, and use phase coherent BFSK modulation with a symbol rate of 1.04167MS/s and a deviation of +/- 312.5 KHz. Also used is byte interleaving and a R-S FECcode. The RTCA publishes the officlal spec for the system in document RTCA DO-282B. I found what I believe is a draft copy of it on line and have used it so far in my design as to buy a full copy as a non-RTCA member is $650.00 (ouch!).

At this point I have written C code running on a PC under Ubuntu that uses the bladeRF. My code is debugged and can successfully demodulate the signal and obtain symbol lock. So far my tranmitting source has been a vector signal generator, programmed to match the modulation specs that continuosly transmits the FIS-B 36 bit sync code. My demodulator/symbol timing recovery code uses the bladeRF to downconvert and then sample the IF. Those samples feed a complex FFT and by sliding the FFT window over a block of samples, I can make bit decisions and correlate against the sych code. If I don't get a correlator score of zero, I slide the window on sample to the right and try again. So far so good.

I live fairly close to Reagan National Airport and have an outdoor deck on the 13th floor of a condo building. So, to continue testing, I "replaced" the VSG with an antenna. My code no longer achieves synch lock and I am trying to elminate possible causes. The spec I have says the receiver needs to work with a receive signal strength of -91dBm at the antenna input. With the bladeRF set with the LNA at high gain (6dB) and its two VGA's both set at a gain of 30dB I can achieve synch lock down to a VSG output level of -60dBm. So, by the spec, I'll need more gain than the bladeRF can provide by itself and this might be one of the reasons why, with an antenna (it give 5dB of gain), I can't lock on to the signal. However, as close as I am to what I believe is a transmitter at the airport, I think I should be at a range from the tranmitter such that I don't need maximum sensitivity. But, the other reason may be that the sych bit sequence I've been using from the spec has been changed.

The synch sequence I am using is the binary equivalent of the hex value 153225B1D with the left most bit of the code tranmitted first. So, here are my questions:

1. Does anyone of a final copy of DO-282B to verify from it that my receiver is looking for the right sync code? In my spec it is provided in para 2.2.3.2.1.
2. Has anyone else used a bladeRF to receive the FIS-B (not the TIS-B) service? And if so, what gain setting did you use on the bladeRF? Did you also need to use an external LNA?

I also have all the necessary code written to pack bits in to bytes, de-interleave them, de-code the R-S FEC and parse the resultant bytes in to the spec's message format so I am very close here! If anyone would like to cooperate on getting this done, I'd be open to that too.

Thanks,
Ray

jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: FIS-B ADS-B Receiver

Post by jynik » Mon Feb 09, 2015 10:28 am

With those gains cranked all the way up, I'd actually expect to see your samples clipping.

Have you already saved off some real IQ samples via the bladeRF-cli or your software? I'd say it'd definitely be worth the time to do some post-analysis on them, perhaps for a few gain settings, to determine the magnitude of the IQ values you're seeing and perhaps to massage code using these real-world samples as input...

rayrv9a
Posts: 7
Joined: Wed Sep 03, 2014 10:45 am

Re: FIS-B ADS-B Receiver

Post by rayrv9a » Mon Feb 09, 2015 11:39 am

I have looked at both the raw sample values and the FFT amplitudes of those transformed samples and nothing seems to be over-ranging. Given the service's spec of -91dBm sensitivy (at input to antenna) and the fact that my demo code now only works with a VSG amplitude >= -60dBm, I suspect I need more gain prior to the bladeRF's quandrature down converter. I found a 17dB gain LNA from Mini Circuits (nicely packaged module, 5V input and sma connectors) for $40. So one is on order . . . a cheap experiment to potentially resolve the issue. We'll see.

jynik
Posts: 455
Joined: Thu Jun 06, 2013 8:15 pm

Re: FIS-B ADS-B Receiver

Post by jynik » Mon Feb 09, 2015 11:44 am

rayrv9a wrote:I found a 17dB gain LNA from Mini Circuits (nicely packaged module, 5V input and sma connectors) for $40. So one is on order . . . a cheap experiment to potentially resolve the issue. We'll see.
Oooh, nice find! Mind linking to its datasheet page here? Please do keep us all in the loop about that experiment.

rayrv9a
Posts: 7
Joined: Wed Sep 03, 2014 10:45 am

Re: FIS-B ADS-B Receiver

Post by rayrv9a » Mon Feb 09, 2015 12:22 pm

Here you go: http://www.minicircuits.com/MCLStore/Mo ... 1153343855 This one is spec'ed only to 960 MHz but judging by the gain curves, it should work at my center frequency of interest, 978 MHz.

bpadalino
Posts: 303
Joined: Mon Mar 04, 2013 4:53 pm

Re: FIS-B ADS-B Receiver

Post by bpadalino » Mon Feb 09, 2015 1:05 pm

What is the sample rate you're setting, and what is the bandwidth you're using?

You had mentioned a little over 1MHz symbol rate - I am guessing there is an RRC filter applied as well? What is the channel bandwidth or excess bandwidth of that filter?

You should be able to achieve lock at -91dBm output from your VSG. With a signal of -60dBm from a VSG and the gains all up, you should still see a very hot signal.

In fact, if you don't turn on the modulation, what are the levels of the counts coming from the ADC when the VSG is set to -60dBm output?

Brian

rayrv9a
Posts: 7
Joined: Wed Sep 03, 2014 10:45 am

Re: FIS-B ADS-B Receiver

Post by rayrv9a » Mon Feb 09, 2015 1:33 pm

I am sampling at 31.25 MS/s which gives me 30 samples per symbol period of 0.96 microseconds.

Correct on the root raised cosine filter in the VSG but I am not sure of the channel BW. I am using a 7MHz IF BW with in the VGA-filter IF block of the bladeRF.

I've never looked at the A/D output values without modulation turned on but will have a look when I can get the VSG in my hands again and will let you know.

Post Reply