discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Proper GMSK Decoding with the Viterbi Algorithm


From: Nick Foster
Subject: Re: Proper GMSK Decoding with the Viterbi Algorithm
Date: Fri, 17 Sep 2021 19:09:42 -0700

There aren't blocks in Gnuradio to do this out of the box, at least not on real signals. Unless you're working with low SNR signals, or the GMSK BT product is very low (under 0.25, let's say), it will be of somewhat limited benefit to use Viterbi decoding. Synchronization also becomes a limiting factor at these low SNRs: if you are working with short packets (like, say, AIS) you will have to use a data-aided estimator which operates on an entire packet since a normal bit-by-bit estimator will not converge fast enough, or accurately enough, at low SNR.

That said, a basic GMSK demodulator (without equalization, frequency offset correction, or Viterbi decoding) would look like this: AGC -> Symbol sync (use the D'Andrea and Mengali Gen MSK TED) -> Quadrature demod -> Binary slicer. At this point you have bits, and you can do what you like with them.

Nick

On Fri, Sep 17, 2021 at 4:04 PM <pwhines2@verizon.net> wrote:

Hello all,

 

I’ve been messing around with GNU Radio for the past couple of months, and I’m struggling to come up with a way to properly decode GMSK using the Viterbi algorithm.  The GMSK Demod block works just fine, but since the packet decoder block is deprecated I can’t think of another way to get data out of the transmissions.  Basically I’m just looking for guidance in which blocks to use and what order to use them in, and I can handle the rest myself.  I’ve made a couple of flowgraphs that seem to be on to something, but I’m not really sure.  Any help would be appreciated.

 

Thanks,

Patrick


reply via email to

[Prev in Thread] Current Thread [Next in Thread]