[Top][All Lists]

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

Re: [Discuss-gnuradio] Decoding Morse code

From: Iain Young, G7III
Subject: Re: [Discuss-gnuradio] Decoding Morse code
Date: Fri, 06 Mar 2015 21:08:40 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0

On 06/03/15 19:19, Mike Markowski wrote:

A few weeks ago I started learning my way around gnuradio and am making
progress, but could use advice from experienced users.

I've been making something of an online lab notebook recording my
efforts in gnuradio at:


At the very bottom of that page is a section named "Morse Code Decoder"
where I show a flowgraph I've come up with.  I can't figure out how to
take it farther than that, however.  I believe I need to learn how to
write an out of tree demodulator.  If I'm wrong, maybe someone can give
me a push in the right direction regarding how to use existing blocks.
If I'm correct, what would be the best modulator to study - BPSK?
("Best," meaning easiest for someone new to gnuradio to understand.)

I would pass this through a threshold block, followed by a float to
char, then out to a file (pipe) or UDP socket.

Then write your own code to take in the stream of 1's and 0's, and
decode the morse that way.

I essentially do this with my SDR radio clocks, but then I'm just
looking for a pulse of 100, 200, or 500msec, but the concept and the
theory are the same. I just used getc() and stdin.

For my purposes I dropped it down to a 1kHz stream of 1's and 0's
(actually by use of a Goertzel filter as I was tuning slightly off for
debug and able to hear it purposes!), but a Rational Re-sampler would
do just as well.

Auto detecting speed can be done - I actually wrote a prototype for use
with the CW ID of the Russian BETA Time Stations, that essentially
took a number of pulse's and gaps, worked out the differences, then
decoded the next set of dits and dahs. To be honest it was pretty
awful, but then I just needed to decode two numbers...


reply via email to

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