Classes | |
class | usrp_src |
Create a USRP source object supplying complex floats. More... | |
class | app_top_block |
Functions | |
def | main |
Variables | |
dictionary | demod_params |
This example application demonstrates receiving and demodulating different types of signals using the USRP. |
def usrp_rx_nogui::main | ( | ) |
dictionary usrp_rx_nogui::demod_params |
Initial value:
{ 'AM' : (250, 16, 1, 5000, 8000, blks2.demod_10k0a3e_cf), 'FM' : (250, 8, 4, 8000, 9000, blks2.demod_20k0f3e_cf), 'WFM' : (250, 1, 8, 90000, 100000, blks2.demod_200kf3e_cf) }
A receive chain is built up of the following signal processing blocks:
USRP - Daughter board source generating complex baseband signal. CHAN - Low pass filter to select channel bandwidth RFSQL - RF squelch zeroing output when input power below threshold AGC - Automatic gain control leveling signal at [-1.0, +1.0] DEMOD - Demodulation block appropriate to selected signal type. This converts the complex baseband to real audio frequencies, and applies an appropriate low pass decimating filter. CTCSS - Optional tone squelch zeroing output when tone is not present. RSAMP - Resampler block to convert audio sample rate to user specified sound card output rate. AUDIO - Audio sink for playing final output to speakers.
The following are required command line parameters:
-f FREQ USRP receive frequency -m MOD Modulation type, select from AM, FM, or WFM
The following are optional command line parameters:
-R SUBDEV Daughter board specification, defaults to first found -c FREQ Calibration offset. Gets added to receive frequency. Defaults to 0.0 Hz. -g GAIN Daughterboard gain setting. Defaults to mid-range. -o RATE Sound card output rate. Defaults to 32000. Useful if your sound card only accepts particular sample rates. -r RFSQL RF squelch in db. Defaults to -50.0. -p FREQ CTCSS frequency. Opens squelch when tone is present.
Once the program is running, ctrl-break (Ctrl-C) stops operation.
Please see fm_demod.py and am_demod.py for details of the demodulation blocks.