Receiving On-Off-Keyed Signal


I am trying to receive an on-off-keyed signal at 25kHz with USRP N210
and Gnuradio.
The connection between N210 and Gnuradio works - I am able to visualize
it with the waterfall and the fft-sink.

I want to convert the signal to a time-discrete bitstream, where I have
1 for signal on and 0 for signal off. The switching between the two
states in the signal is very fast - only a few oscillations long.

How can I do this with Gnuradio?

Kind regards,


On Fri, Sep 30, 2011 at 5:59 AM, Guido S. [email protected]

How can I do this with Gnuradio?

You’ll need to follow the standard digital receiver dataflow model:

(filtering)–>(demodulation)–>(clock recovery)–>(slicing)

So you can use a clock recovery block in Gnuradio (either the Mueller
and Muller or the polyphase clock recovery blocks) followed by
something to slice (determine whether a particular sample represents a
1 or a 0). One easy way to slice OOK data is to use a single-pole IIR
or moving-average filter to get the DC level of the signal (assuming
the signal is encoded to spend equal time high and low), subtract that
from the original signal, and then just use the simple slicer in
Gnuradio (which returns 1 if the signal level is >0, 0 otherwise) to
convert to bits.