[Top][All Lists]

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

[Discuss-gnuradio] Sub-Band Tuner / Carrier Detect / AGC

From: mgray
Subject: [Discuss-gnuradio] Sub-Band Tuner / Carrier Detect / AGC
Date: Mon, 17 Jan 2005 22:00:37 -0700 (MST)

I'm creating a sub-band tuner to channelize a wider IF stream.  One use 
would be to listen to FRS radio channels that are spaced 25KHz apart.  I 
created the following code snippet:

    # Filter around FM modulated channel (16KHz wide) = 2 * (5KHz 
Deviation + 3KHz Max Audio Freq)
    channel_coeffs = gr.firdes.low_pass (1.0, if_rate, 10e3, 6e3, 

    # Select desired channel (two channels above the center freq)
    ddc = gr.freq_xlating_fir_filter_ccf (if_decim, channel_coeffs, 50000, 

    fm_demod = gr.quadrature_demod_cf (0.1)

    # Filter the output audio (change to band pass to remove CTCSS tone)
    width_of_transition_band = audio_rate / 8
    audio_coeffs = gr.firdes.low_pass (1.0, if_rate, 8e3, 4e3, 

    audio_filter = gr.fir_filter_fff (audio_decimation, audio_coeffs)

    # Connect the chain
    fg.connect (ddc, fm_demod)
    fg.connect (fm_demod, audio_filter)

    return ((ddc, 0), (audio_filter, 0))

I've set the USRP IF to the center channel in the desired band.  Using the 
freq_xlating_fir_filter_ccf method, I should be able to go up and down in 
25KHz step to listen to each channel.  This works great, except I hear the 
image channel, as well as the desired channel at the same time.  So I hear 
+/- 50KHz in the above example.  Should the freq_xlating_fir_filter_ccf 
method just select the upper or lower side band signal based on the sign 
of center_freq.


Is there a way to access the magnitude of the channel to setup a 
squelch function?  How would that work with this chain of blocks?  Is 
there another block that would go in the chain to zero the output if the 
I*I + Q*Q of the signal is below a threshold?


Is there a block that impliments AGC for AM signals?


With the latest CVS code block, there is now a sequence of aU characters 
printing out while the flow graph runs.  Do these denote under runs in one 
or more subsystems?


I have a number of off air sample signals now captured.  I'll post them to 
my web site in the next day or two.  These include:

Multiple narrow band FM signals (In the same IF pass band)
Airband AM ATIS recording
Multiple NDB (Aircraft) siganls (In the same IF pass band)
Upper and lower SSB signals

Still working on getting NTSC and GPS capture

Sorry for so many questions in the same message.  Should I break them down
to one question per e-mail to make it easier to follow threads?  
Hopefully these are of use to others on the board.

reply via email to

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