discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Getting my feet wet on the Tx side of the world


From: Alexandru Csete
Subject: Re: [Discuss-gnuradio] Getting my feet wet on the Tx side of the world
Date: Sat, 4 Sep 2010 10:43:20 +0200

On Sat, Sep 4, 2010 at 1:53 AM, Marcus D. Leech <address@hidden> wrote:
> OK, so I'm wetting my collective feet (all two of them) in the Tx side
> of the world, with a comms/telecom application, no less.
>
> I'm playing with the OP25 project, which is an open-source initiative to
> produce tools to deal with the so-called
>  "Project 25" digital radio standard that is emerging as the way lots
> of public-service people talk to each other
>  on their radios.
>
> The TX side of the project is still fairly primitive--they have a
> hand-coded flow-graph that implements an APCO-25 4-level
>  FSK modulator, using an *audio* sink, and then carefully plugging the
> audio into the guts of a physical radio, right at the
>  FM modulator (for those of you who were around in the old amateur
> packet radio days, that's the way we used to do 9600BPS
>  packet--bypass the usual FM audio filtering, and plug directly into
> the FM modulator).
>
> So, I decided to adapt what they'd done on the audio side to driving a
> USRP directly (with an appropriate RF card, naturally).
>
> The audio version of their modulator is fairly straightforward.  It
> takes two-bit sequences from a packed-byte stream, and uses them
>  to produce symbols from a simple [1.0, 3.0, -1.0, -3.0]
> chunks-to-simples conversion.  From there, the symbols are run through
>  an RRC filter, then an FM preemphasis filter, then a gain multiplier
> block, and thence to the audio sink.
>
> I have constructed a flow-graph in GRC that I think does pretty-much the
> same thing, only instead of dumping to the audio port, it
>  has an FM modulator block, and then goes to a USRP sink, with
> appropriate interpolation specified.
>
> My GRC flow-graph is here: http://www.sbrac.org/files/fm4_usrp_modulator.grc
>
> APCO-25 runs at a nominal symbol rate of 4800sps, to give 9600BPS, and
> occupies a nominal 12.5KHz of bandwidth. The rest of it
>  involves the usual suspects of FEC coding, packetizing, etc, etc.  I'm
> just interested in getting the modulator correct at this stage, since
>  the rest of the "goo" is already partially addressed in the existing
> OP25 work.
>
> I'm not sure that my parameters for the RRC are correct, for one, and
> exactly what to set the "sensitivity" parameter to in the
>  the FM modulator (I imagine it's similar to setting the deviation
> control on an analog FM modulator).

Hi Marcus,

In the nbfm_tx.py and wfm_tx.py blocks the sensitivity is calculated as:
k = 2 * math.pi * max_dev / quad_rate


> Also, I've copied the signal processing chain almost directly from the
> version of the modulator that dumps to the audio port, so perhaps
>  there are shortcuts I can take to produce a nice APCO-25 4-level FSK
> signal that are "cheaper".

Maybe you can use the wfm_tx block?

Alex



reply via email to

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