Hello all,

I'm fairly new to GNURadio and am trying to make a receiver for ADS-B signals (I know there are a lot out there already, but I'm trying to work through the process on my own to familiarize myself with all the different parts of GNURadio). Here's a sketch of what I have right now:

 * Osmocom source (for a HackRF) (this is sampling at double the signal
   bitrate so I can perform a Manchester decode later)
 * Complex -> Mag^2
 * Threshold
 * Float -> UChar
 * Correlate (for the frame sync)
 * Custom blocks to frame the data (and decode it from Manchester
   coding), calculate the CRC, and decode it

It generally works, but when I compare my output to other peoples' software, I can see that I'm getting a lot less data. I strongly suspect that the issue is with the values I have in the threshold block, since my Manchester decoder reports the signal is often staying constant instead of transitioning during a bit period. The question from all of this: are there any recommendations or tools for how to calculate optimal values for the threshold block's low and high parameters? I've hooked the Complex -> Mag^2 output up to the QT GUI Sink, and I see a wide variance in the values of the time domain display, no obvious "high" and "low" levels to work with.


Chris Reffett

Discuss-gnuradio mailing list

Reply via email to