FSK demodulation with GNU Radio

前端 未结 1 553
野的像风
野的像风 2020-12-31 06:16

I\'m trying to demodulate a signal using GNU Radio Companion. The signal is FSK, with mark and space frequencies at 1200 and 2200 Hz, respectively.
The data in the sign

相关标签:
1条回答
  • 2020-12-31 07:09

    So, at first sight, my approach here would look something like:

    What happens here is that we take the input, shift it in frequency domain so that mark and space are at +-500 Hz, and then use quadrature demod. "Logically", we can then just make a "sign decision". I'll share the configuration of the Xlating FIR here:

    Notice that the signal is first shifted so that the center frequency (middle between 2200 and 1200 Hz) ends up at 0Hz, and then filtered by a low pass (gain = 1.0, Stopband starts at 1 kHz, Passband ends at 1 kHz - 400 Hz = 600 Hz). At this point, the actual bandwidth that's still present in the signal is much lower than the sample rate, so you might also just downsample without losses (set decimation to something higher, e.g. 16), but for the sake of analysis, we won't do that.

    The time sink should now show better values. Have a look at the edges; they are probably not extremely steep. For clock sync I'd hence recommend to just go and try the polyphase clock recovery instead of Müller & Mueller; chosing about any "somewhat round" pulse shape could work.


    For fun and giggles, I clicked together a quick demo demod (GRC here):

    which shows:

    0 讨论(0)
提交回复
热议问题