radio/fmRadio.grc

3714 lines
80 KiB
Plaintext

options:
parameters:
author: ''
catch_exceptions: 'True'
category: '[GRC Hier Blocks]'
cmake_opt: ''
comment: ''
copyright: ''
description: ''
gen_cmake: 'On'
gen_linking: dynamic
generate_options: qt_gui
hier_block_src_path: '.:'
id: fmRadio
max_nouts: '0'
output_language: python
placement: (0,0)
qt_qss_theme: ''
realtime_scheduling: ''
run: 'True'
run_command: '{python} -u {filename}'
run_options: prompt
sizing_mode: fixed
thread_safe_setters: ''
title: Stereo FM Receiver
window_size: ''
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [51, 195]
rotation: 0
state: enabled
blocks:
- name: audioSrc
id: variable_qtgui_chooser
parameters:
comment: ''
gui_hint: 0,3,1,2
label: Audio
label0: Main
label1: SCA 67 kHz
label2: SCA 92 kHz
label3: ''
label4: ''
labels: '[]'
num_opts: '3'
option0: '0'
option1: '1'
option2: '2'
option3: '3'
option4: '4'
options: '[0, 1, 2]'
orient: Qt.QVBoxLayout
type: int
value: '0'
widget: combo_box
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [512, 196.0]
rotation: 0
state: true
- name: audio_Hz
id: variable
parameters:
comment: ''
value: 48e3
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [60, 398]
rotation: 0
state: enabled
- name: deviation_Hz
id: variable
parameters:
comment: 'FM broadcast
deviation.'
value: 75e3
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1520, 920.0]
rotation: 0
state: true
- name: downRate_Hz
id: variable
parameters:
comment: ''
value: 10* audio_Hz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [60, 464]
rotation: 0
state: enabled
- name: freq_MHz
id: variable
parameters:
comment: ''
value: '104.5'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [200, 1412.0]
rotation: 0
state: true
- name: fsPilot_Hz
id: variable
parameters:
comment: 'Sample rate when working
with 38 kHz stero pilot tone.'
value: 2 * audio_Hz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [54, 284]
rotation: 0
state: enabled
- name: lpTaps
id: variable_low_pass_filter_taps
parameters:
beta: '6.76'
comment: ''
cutoff_freq: 100e3
gain: '1.0'
samp_rate: downRate_Hz
value: ''
width: 10e3
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1680, 916.0]
rotation: 0
state: enabled
- name: mute
id: variable_qtgui_check_box
parameters:
comment: ''
'false': 'False'
gui_hint: 0,5,1,1
label: Mute
'true': 'True'
type: bool
value: 'False'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [661, 199]
rotation: 0
state: true
- name: rfGain_dB
id: variable_qtgui_range
parameters:
comment: ''
gui_hint: 1,0,1,3
label: RF Gain (dB)
min_len: '200'
orient: QtCore.Qt.Horizontal
rangeType: int
start: '10'
step: '1'
stop: '90'
value: '50'
widget: counter_slider
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [368, 332.0]
rotation: 0
state: true
- name: rrc_taps
id: variable_rrc_filter_taps
parameters:
alpha: '1.0'
comment: ''
gain: '1.0'
ntaps: '151'
samp_rate: '19000'
sym_rate: 19000/8
value: ''
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [768, 4648.0]
rotation: 0
state: true
- name: rrc_taps_manchester
id: variable
parameters:
comment: ''
value: '[rrc_taps[n] - rrc_taps[n+8] for n in range(len(rrc_taps)-8)]'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [768, 4576.0]
rotation: 0
state: true
- name: samp_rate
id: variable
parameters:
comment: 'This rate provides
a nice spectrum for
Fosphor display.
For RTL-SDR, use 2.4 MSa/s.'
value: 4.8e6
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [60, 529]
rotation: 0
state: enabled
- name: taps_sca
id: variable_low_pass_filter_taps
parameters:
beta: '6.76'
comment: ''
cutoff_freq: 10e3
gain: '1.0'
samp_rate: downRate_Hz / 2
value: ''
width: 1e2
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [312, 3340.0]
rotation: 0
state: enabled
- name: taps_sca_0
id: variable_low_pass_filter_taps
parameters:
beta: '6.76'
comment: ''
cutoff_freq: 10e3
gain: '1.0'
samp_rate: downRate_Hz / 2
value: ''
width: 1e2
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [312, 3692.0]
rotation: 0
state: enabled
- name: volume
id: variable_qtgui_range
parameters:
comment: ''
gui_hint: 0,0,1,3
label: Volume
min_len: '200'
orient: QtCore.Qt.Horizontal
rangeType: float
start: '0'
step: '0.01'
stop: '1'
value: '0.1'
widget: counter_slider
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [371, 196]
rotation: 0
state: true
- name: analog_agc_xx_0
id: analog_agc_xx
parameters:
affinity: ''
alias: ''
comment: ''
gain: '53'
max_gain: '1000'
maxoutbuf: '0'
minoutbuf: '0'
rate: 2e-3
reference: '0.585'
type: complex
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [992, 4480.0]
rotation: 0
state: true
- name: analog_fm_deemph_0
id: analog_fm_deemph
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: audio_Hz
tau: 75e-6
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [454, 2839]
rotation: 0
state: enabled
- name: analog_fm_deemph_0_1
id: analog_fm_deemph
parameters:
affinity: ''
alias: ''
comment: Undo pre-emphasis.
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: audio_Hz
tau: 75e-6
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [454, 2937]
rotation: 0
state: enabled
- name: analog_fm_demod_cf_0
id: analog_fm_demod_cf
parameters:
affinity: ''
alias: ''
audio_decim: '10'
audio_pass: '15000'
audio_stop: '16000'
chan_rate: 480e3
comment: ''
deviation: '75000'
gain: '1.0'
maxoutbuf: '0'
minoutbuf: '0'
tau: 75e-6
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [592, 3212.0]
rotation: 0
state: true
- name: analog_fm_demod_cf_0_0
id: analog_fm_demod_cf
parameters:
affinity: ''
alias: ''
audio_decim: '10'
audio_pass: '15000'
audio_stop: '16000'
chan_rate: 480e3
comment: ''
deviation: '75000'
gain: '1.0'
maxoutbuf: '0'
minoutbuf: '0'
tau: 75e-6
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [592, 3564.0]
rotation: 0
state: true
- name: analog_pll_refout_cc_0
id: analog_pll_refout_cc
parameters:
affinity: ''
alias: ''
comment: '~19 kHz pilot
Lock onto received
f=~19 kHz pilot +/- 0.01 rad.
(2 pi f) / fs = 1.24 rad/Sa'
max_freq: (2 * 3.1416 * 19e3) / (2 * audio_Hz) + 0.1
maxoutbuf: '0'
min_freq: (2 * 3.1416 * 19e3) / (2 * audio_Hz) - 0.1
minoutbuf: '0'
w: (2 * 3.1416)/100
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [680, 1976.0]
rotation: 0
state: enabled
- name: audio_sink_0_0
id: audio_sink
parameters:
affinity: ''
alias: ''
comment: Soundcard.
device_name: ''
num_inputs: '2'
ok_to_block: 'True'
samp_rate: int(audio_Hz)
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [718, 4075]
rotation: 0
state: enabled
- name: band_pass_filter_0
id: band_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: "Output:\n 96 kSa/s\n fc=19 kHz\n bw=2 kHz"
decim: int(downRate_Hz / fsPilot_Hz)
gain: '1'
high_cutoff_freq: 20e3
interp: '1'
low_cutoff_freq: 18e3
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
type: fir_filter_fff
width: '500'
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [272, 1927]
rotation: 0
state: enabled
- name: band_pass_filter_0_0
id: band_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: Clean PLL output.
decim: '1'
gain: '1'
high_cutoff_freq: 39e3
interp: '1'
low_cutoff_freq: 37e3
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: fsPilot_Hz
type: fir_filter_ccf
width: '500'
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [432, 2212.0]
rotation: 0
state: enabled
- name: band_pass_filter_0_1
id: band_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: "Output:\n 96 kSa/s\n fc=38 kHz\n bw: 30 kHz"
decim: int(downRate_Hz / fsPilot_Hz)
gain: '10'
high_cutoff_freq: 53e3
interp: '1'
low_cutoff_freq: 23e3
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
type: fir_filter_fcc
width: '500'
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [260, 2539]
rotation: 0
state: enabled
- name: blocks_add_xx_0
id: blocks_add_xx
parameters:
affinity: ''
alias: ''
comment: Recover 2L.
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [331, 2835]
rotation: 0
state: enabled
- name: blocks_complex_to_arg_0
id: blocks_complex_to_arg
parameters:
affinity: ''
alias: ''
comment: 'Quadrature demod:
arg(x_n / x_n-1)'
maxoutbuf: '0'
minoutbuf: '0'
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1336, 856.0]
rotation: 0
state: enabled
- name: blocks_complex_to_real_0
id: blocks_complex_to_real
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [768, 2552.0]
rotation: 0
state: enabled
- name: blocks_complex_to_real_0_0
id: blocks_complex_to_real
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [648, 2208.0]
rotation: 0
state: enabled
- name: blocks_delay_0_0
id: blocks_delay
parameters:
affinity: ''
alias: ''
comment: x_n-1
delay: '1'
maxoutbuf: '0'
minoutbuf: '0'
num_ports: '1'
showports: 'False'
type: complex
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1088, 904.0]
rotation: 0
state: enabled
- name: blocks_divide_xx_0
id: blocks_divide_xx
parameters:
affinity: ''
alias: ''
comment: x_n / x_n-1
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: complex
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1216, 840.0]
rotation: 0
state: enabled
- name: blocks_float_to_complex_0
id: blocks_float_to_complex
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [504, 1984.0]
rotation: 0
state: enabled
- name: blocks_msgpair_to_var_0
id: blocks_msgpair_to_var
parameters:
affinity: ''
alias: ''
comment: ''
target: freq_MHz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1912, 1296.0]
rotation: 0
state: true
- name: blocks_msgpair_to_var_0_0
id: blocks_msgpair_to_var
parameters:
affinity: ''
alias: ''
comment: ''
target: freq_MHz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1528, 1488.0]
rotation: 0
state: true
- name: blocks_multiply_const_vxx_0
id: blocks_multiply_const_vxx
parameters:
affinity: ''
alias: ''
comment: ''
const: volume
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [626, 2847]
rotation: 0
state: enabled
- name: blocks_multiply_const_vxx_0_0
id: blocks_multiply_const_vxx
parameters:
affinity: ''
alias: ''
comment: Volume.
const: volume
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [627, 2945]
rotation: 0
state: enabled
- name: blocks_multiply_const_vxx_0_0_0
id: blocks_multiply_const_vxx
parameters:
affinity: ''
alias: ''
comment: Volume.
const: volume
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [808, 3260.0]
rotation: 0
state: enabled
- name: blocks_multiply_const_vxx_0_0_0_0
id: blocks_multiply_const_vxx
parameters:
affinity: ''
alias: ''
comment: Volume.
const: volume
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [808, 3612.0]
rotation: 0
state: enabled
- name: blocks_multiply_const_vxx_1
id: blocks_multiply_const_vxx
parameters:
affinity: ''
alias: ''
comment: Gain
const: 8 * downRate_Hz / (2 * 3.1416 * deviation_Hz)
maxoutbuf: '0'
minoutbuf: '0'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1512, 848.0]
rotation: 0
state: enabled
- name: blocks_multiply_xx_0
id: blocks_multiply_xx
parameters:
affinity: ''
alias: ''
comment: ~38 kHz pilot
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: complex
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [296, 2264.0]
rotation: 0
state: enabled
- name: blocks_multiply_xx_0_0
id: blocks_multiply_xx
parameters:
affinity: ''
alias: ''
comment: 'Mix L-R to
baseband.'
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: complex
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [448, 2536.0]
rotation: 0
state: enabled
- name: blocks_mute_xx_0
id: blocks_mute_xx
parameters:
affinity: ''
alias: ''
comment: ''
maxoutbuf: '0'
minoutbuf: '0'
mute: mute
type: complex
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [680, 872.0]
rotation: 0
state: true
- name: blocks_selector_0
id: blocks_selector
parameters:
affinity: ''
alias: ''
comment: ''
enabled: 'True'
input_index: audioSrc
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '3'
num_outputs: '1'
output_index: '0'
showports: 'True'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [470, 3996]
rotation: 0
state: enabled
- name: blocks_selector_0_0
id: blocks_selector
parameters:
affinity: ''
alias: ''
comment: 'Select Main or SCA audio.
Controlled by GUI.'
enabled: 'True'
input_index: audioSrc
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '3'
num_outputs: '1'
output_index: '0'
showports: 'True'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [470, 4139]
rotation: 0
state: enabled
- name: blocks_sub_xx_0
id: blocks_sub_xx
parameters:
affinity: ''
alias: ''
comment: Recover 2R.
maxoutbuf: '0'
minoutbuf: '0'
num_inputs: '2'
type: float
vlen: '1'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [330, 2933]
rotation: 0
state: enabled
- name: digital_constellation_receiver_cb_0
id: digital_constellation_receiver_cb
parameters:
affinity: ''
alias: ''
comment: ''
constellation: digital.constellation_bpsk().base()
fmax: '0.002'
fmin: '-0.002'
loop_bw: 2*3.1416 / 100
maxoutbuf: '0'
minoutbuf: '0'
showports: 'False'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1488, 4400.0]
rotation: 0
state: true
- name: digital_diff_decoder_bb_0_0
id: digital_diff_decoder_bb
parameters:
affinity: ''
alias: ''
coding: digital.DIFF_DIFFERENTIAL
comment: Bits
maxoutbuf: '0'
minoutbuf: '0'
modulus: '2'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1752, 4384.0]
rotation: 0
state: enabled
- name: digital_symbol_sync_xx_0_0
id: digital_symbol_sync_xx
parameters:
affinity: ''
alias: ''
comment: 1 Sa/sym
constellation: digital.constellation_bpsk().base()
damping: '1.0'
loop_bw: '0.01'
max_dev: '0.1'
maxoutbuf: '0'
minoutbuf: '0'
nfilters: '128'
osps: '1'
pfb_mf_taps: '[]'
resamp_type: digital.IR_MMSE_8TAP
sps: '16'
ted_gain: '1.0'
ted_type: digital.TED_ZERO_CROSSING
type: cc
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1168, 4444.0]
rotation: 0
state: true
- name: epy_block_0
id: epy_block
parameters:
_source_code: "'''Convert an arbitrary frequency in the FM broadcast band to the\
\ frequency\nof the nearest radio station frequency.\n\nMike Markowski, mike.ab3ap@gmail.com\n\
Feb 2021\n'''\n\nimport numpy as np\nfrom gnuradio import gr\nimport pmt\n\n\
class snapBlock(gr.basic_block):\n\n\tdef __init__(self):\n\t\tgr.basic_block.__init__(\n\
\t\t\tself,\n\t\t\tname=\"Snap to Station\",\n\t\t\tin_sig=None,\n\t\t\tout_sig=None)\n\
\n\t\t# User input that is only somewhere near a station frequency.\n\t\tself.message_port_register_in(pmt.intern('raw_Hz_in'))\n\
\t\tself.set_msg_handler(pmt.intern('raw_Hz_in'), self.stationSnap)\n\n\t\t\
# Output in Hz and MHz that is exactly a station frequency.\n\t\tself.message_port_register_out(pmt.intern('snapped_Hz_out'))\n\
\t\tself.message_port_register_out(pmt.intern('snapped_MHz_out'))\n\n\tdef stationSnap(self,\
\ msg):\n\n\t\t'''Accept a pmt pair with user selected frequency information\
\ and\n\t\tadjust it to the nearest broadcast FM frequency.\n\n\t\tInputs:\n\
\t\t msg (dictionary) : assumed to contain only: (freq . <float>)\n\n\t\tOutputs:\n\
\t\t freq_Hz_out (pmt.dict) : (freq . snappedFreq) where snappedFreq\n\t\t\
\ is input frequency in Hz moved to nearest broadcast frequency.\n\t\t freq_MHz_out\
\ (pmt.dict) : (freq . snappedFreq) where snappedFreq\n\t\t is input frequency\
\ in MHz moved to nearest broadcast frequency.\n\t\t'''\n\n\t\t# Disassemble\
\ pmt pair.\n\t\tcmd = pmt.car(msg)\n\t\tfreq = pmt.cdr(msg)\n\t\tfreqRaw_MHz\
\ = pmt.to_python(freq) / 1e6 # Easier to work in MHz.\n\n\t\t# Snap user-clicked\
\ freq to nearest FM station.\n\t\tspacing = 0.2 # N. American broadcast FM\
\ spacing in MHz.\n\t\tnearest = 0.1 # Round to nearest odd tenth of MHz.\n\t\
\tfreq_MHz = nearest + round((freqRaw_MHz - nearest)/spacing) * spacing\n\t\t\
freq_Hz = freq_MHz * 1e6\n\n\t\t# Generate output message, (freq . freq_Hz).\n\
\t\tpair = pmt.cons(cmd, pmt.to_pmt(freq_Hz))\n\t\tself.message_port_pub(pmt.intern('snapped_Hz_out'),\
\ pair)\n\n\t\t# Generate output message, (freq . freq_MHz).\n\t\tpair = pmt.cons(cmd,\
\ pmt.to_pmt(freq_MHz))\n\t\tself.message_port_pub(pmt.intern('snapped_MHz_out'),\
\ pair)\n"
affinity: ''
alias: ''
comment: 'Snap user choice
to nearest station.'
maxoutbuf: '0'
minoutbuf: '0'
states:
_io_cache: ('Snap to Station', 'snapBlock', [], [('raw_Hz_in', 'message', 1)],
[('snapped_MHz_out', 'message', 1), ('snapped_Hz_out', 'message', 1)], '', [])
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1600, 1344.0]
rotation: 0
state: true
- name: epy_block_1
id: epy_block
parameters:
_source_code: "'''Convert a pmt pair (freq . f_Hz) to (freq . f_MHz).\n\nMike\
\ Markowski, mike.ab3ap@gmail.com\nFeb 2021\n'''\n\nimport numpy as np\nfrom\
\ gnuradio import gr\nimport pmt\n\nclass cvtBlock(gr.basic_block):\n\n\tdef\
\ __init__(self):\n\t\t\"\"\"arguments to this function show up as parameters\
\ in GRC\"\"\"\n\t\tgr.basic_block.__init__(\n\t\t\tself,\n\t\t\tname='MHz to\
\ Hz',\n\t\t\tin_sig=None,\n\t\t\tout_sig=None\n\t\t)\n\n\t\tself.message_port_register_in(pmt.intern('freq_MHz_in'))\n\
\t\tself.set_msg_handler(pmt.intern('freq_MHz_in'), self.MHzToHz)\n\n\t\tself.message_port_register_out(pmt.intern('freq_Hz_out'))\n\
\n\tdef MHzToHz(self, msg):\n\t\t'''msg expected to be pmt pair (freq . val).'''\n\
\n\t\tcmd = pmt.car(msg)\n\t\tfreq_Hz = 1e6 * pmt.to_python(pmt.cdr(msg))\n\n\
\t\thzDict = pmt.make_dict()\n\t\thzDict = pmt.dict_add(hzDict, cmd, pmt.to_pmt(freq_Hz))\n\
\t\tself.message_port_pub(pmt.intern('freq_Hz_out'), hzDict)\n"
affinity: ''
alias: ''
comment: 'MHz is easier to work with,
but SDR needs Hz.'
maxoutbuf: '0'
minoutbuf: '0'
states:
_io_cache: ('MHz to Hz', 'cvtBlock', [], [('freq_MHz_in', 'message', 1)], [('freq_Hz_out',
'message', 1)], 'arguments to this function show up as parameters in GRC', [])
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1528, 1552.0]
rotation: 0
state: enabled
- name: fir_filter_xxx_0
id: fir_filter_xxx
parameters:
affinity: ''
alias: ''
comment: ''
decim: '1'
maxoutbuf: '0'
minoutbuf: '0'
samp_delay: '0'
taps: lpTaps
type: fff
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1688, 840.0]
rotation: 0
state: enabled
- name: fir_filter_xxx_2
id: fir_filter_xxx
parameters:
affinity: ''
alias: ''
comment: ''
decim: '1'
maxoutbuf: '0'
minoutbuf: '0'
samp_delay: '0'
taps: rrc_taps_manchester
type: ccc
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [768, 4496.0]
rotation: 0
state: enabled
- name: fosphor_qt_sink_c_0
id: fosphor_qt_sink_c
parameters:
affinity: ''
alias: ''
comment: ''
freq_center: freq_MHz * 1e6
freq_span: samp_rate
gui_hint: 'spectra@0 : 0,0,1,1'
maxoutbuf: '0'
minoutbuf: '0'
wintype: window.WIN_BLACKMAN_hARRIS
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1208, 1240.0]
rotation: 0
state: enabled
- name: freq_xlating_fir_filter_xxx_0_0
id: freq_xlating_fir_filter_xxx
parameters:
affinity: ''
alias: ''
center_freq: 67.65e3
comment: ''
decim: '2'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
taps: taps_sca
type: fcf
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [304, 3236]
rotation: 0
state: enabled
- name: freq_xlating_fir_filter_xxx_0_0_0
id: freq_xlating_fir_filter_xxx
parameters:
affinity: ''
alias: ''
center_freq: 92e3
comment: ''
decim: '2'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
taps: taps_sca
type: fcf
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [304, 3586]
rotation: 0
state: enabled
- name: freq_xlating_fir_filter_xxx_1_0
id: freq_xlating_fir_filter_xxx
parameters:
affinity: ''
alias: ''
center_freq: 57e3
comment: 'Bandpass fc=57 kHz, bw=5 kHz
48 kSa/s'
decim: '10'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
taps: firdes.low_pass(1.0, downRate_Hz, 7.5e3, 5e3)
type: fcc
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [344, 4480.0]
rotation: 0
state: enabled
- name: low_pass_filter_0
id: low_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: "Channel to baseband:\n 480 kSa/s\n bw=100 kHz"
cutoff_freq: 100e3
decim: int(samp_rate / downRate_Hz)
gain: '1'
interp: '1'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: samp_rate
type: fir_filter_ccf
width: 5e3
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [880, 788.0]
rotation: 0
state: true
- name: low_pass_filter_0_0
id: low_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: Mono filtered to 15 kHz cutoff.
cutoff_freq: 15e3
decim: int(downRate_Hz / audio_Hz)
gain: '1'
interp: '1'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: downRate_Hz
type: fir_filter_fff
width: 1.5e3
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [263, 1635]
rotation: 0
state: enabled
- name: low_pass_filter_0_0_0
id: low_pass_filter
parameters:
affinity: ''
alias: ''
beta: '6.76'
comment: Audio filtered to 15 kHz cutoff.
cutoff_freq: 15e3
decim: '2'
gain: '1'
interp: '1'
maxoutbuf: '0'
minoutbuf: '0'
samp_rate: fsPilot_Hz
type: fir_filter_ccf
width: 1.5e3
win: window.WIN_HAMMING
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [576, 2492.0]
rotation: 0
state: enabled
- name: note_0
id: note
parameters:
alias: 'Inspired by URL: https://www.nutsvolts.com/magazine/article/fm-reception-with-the-gnu-radio-companion'
comment: "Mike Markowski\nFeb 4, 2021\nmike.ab3ap@gmail.com\n\nInspired by and\
\ modeled after URL: \nhttps://www.nutsvolts.com/magazine/article/fm-reception-with-the-gnu-radio-companion"
note: FM radio project!
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [56, 25]
rotation: 0
state: true
- name: note_0_0
id: note
parameters:
alias: 'Inspired by URL: https://www.nutsvolts.com/magazine/article/fm-reception-with-the-gnu-radio-companion'
comment: 'GUI blocks here are laid
out as in displayed GUI.'
note: GUI info
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [760, 420.0]
rotation: 0
state: true
- name: note_0_1
id: note
parameters:
alias: ''
comment: 'Tune to desired station and
output 100 kHz channel.'
note: Tuner
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [47, 755]
rotation: 0
state: true
- name: note_0_1_0
id: note
parameters:
alias: ''
comment: '*** samp_rate must be a multiple of
downRate_Hz, and downRate_Hz must be
a multiple of audio_Hz.'
note: Rates
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [176, 465]
rotation: 0
state: true
- name: note_1
id: note
parameters:
alias: ''
comment: 'This simply supports clicking
on QT Gui Sink to change stations.'
note: GUI Niceties
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [888, 1344.0]
rotation: 0
state: true
- name: note_2
id: note
parameters:
alias: ''
comment: 'fc=67.65 kHz
bw=18 kHz
FM modulated'
note: SCA1
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [65, 3142]
rotation: 0
state: true
- name: note_2_0
id: note
parameters:
alias: ''
comment: 'fc=92 kHz
bw=16 kHz
FM modulated'
note: SCA2
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [64, 3486]
rotation: 0
state: enabled
- name: note_2_0_0
id: note
parameters:
alias: ''
comment: "GUI is used to select\n Stereo main,\n Mono SCA@67 kHz, or\n Mono\
\ SCA@92 kHz."
note: Audio source
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [66, 3871]
rotation: 0
state: enabled
- name: note_3_1
id: note
parameters:
alias: ''
comment: "fc=57 kHz, 3rd harmonic of pilot. \n1187.5 b/s (48 subcarrier cycles/bit).\n\
Taken from gr-rds sample code."
note: RDS
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [64, 4376.0]
rotation: 0
state: enabled
- name: note_4
id: note
parameters:
alias: ''
comment: ''
note: L+R (mono)
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [47, 1624]
rotation: 0
state: true
- name: note_4_0
id: note
parameters:
alias: ''
comment: ''
note: 19 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [49, 1921]
rotation: 0
state: true
- name: note_4_0_0
id: note
parameters:
alias: ''
comment: ''
note: 38 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [47, 2209]
rotation: 0
state: true
- name: note_4_0_1
id: note
parameters:
alias: ''
comment: ''
note: L-R
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [36, 2533]
rotation: 0
state: true
- name: note_5
id: note
parameters:
alias: ''
comment: ''
note: Stereo signals
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [42, 2798]
rotation: 0
state: true
- name: note_6
id: note
parameters:
alias: ''
comment: 'If you don''t have gr-fosphor
installed, use QT GUI Sink.'
note: GUI choice
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1504, 1248.0]
rotation: 0
state: enabled
- name: qtgui_const_sink_x_0
id: qtgui_const_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
axislabels: 'True'
color1: '"blue"'
color10: '"red"'
color2: '"red"'
color3: '"red"'
color4: '"red"'
color5: '"red"'
color6: '"red"'
color7: '"red"'
color8: '"red"'
color9: '"red"'
comment: ''
grid: 'False'
gui_hint: 'spectra@10 : 1,0,1,1'
label1: ''
label10: ''
label2: ''
label3: ''
label4: ''
label5: ''
label6: ''
label7: ''
label8: ''
label9: ''
legend: 'True'
marker1: '0'
marker10: '0'
marker2: '0'
marker3: '0'
marker4: '0'
marker5: '0'
marker6: '0'
marker7: '0'
marker8: '0'
marker9: '0'
name: '""'
nconnections: '1'
size: '1024'
style1: '0'
style10: '0'
style2: '0'
style3: '0'
style4: '0'
style5: '0'
style6: '0'
style7: '0'
style8: '0'
style9: '0'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_slope: qtgui.TRIG_SLOPE_POS
tr_tag: '""'
type: complex
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
xmax: '2'
xmin: '-2'
ymax: '2'
ymin: '-2'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1840, 4672.0]
rotation: 0
state: enabled
- name: qtgui_edit_box_msg_0
id: qtgui_edit_box_msg
parameters:
affinity: ''
alias: ''
comment: ''
gui_hint: 1,3, 1,1
is_pair: 'True'
is_static: 'True'
key: freq
label: Freq (MHz)
maxoutbuf: '0'
minoutbuf: '0'
type: float
value: '104.5'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1208, 1504.0]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.2'
axislabels: 'True'
bw: audio_Hz
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '1024'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@3 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: L+R
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '0'
ymin: '-120'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [506, 1628]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.1'
axislabels: 'True'
bw: 2e3
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: 19e3
fftsize: '2048'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@4 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: 19 kHz Pilot
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [484, 1873]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_0_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.1'
axislabels: 'True'
bw: 2e3
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: 38e3
fftsize: '2048'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@5 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: 38 kHz Pilot
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [832, 2176.0]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_1
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.2'
axislabels: 'True'
bw: audio_Hz
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: 38e3
fftsize: '1024'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@6 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: L-R
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [980, 2499]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_1_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.2'
axislabels: 'True'
bw: audio_Hz
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '1024'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@7 : 0,0,1,1'
label: Relative Gain
label1: Left
label10: ''''''
label2: Right
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'True'
maxoutbuf: '0'
minoutbuf: '0'
name: Left & Right
nconnections: '2'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [850, 2757]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_1_1
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.1'
axislabels: 'True'
bw: audio_Hz
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '1024'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@8 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: SCA
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1000, 3376.0]
rotation: 0
state: enabled
- name: qtgui_freq_sink_x_0_0_1_1_0
id: qtgui_freq_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
average: '0.1'
axislabels: 'True'
bw: audio_Hz
color1: '"blue"'
color10: '"dark blue"'
color2: '"red"'
color3: '"green"'
color4: '"black"'
color5: '"cyan"'
color6: '"magenta"'
color7: '"yellow"'
color8: '"dark red"'
color9: '"dark green"'
comment: ''
ctrlpanel: 'False'
fc: '0'
fftsize: '1024'
freqhalf: 'False'
grid: 'True'
gui_hint: 'spectra@9 : 0,0,1,1'
label: Relative Gain
label1: ''
label10: ''''''
label2: ''''''
label3: ''''''
label4: ''''''
label5: ''''''
label6: ''''''
label7: ''''''
label8: ''''''
label9: ''''''
legend: 'False'
maxoutbuf: '0'
minoutbuf: '0'
name: SCA
nconnections: '1'
norm_window: 'False'
showports: 'False'
tr_chan: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_tag: '""'
type: float
units: dB
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
wintype: window.WIN_BLACKMAN_hARRIS
ymax: '10'
ymin: '-140'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [984, 3728.0]
rotation: 0
state: enabled
- name: qtgui_sink_x_0
id: qtgui_sink_x
parameters:
affinity: ''
alias: ''
bw: 480e3
comment: ''
fc: '0'
fftsize: '8192'
gui_hint: 'spectra@2 : 0,0,1,1'
maxoutbuf: '0'
minoutbuf: '0'
name: Tuned Station
plotconst: 'True'
plotfreq: 'True'
plottime: 'True'
plotwaterfall: 'True'
rate: '10'
showports: 'False'
showrf: 'False'
type: float
wintype: window.WIN_BLACKMAN_hARRIS
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1960, 960.0]
rotation: 0
state: enabled
- name: qtgui_sink_x_0_0
id: qtgui_sink_x
parameters:
affinity: ''
alias: ''
bw: samp_rate
comment: ''
fc: freq_MHz * 1e6
fftsize: '1024'
gui_hint: 'spectra@1 : 0,0,1,1'
maxoutbuf: '0'
minoutbuf: '0'
name: Full Spectrum
plotconst: 'True'
plotfreq: 'True'
plottime: 'True'
plotwaterfall: 'True'
rate: '10'
showports: 'True'
showrf: 'True'
type: complex
wintype: window.WIN_BLACKMAN_hARRIS
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1208, 1328.0]
rotation: 0
state: enabled
- name: qtgui_time_sink_x_0
id: qtgui_time_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'False'
axislabels: 'True'
color1: blue
color10: dark blue
color2: red
color3: green
color4: black
color5: cyan
color6: magenta
color7: yellow
color8: dark red
color9: dark green
comment: ''
ctrlpanel: 'False'
entags: 'True'
grid: 'True'
gui_hint: 'spectra@10 : 0,0,1,1'
label1: I
label10: Signal 10
label2: Q
label3: Signal 3
label4: Signal 4
label5: Signal 5
label6: Signal 6
label7: Signal 7
label8: Signal 8
label9: Signal 9
legend: 'True'
marker1: '0'
marker10: '-1'
marker2: '0'
marker3: '-1'
marker4: '-1'
marker5: '-1'
marker6: '-1'
marker7: '-1'
marker8: '-1'
marker9: '-1'
name: '""'
nconnections: '1'
size: '200'
srate: 19e3
stemplot: 'False'
style1: '1'
style10: '1'
style2: '1'
style3: '1'
style4: '1'
style5: '1'
style6: '1'
style7: '1'
style8: '1'
style9: '1'
tr_chan: '0'
tr_delay: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_slope: qtgui.TRIG_SLOPE_POS
tr_tag: '""'
type: complex
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
ylabel: Symbol Sync
ymax: '1'
ymin: '-1'
yunit: '""'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1488, 4576.0]
rotation: 0
state: true
- name: qtgui_time_sink_x_1
id: qtgui_time_sink_x
parameters:
affinity: ''
alias: ''
alpha1: '1.0'
alpha10: '1.0'
alpha2: '1.0'
alpha3: '1.0'
alpha4: '1.0'
alpha5: '1.0'
alpha6: '1.0'
alpha7: '1.0'
alpha8: '1.0'
alpha9: '1.0'
autoscale: 'True'
axislabels: 'True'
color1: cyan
color10: dark blue
color2: green
color3: green
color4: black
color5: cyan
color6: magenta
color7: yellow
color8: dark red
color9: dark green
comment: ''
ctrlpanel: 'False'
entags: 'True'
grid: 'True'
gui_hint: 'spectra@10 : 2,0,1,1'
label1: PLL Error
label10: Signal 10
label2: PLL Phase
label3: PLL Frequency
label4: Signal 4
label5: Signal 5
label6: Signal 6
label7: Signal 7
label8: Signal 8
label9: Signal 9
legend: 'True'
marker1: '-1'
marker10: '-1'
marker2: '-1'
marker3: '0'
marker4: '-1'
marker5: '-1'
marker6: '-1'
marker7: '-1'
marker8: '-1'
marker9: '-1'
name: '""'
nconnections: '3'
size: '1024'
srate: samp_rate
stemplot: 'False'
style1: '1'
style10: '1'
style2: '0'
style3: '1'
style4: '1'
style5: '1'
style6: '1'
style7: '1'
style8: '1'
style9: '1'
tr_chan: '0'
tr_delay: '0'
tr_level: '0.0'
tr_mode: qtgui.TRIG_MODE_FREE
tr_slope: qtgui.TRIG_SLOPE_POS
tr_tag: '""'
type: float
update_time: '0.10'
width1: '1'
width10: '1'
width2: '1'
width3: '1'
width4: '1'
width5: '1'
width6: '1'
width7: '1'
width8: '1'
width9: '1'
ylabel: Amplitude
ymax: '1'
ymin: '-1'
yunit: '""'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1840, 4552.0]
rotation: 0
state: enabled
- name: rational_resampler_xxx_1
id: rational_resampler_xxx
parameters:
affinity: ''
alias: ''
comment: 19 kSa/s
decim: int(downRate_Hz // 10)
fbw: '0'
interp: '19000'
maxoutbuf: '0'
minoutbuf: '0'
taps: '[]'
type: ccc
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [584, 4480.0]
rotation: 0
state: true
- name: rds_decoder_0_0
id: rds_decoder
parameters:
affinity: ''
alias: ''
comment: ''
debug: 'False'
log: 'False'
maxoutbuf: '0'
minoutbuf: '0'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1944, 4384.0]
rotation: 0
state: true
- name: rds_panel_0_0
id: rds_panel
parameters:
affinity: ''
alias: ''
comment: ''
freq: freq_MHz
gui_hint: ''
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [2304, 4400.0]
rotation: 0
state: true
- name: rds_parser_0_0
id: rds_parser
parameters:
affinity: ''
alias: ''
comment: ''
debug: 'False'
log: 'False'
maxoutbuf: '0'
minoutbuf: '0'
pty_locale: '0'
reset: '0'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [2120, 4376.0]
rotation: 0
state: true
- name: rtlsdr_source_0
id: rtlsdr_source
parameters:
affinity: ''
alias: ''
ant0: ''
ant1: ''
ant10: ''
ant11: ''
ant12: ''
ant13: ''
ant14: ''
ant15: ''
ant16: ''
ant17: ''
ant18: ''
ant19: ''
ant2: ''
ant20: ''
ant21: ''
ant22: ''
ant23: ''
ant24: ''
ant25: ''
ant26: ''
ant27: ''
ant28: ''
ant29: ''
ant3: ''
ant30: ''
ant31: ''
ant4: ''
ant5: ''
ant6: ''
ant7: ''
ant8: ''
ant9: ''
args: '""'
bb_gain0: '20'
bb_gain1: '20'
bb_gain10: '20'
bb_gain11: '20'
bb_gain12: '20'
bb_gain13: '20'
bb_gain14: '20'
bb_gain15: '20'
bb_gain16: '20'
bb_gain17: '20'
bb_gain18: '20'
bb_gain19: '20'
bb_gain2: '20'
bb_gain20: '20'
bb_gain21: '20'
bb_gain22: '20'
bb_gain23: '20'
bb_gain24: '20'
bb_gain25: '20'
bb_gain26: '20'
bb_gain27: '20'
bb_gain28: '20'
bb_gain29: '20'
bb_gain3: '20'
bb_gain30: '20'
bb_gain31: '20'
bb_gain4: '20'
bb_gain5: '20'
bb_gain6: '20'
bb_gain7: '20'
bb_gain8: '20'
bb_gain9: '20'
bw0: '0'
bw1: '0'
bw10: '0'
bw11: '0'
bw12: '0'
bw13: '0'
bw14: '0'
bw15: '0'
bw16: '0'
bw17: '0'
bw18: '0'
bw19: '0'
bw2: '0'
bw20: '0'
bw21: '0'
bw22: '0'
bw23: '0'
bw24: '0'
bw25: '0'
bw26: '0'
bw27: '0'
bw28: '0'
bw29: '0'
bw3: '0'
bw30: '0'
bw31: '0'
bw4: '0'
bw5: '0'
bw6: '0'
bw7: '0'
bw8: '0'
bw9: '0'
clock_source0: ''
clock_source1: ''
clock_source2: ''
clock_source3: ''
clock_source4: ''
clock_source5: ''
clock_source6: ''
clock_source7: ''
comment: 'Output: 2.4 MSa/s'
corr0: '0'
corr1: '0'
corr10: '0'
corr11: '0'
corr12: '0'
corr13: '0'
corr14: '0'
corr15: '0'
corr16: '0'
corr17: '0'
corr18: '0'
corr19: '0'
corr2: '0'
corr20: '0'
corr21: '0'
corr22: '0'
corr23: '0'
corr24: '0'
corr25: '0'
corr26: '0'
corr27: '0'
corr28: '0'
corr29: '0'
corr3: '0'
corr30: '0'
corr31: '0'
corr4: '0'
corr5: '0'
corr6: '0'
corr7: '0'
corr8: '0'
corr9: '0'
dc_offset_mode0: '2'
dc_offset_mode1: '0'
dc_offset_mode10: '0'
dc_offset_mode11: '0'
dc_offset_mode12: '0'
dc_offset_mode13: '0'
dc_offset_mode14: '0'
dc_offset_mode15: '0'
dc_offset_mode16: '0'
dc_offset_mode17: '0'
dc_offset_mode18: '0'
dc_offset_mode19: '0'
dc_offset_mode2: '0'
dc_offset_mode20: '0'
dc_offset_mode21: '0'
dc_offset_mode22: '0'
dc_offset_mode23: '0'
dc_offset_mode24: '0'
dc_offset_mode25: '0'
dc_offset_mode26: '0'
dc_offset_mode27: '0'
dc_offset_mode28: '0'
dc_offset_mode29: '0'
dc_offset_mode3: '0'
dc_offset_mode30: '0'
dc_offset_mode31: '0'
dc_offset_mode4: '0'
dc_offset_mode5: '0'
dc_offset_mode6: '0'
dc_offset_mode7: '0'
dc_offset_mode8: '0'
dc_offset_mode9: '0'
freq0: freq_MHz * 1e6
freq1: 100e6
freq10: 100e6
freq11: 100e6
freq12: 100e6
freq13: 100e6
freq14: 100e6
freq15: 100e6
freq16: 100e6
freq17: 100e6
freq18: 100e6
freq19: 100e6
freq2: 100e6
freq20: 100e6
freq21: 100e6
freq22: 100e6
freq23: 100e6
freq24: 100e6
freq25: 100e6
freq26: 100e6
freq27: 100e6
freq28: 100e6
freq29: 100e6
freq3: 100e6
freq30: 100e6
freq31: 100e6
freq4: 100e6
freq5: 100e6
freq6: 100e6
freq7: 100e6
freq8: 100e6
freq9: 100e6
gain0: rfGain_dB
gain1: '10'
gain10: '10'
gain11: '10'
gain12: '10'
gain13: '10'
gain14: '10'
gain15: '10'
gain16: '10'
gain17: '10'
gain18: '10'
gain19: '10'
gain2: '10'
gain20: '10'
gain21: '10'
gain22: '10'
gain23: '10'
gain24: '10'
gain25: '10'
gain26: '10'
gain27: '10'
gain28: '10'
gain29: '10'
gain3: '10'
gain30: '10'
gain31: '10'
gain4: '10'
gain5: '10'
gain6: '10'
gain7: '10'
gain8: '10'
gain9: '10'
gain_mode0: 'True'
gain_mode1: 'False'
gain_mode10: 'False'
gain_mode11: 'False'
gain_mode12: 'False'
gain_mode13: 'False'
gain_mode14: 'False'
gain_mode15: 'False'
gain_mode16: 'False'
gain_mode17: 'False'
gain_mode18: 'False'
gain_mode19: 'False'
gain_mode2: 'False'
gain_mode20: 'False'
gain_mode21: 'False'
gain_mode22: 'False'
gain_mode23: 'False'
gain_mode24: 'False'
gain_mode25: 'False'
gain_mode26: 'False'
gain_mode27: 'False'
gain_mode28: 'False'
gain_mode29: 'False'
gain_mode3: 'False'
gain_mode30: 'False'
gain_mode31: 'False'
gain_mode4: 'False'
gain_mode5: 'False'
gain_mode6: 'False'
gain_mode7: 'False'
gain_mode8: 'False'
gain_mode9: 'False'
if_gain0: '20'
if_gain1: '20'
if_gain10: '20'
if_gain11: '20'
if_gain12: '20'
if_gain13: '20'
if_gain14: '20'
if_gain15: '20'
if_gain16: '20'
if_gain17: '20'
if_gain18: '20'
if_gain19: '20'
if_gain2: '20'
if_gain20: '20'
if_gain21: '20'
if_gain22: '20'
if_gain23: '20'
if_gain24: '20'
if_gain25: '20'
if_gain26: '20'
if_gain27: '20'
if_gain28: '20'
if_gain29: '20'
if_gain3: '20'
if_gain30: '20'
if_gain31: '20'
if_gain4: '20'
if_gain5: '20'
if_gain6: '20'
if_gain7: '20'
if_gain8: '20'
if_gain9: '20'
iq_balance_mode0: '2'
iq_balance_mode1: '0'
iq_balance_mode10: '0'
iq_balance_mode11: '0'
iq_balance_mode12: '0'
iq_balance_mode13: '0'
iq_balance_mode14: '0'
iq_balance_mode15: '0'
iq_balance_mode16: '0'
iq_balance_mode17: '0'
iq_balance_mode18: '0'
iq_balance_mode19: '0'
iq_balance_mode2: '0'
iq_balance_mode20: '0'
iq_balance_mode21: '0'
iq_balance_mode22: '0'
iq_balance_mode23: '0'
iq_balance_mode24: '0'
iq_balance_mode25: '0'
iq_balance_mode26: '0'
iq_balance_mode27: '0'
iq_balance_mode28: '0'
iq_balance_mode29: '0'
iq_balance_mode3: '0'
iq_balance_mode30: '0'
iq_balance_mode31: '0'
iq_balance_mode4: '0'
iq_balance_mode5: '0'
iq_balance_mode6: '0'
iq_balance_mode7: '0'
iq_balance_mode8: '0'
iq_balance_mode9: '0'
maxoutbuf: '0'
minoutbuf: '0'
nchan: '1'
num_mboards: '1'
sample_rate: samp_rate
sync: none
time_source0: ''
time_source1: ''
time_source2: ''
time_source3: ''
time_source4: ''
time_source5: ''
time_source6: ''
time_source7: ''
type: fc32
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [360, 1012.0]
rotation: 0
state: disabled
- name: spectra
id: qtgui_tab_widget
parameters:
alias: ''
comment: ''
gui_hint: 2,0,1,9
label0: RTSA
label1: Full Spectrum
label10: RDS Symbols
label11: Tab 11
label12: Tab 12
label13: Tab 13
label14: Tab 14
label15: Tab 15
label16: Tab 16
label17: Tab 17
label18: Tab 18
label19: Tab 19
label2: Station Channel
label3: L+R
label4: 19 kHz Pilot
label5: 38 kHz Pilot
label6: L-R
label7: Left & Right
label8: SCA 67 kHz
label9: SCA 92 kHz
num_tabs: '11'
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [512, 412.0]
rotation: 0
state: true
- name: uhd_usrp_source_0
id: uhd_usrp_source
parameters:
affinity: ''
alias: ''
ant0: TX/RX
ant1: RX2
ant10: RX2
ant11: RX2
ant12: RX2
ant13: RX2
ant14: RX2
ant15: RX2
ant16: RX2
ant17: RX2
ant18: RX2
ant19: RX2
ant2: RX2
ant20: RX2
ant21: RX2
ant22: RX2
ant23: RX2
ant24: RX2
ant25: RX2
ant26: RX2
ant27: RX2
ant28: RX2
ant29: RX2
ant3: RX2
ant30: RX2
ant31: RX2
ant4: RX2
ant5: RX2
ant6: RX2
ant7: RX2
ant8: RX2
ant9: RX2
bw0: samp_rate
bw1: '0'
bw10: '0'
bw11: '0'
bw12: '0'
bw13: '0'
bw14: '0'
bw15: '0'
bw16: '0'
bw17: '0'
bw18: '0'
bw19: '0'
bw2: '0'
bw20: '0'
bw21: '0'
bw22: '0'
bw23: '0'
bw24: '0'
bw25: '0'
bw26: '0'
bw27: '0'
bw28: '0'
bw29: '0'
bw3: '0'
bw30: '0'
bw31: '0'
bw4: '0'
bw5: '0'
bw6: '0'
bw7: '0'
bw8: '0'
bw9: '0'
center_freq0: freq_MHz * 1e6
center_freq1: '0'
center_freq10: '0'
center_freq11: '0'
center_freq12: '0'
center_freq13: '0'
center_freq14: '0'
center_freq15: '0'
center_freq16: '0'
center_freq17: '0'
center_freq18: '0'
center_freq19: '0'
center_freq2: '0'
center_freq20: '0'
center_freq21: '0'
center_freq22: '0'
center_freq23: '0'
center_freq24: '0'
center_freq25: '0'
center_freq26: '0'
center_freq27: '0'
center_freq28: '0'
center_freq29: '0'
center_freq3: '0'
center_freq30: '0'
center_freq31: '0'
center_freq4: '0'
center_freq5: '0'
center_freq6: '0'
center_freq7: '0'
center_freq8: '0'
center_freq9: '0'
clock_rate: 0e0
clock_source0: ''
clock_source1: ''
clock_source2: ''
clock_source3: ''
clock_source4: ''
clock_source5: ''
clock_source6: ''
clock_source7: ''
comment: ''
dc_offs0: 0+0j
dc_offs1: 0+0j
dc_offs10: 0+0j
dc_offs11: 0+0j
dc_offs12: 0+0j
dc_offs13: 0+0j
dc_offs14: 0+0j
dc_offs15: 0+0j
dc_offs16: 0+0j
dc_offs17: 0+0j
dc_offs18: 0+0j
dc_offs19: 0+0j
dc_offs2: 0+0j
dc_offs20: 0+0j
dc_offs21: 0+0j
dc_offs22: 0+0j
dc_offs23: 0+0j
dc_offs24: 0+0j
dc_offs25: 0+0j
dc_offs26: 0+0j
dc_offs27: 0+0j
dc_offs28: 0+0j
dc_offs29: 0+0j
dc_offs3: 0+0j
dc_offs30: 0+0j
dc_offs31: 0+0j
dc_offs4: 0+0j
dc_offs5: 0+0j
dc_offs6: 0+0j
dc_offs7: 0+0j
dc_offs8: 0+0j
dc_offs9: 0+0j
dc_offs_enb0: default
dc_offs_enb1: default
dc_offs_enb10: default
dc_offs_enb11: default
dc_offs_enb12: default
dc_offs_enb13: default
dc_offs_enb14: default
dc_offs_enb15: default
dc_offs_enb16: default
dc_offs_enb17: default
dc_offs_enb18: default
dc_offs_enb19: default
dc_offs_enb2: default
dc_offs_enb20: default
dc_offs_enb21: default
dc_offs_enb22: default
dc_offs_enb23: default
dc_offs_enb24: default
dc_offs_enb25: default
dc_offs_enb26: default
dc_offs_enb27: default
dc_offs_enb28: default
dc_offs_enb29: default
dc_offs_enb3: default
dc_offs_enb30: default
dc_offs_enb31: default
dc_offs_enb4: default
dc_offs_enb5: default
dc_offs_enb6: default
dc_offs_enb7: default
dc_offs_enb8: default
dc_offs_enb9: default
dev_addr: '""'
dev_args: '""'
gain0: rfGain_dB
gain1: '0'
gain10: '0'
gain11: '0'
gain12: '0'
gain13: '0'
gain14: '0'
gain15: '0'
gain16: '0'
gain17: '0'
gain18: '0'
gain19: '0'
gain2: '0'
gain20: '0'
gain21: '0'
gain22: '0'
gain23: '0'
gain24: '0'
gain25: '0'
gain26: '0'
gain27: '0'
gain28: '0'
gain29: '0'
gain3: '0'
gain30: '0'
gain31: '0'
gain4: '0'
gain5: '0'
gain6: '0'
gain7: '0'
gain8: '0'
gain9: '0'
gain_type0: default
gain_type1: default
gain_type10: default
gain_type11: default
gain_type12: default
gain_type13: default
gain_type14: default
gain_type15: default
gain_type16: default
gain_type17: default
gain_type18: default
gain_type19: default
gain_type2: default
gain_type20: default
gain_type21: default
gain_type22: default
gain_type23: default
gain_type24: default
gain_type25: default
gain_type26: default
gain_type27: default
gain_type28: default
gain_type29: default
gain_type3: default
gain_type30: default
gain_type31: default
gain_type4: default
gain_type5: default
gain_type6: default
gain_type7: default
gain_type8: default
gain_type9: default
iq_imbal0: 0+0j
iq_imbal1: 0+0j
iq_imbal10: 0+0j
iq_imbal11: 0+0j
iq_imbal12: 0+0j
iq_imbal13: 0+0j
iq_imbal14: 0+0j
iq_imbal15: 0+0j
iq_imbal16: 0+0j
iq_imbal17: 0+0j
iq_imbal18: 0+0j
iq_imbal19: 0+0j
iq_imbal2: 0+0j
iq_imbal20: 0+0j
iq_imbal21: 0+0j
iq_imbal22: 0+0j
iq_imbal23: 0+0j
iq_imbal24: 0+0j
iq_imbal25: 0+0j
iq_imbal26: 0+0j
iq_imbal27: 0+0j
iq_imbal28: 0+0j
iq_imbal29: 0+0j
iq_imbal3: 0+0j
iq_imbal30: 0+0j
iq_imbal31: 0+0j
iq_imbal4: 0+0j
iq_imbal5: 0+0j
iq_imbal6: 0+0j
iq_imbal7: 0+0j
iq_imbal8: 0+0j
iq_imbal9: 0+0j
iq_imbal_enb0: default
iq_imbal_enb1: default
iq_imbal_enb10: default
iq_imbal_enb11: default
iq_imbal_enb12: default
iq_imbal_enb13: default
iq_imbal_enb14: default
iq_imbal_enb15: default
iq_imbal_enb16: default
iq_imbal_enb17: default
iq_imbal_enb18: default
iq_imbal_enb19: default
iq_imbal_enb2: default
iq_imbal_enb20: default
iq_imbal_enb21: default
iq_imbal_enb22: default
iq_imbal_enb23: default
iq_imbal_enb24: default
iq_imbal_enb25: default
iq_imbal_enb26: default
iq_imbal_enb27: default
iq_imbal_enb28: default
iq_imbal_enb29: default
iq_imbal_enb3: default
iq_imbal_enb30: default
iq_imbal_enb31: default
iq_imbal_enb4: default
iq_imbal_enb5: default
iq_imbal_enb6: default
iq_imbal_enb7: default
iq_imbal_enb8: default
iq_imbal_enb9: default
lo_export0: 'False'
lo_export1: 'False'
lo_export10: 'False'
lo_export11: 'False'
lo_export12: 'False'
lo_export13: 'False'
lo_export14: 'False'
lo_export15: 'False'
lo_export16: 'False'
lo_export17: 'False'
lo_export18: 'False'
lo_export19: 'False'
lo_export2: 'False'
lo_export20: 'False'
lo_export21: 'False'
lo_export22: 'False'
lo_export23: 'False'
lo_export24: 'False'
lo_export25: 'False'
lo_export26: 'False'
lo_export27: 'False'
lo_export28: 'False'
lo_export29: 'False'
lo_export3: 'False'
lo_export30: 'False'
lo_export31: 'False'
lo_export4: 'False'
lo_export5: 'False'
lo_export6: 'False'
lo_export7: 'False'
lo_export8: 'False'
lo_export9: 'False'
lo_source0: internal
lo_source1: internal
lo_source10: internal
lo_source11: internal
lo_source12: internal
lo_source13: internal
lo_source14: internal
lo_source15: internal
lo_source16: internal
lo_source17: internal
lo_source18: internal
lo_source19: internal
lo_source2: internal
lo_source20: internal
lo_source21: internal
lo_source22: internal
lo_source23: internal
lo_source24: internal
lo_source25: internal
lo_source26: internal
lo_source27: internal
lo_source28: internal
lo_source29: internal
lo_source3: internal
lo_source30: internal
lo_source31: internal
lo_source4: internal
lo_source5: internal
lo_source6: internal
lo_source7: internal
lo_source8: internal
lo_source9: internal
maxoutbuf: '0'
minoutbuf: '0'
nchan: '1'
num_mboards: '1'
otw: ''
rx_agc0: Disabled
rx_agc1: Default
rx_agc10: Default
rx_agc11: Default
rx_agc12: Default
rx_agc13: Default
rx_agc14: Default
rx_agc15: Default
rx_agc16: Default
rx_agc17: Default
rx_agc18: Default
rx_agc19: Default
rx_agc2: Default
rx_agc20: Default
rx_agc21: Default
rx_agc22: Default
rx_agc23: Default
rx_agc24: Default
rx_agc25: Default
rx_agc26: Default
rx_agc27: Default
rx_agc28: Default
rx_agc29: Default
rx_agc3: Default
rx_agc30: Default
rx_agc31: Default
rx_agc4: Default
rx_agc5: Default
rx_agc6: Default
rx_agc7: Default
rx_agc8: Default
rx_agc9: Default
samp_rate: samp_rate
sd_spec0: ''
sd_spec1: ''
sd_spec2: ''
sd_spec3: ''
sd_spec4: ''
sd_spec5: ''
sd_spec6: ''
sd_spec7: ''
show_lo_controls: 'False'
start_time: '-1.0'
stream_args: ''
stream_chans: '[]'
sync: none
time_source0: ''
time_source1: ''
time_source2: ''
time_source3: ''
time_source4: ''
time_source5: ''
time_source6: ''
time_source7: ''
type: fc32
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [360, 828.0]
rotation: 0
state: enabled
- name: virtual_sink_0
id: virtual_sink
parameters:
alias: ''
comment: "Demodulated station:\n 480 kSa/s\n bw=100 kHz"
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1960, 848.0]
rotation: 0
state: enabled
- name: virtual_sink_0_0
id: virtual_sink
parameters:
alias: ''
comment: "Audio output:\n 48 kSa/s\n bw=15 kHz"
stream_id: L+R
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [506, 1737]
rotation: 0
state: enabled
- name: virtual_sink_0_0_0
id: virtual_sink
parameters:
alias: ''
comment: "Output:\n 96 kSa/s\n fc=38 kHz\n bw=2 kHz"
stream_id: 38 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [640, 2272.0]
rotation: 0
state: enabled
- name: virtual_sink_0_0_1
id: virtual_sink
parameters:
alias: ''
comment: "Audio output:\n 48 kSa/s\n bw=15 kHz"
stream_id: L-R
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [981, 2607]
rotation: 0
state: enabled
- name: virtual_sink_0_0_1_0
id: virtual_sink
parameters:
alias: ''
comment: "Output:\n 48 kSa/s\n audio bw: 9 kHz"
stream_id: scaAudio67
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [984, 3260.0]
rotation: 0
state: enabled
- name: virtual_sink_0_0_1_0_0
id: virtual_sink
parameters:
alias: ''
comment: Left Speaker.
stream_id: mainL
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [849, 2906]
rotation: 0
state: enabled
- name: virtual_sink_0_0_1_0_0_0
id: virtual_sink
parameters:
alias: ''
comment: "Right Speaker:\n 48 kSa/s\n audio bw: 15 kHz"
stream_id: mainR
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [850, 2978]
rotation: 0
state: enabled
- name: virtual_sink_0_0_1_0_1
id: virtual_sink
parameters:
alias: ''
comment: "Output:\n 48 kSa/s\n audio bw: 9 kHz"
stream_id: scaAudio92
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [984, 3612.0]
rotation: 0
state: enabled
- name: virtual_sink_0_0_2
id: virtual_sink
parameters:
alias: ''
comment: "Output:\n 96 kSa/s\n fc=19 kHz\n bw=2 kHz\n\n Unfiltered!"
stream_id: 19 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [904, 1992.0]
rotation: 0
state: enabled
- name: virtual_sink_2
id: virtual_sink
parameters:
alias: ''
comment: 'Station chosen by user
via QT Gui Sink.'
stream_id: fmStation_Hz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1744, 1568.0]
rotation: 0
state: enabled
- name: virtual_sink_2_0
id: virtual_sink
parameters:
alias: ''
comment: 'Station chosen
by clicking gui.'
stream_id: fmStation_MHz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [1912, 1352.0]
rotation: 0
state: enabled
- name: virtual_source_0
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [69, 1683]
rotation: 0
state: enabled
- name: virtual_source_0_0
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [77, 1983]
rotation: 0
state: enabled
- name: virtual_source_0_0_0
id: virtual_source
parameters:
alias: ''
comment: ''
stream_id: 19 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [73, 2272]
rotation: 0
state: enabled
- name: virtual_source_0_0_1
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [64, 2595]
rotation: 0
state: enabled
- name: virtual_source_0_0_1_0
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [97, 3244]
rotation: 0
state: enabled
- name: virtual_source_0_0_1_0_0
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [99, 3594]
rotation: 0
state: enabled
- name: virtual_source_0_0_1_0_0_0_0_0
id: virtual_source
parameters:
alias: ''
comment: '480 kSa/s
bw=100 kHz'
stream_id: baseband
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [128, 4488.0]
rotation: 0
state: enabled
- name: virtual_source_0_1_0
id: virtual_source
parameters:
alias: ''
comment: ''
stream_id: 38 kHz pilot
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [252, 2486]
rotation: 0
state: enabled
- name: virtual_source_0_1_1
id: virtual_source
parameters:
alias: ''
comment: ''
stream_id: L+R
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [113, 2862]
rotation: 0
state: enabled
- name: virtual_source_0_1_1_0
id: virtual_source
parameters:
alias: ''
comment: ''
stream_id: L-R
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [112, 2927]
rotation: 0
state: enabled
- name: virtual_source_0_1_2_0_0
id: virtual_source
parameters:
alias: ''
comment: Main Left.
stream_id: mainL
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [171, 3992]
rotation: 0
state: enabled
- name: virtual_source_0_1_2_0_0_0
id: virtual_source
parameters:
alias: ''
comment: Main Right.
stream_id: mainR
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [170, 4066]
rotation: 0
state: enabled
- name: virtual_source_0_1_2_0_0_1
id: virtual_source
parameters:
alias: ''
comment: SCA at 67 kHz.
stream_id: scaAudio67
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [166, 4147]
rotation: 0
state: enabled
- name: virtual_source_0_1_2_0_0_1_0
id: virtual_source
parameters:
alias: ''
comment: SCA at 92 kHz.
stream_id: scaAudio92
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [168, 4238]
rotation: 0
state: enabled
- name: virtual_source_2
id: virtual_source
parameters:
alias: ''
comment: 'Station chosen by user
via QT Gui Sink.'
stream_id: fmStation_Hz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [80, 880.0]
rotation: 0
state: enabled
- name: virtual_source_2_0
id: virtual_source
parameters:
alias: ''
comment: 'Station chosen
by clicking gui.'
stream_id: fmStation_MHz
states:
bus_sink: false
bus_source: false
bus_structure: null
coordinate: [960, 1544.0]
rotation: 0
state: enabled
connections:
- [analog_agc_xx_0, '0', digital_symbol_sync_xx_0_0, '0']
- [analog_fm_deemph_0, '0', blocks_multiply_const_vxx_0, '0']
- [analog_fm_deemph_0_1, '0', blocks_multiply_const_vxx_0_0, '0']
- [analog_fm_demod_cf_0, '0', blocks_multiply_const_vxx_0_0_0, '0']
- [analog_fm_demod_cf_0_0, '0', blocks_multiply_const_vxx_0_0_0_0, '0']
- [analog_pll_refout_cc_0, '0', virtual_sink_0_0_2, '0']
- [band_pass_filter_0, '0', blocks_float_to_complex_0, '0']
- [band_pass_filter_0, '0', blocks_float_to_complex_0, '1']
- [band_pass_filter_0, '0', qtgui_freq_sink_x_0_0_0, '0']
- [band_pass_filter_0_0, '0', blocks_complex_to_real_0_0, '0']
- [band_pass_filter_0_0, '0', virtual_sink_0_0_0, '0']
- [band_pass_filter_0_1, '0', blocks_multiply_xx_0_0, '1']
- [blocks_add_xx_0, '0', analog_fm_deemph_0, '0']
- [blocks_complex_to_arg_0, '0', blocks_multiply_const_vxx_1, '0']
- [blocks_complex_to_real_0, '0', qtgui_freq_sink_x_0_0_1, '0']
- [blocks_complex_to_real_0, '0', virtual_sink_0_0_1, '0']
- [blocks_complex_to_real_0_0, '0', qtgui_freq_sink_x_0_0_0_0, '0']
- [blocks_delay_0_0, '0', blocks_divide_xx_0, '1']
- [blocks_divide_xx_0, '0', blocks_complex_to_arg_0, '0']
- [blocks_float_to_complex_0, '0', analog_pll_refout_cc_0, '0']
- [blocks_multiply_const_vxx_0, '0', qtgui_freq_sink_x_0_0_1_0, '0']
- [blocks_multiply_const_vxx_0, '0', virtual_sink_0_0_1_0_0, '0']
- [blocks_multiply_const_vxx_0_0, '0', qtgui_freq_sink_x_0_0_1_0, '1']
- [blocks_multiply_const_vxx_0_0, '0', virtual_sink_0_0_1_0_0_0, '0']
- [blocks_multiply_const_vxx_0_0_0, '0', qtgui_freq_sink_x_0_0_1_1, '0']
- [blocks_multiply_const_vxx_0_0_0, '0', virtual_sink_0_0_1_0, '0']
- [blocks_multiply_const_vxx_0_0_0_0, '0', qtgui_freq_sink_x_0_0_1_1_0, '0']
- [blocks_multiply_const_vxx_0_0_0_0, '0', virtual_sink_0_0_1_0_1, '0']
- [blocks_multiply_const_vxx_1, '0', fir_filter_xxx_0, '0']
- [blocks_multiply_xx_0, '0', band_pass_filter_0_0, '0']
- [blocks_multiply_xx_0_0, '0', low_pass_filter_0_0_0, '0']
- [blocks_mute_xx_0, '0', fosphor_qt_sink_c_0, '0']
- [blocks_mute_xx_0, '0', low_pass_filter_0, '0']
- [blocks_mute_xx_0, '0', qtgui_sink_x_0_0, '0']
- [blocks_selector_0, '0', audio_sink_0_0, '0']
- [blocks_selector_0_0, '0', audio_sink_0_0, '1']
- [blocks_sub_xx_0, '0', analog_fm_deemph_0_1, '0']
- [digital_constellation_receiver_cb_0, '0', digital_diff_decoder_bb_0_0, '0']
- [digital_constellation_receiver_cb_0, '1', qtgui_time_sink_x_1, '0']
- [digital_constellation_receiver_cb_0, '2', qtgui_time_sink_x_1, '1']
- [digital_constellation_receiver_cb_0, '3', qtgui_time_sink_x_1, '2']
- [digital_constellation_receiver_cb_0, '4', qtgui_const_sink_x_0, '0']
- [digital_diff_decoder_bb_0_0, '0', rds_decoder_0_0, '0']
- [digital_symbol_sync_xx_0_0, '0', digital_constellation_receiver_cb_0, '0']
- [digital_symbol_sync_xx_0_0, '0', qtgui_time_sink_x_0, '0']
- [epy_block_0, snapped_Hz_out, qtgui_sink_x_0_0, freq]
- [epy_block_0, snapped_MHz_out, blocks_msgpair_to_var_0, inpair]
- [epy_block_0, snapped_MHz_out, virtual_sink_2_0, '0']
- [epy_block_1, freq_Hz_out, virtual_sink_2, '0']
- [fir_filter_xxx_0, '0', qtgui_sink_x_0, '0']
- [fir_filter_xxx_0, '0', virtual_sink_0, '0']
- [fir_filter_xxx_2, '0', analog_agc_xx_0, '0']
- [fosphor_qt_sink_c_0, freq, epy_block_0, raw_Hz_in]
- [freq_xlating_fir_filter_xxx_0_0, '0', analog_fm_demod_cf_0, '0']
- [freq_xlating_fir_filter_xxx_0_0_0, '0', analog_fm_demod_cf_0_0, '0']
- [freq_xlating_fir_filter_xxx_1_0, '0', rational_resampler_xxx_1, '0']
- [low_pass_filter_0, '0', blocks_delay_0_0, '0']
- [low_pass_filter_0, '0', blocks_divide_xx_0, '0']
- [low_pass_filter_0_0, '0', qtgui_freq_sink_x_0_0, '0']
- [low_pass_filter_0_0, '0', virtual_sink_0_0, '0']
- [low_pass_filter_0_0_0, '0', blocks_complex_to_real_0, '0']
- [qtgui_edit_box_msg_0, msg, blocks_msgpair_to_var_0_0, inpair]
- [qtgui_edit_box_msg_0, msg, epy_block_1, freq_MHz_in]
- [qtgui_sink_x_0_0, freq, epy_block_0, raw_Hz_in]
- [rational_resampler_xxx_1, '0', fir_filter_xxx_2, '0']
- [rds_decoder_0_0, out, rds_parser_0_0, in]
- [rds_parser_0_0, out, rds_panel_0_0, in]
- [rtlsdr_source_0, '0', blocks_mute_xx_0, '0']
- [uhd_usrp_source_0, '0', blocks_mute_xx_0, '0']
- [virtual_source_0, '0', low_pass_filter_0_0, '0']
- [virtual_source_0_0, '0', band_pass_filter_0, '0']
- [virtual_source_0_0_0, '0', blocks_multiply_xx_0, '0']
- [virtual_source_0_0_0, '0', blocks_multiply_xx_0, '1']
- [virtual_source_0_0_1, '0', band_pass_filter_0_1, '0']
- [virtual_source_0_0_1_0, '0', freq_xlating_fir_filter_xxx_0_0, '0']
- [virtual_source_0_0_1_0_0, '0', freq_xlating_fir_filter_xxx_0_0_0, '0']
- [virtual_source_0_0_1_0_0_0_0_0, '0', freq_xlating_fir_filter_xxx_1_0, '0']
- [virtual_source_0_1_0, '0', blocks_multiply_xx_0_0, '0']
- [virtual_source_0_1_1, '0', blocks_add_xx_0, '0']
- [virtual_source_0_1_1, '0', blocks_sub_xx_0, '0']
- [virtual_source_0_1_1_0, '0', blocks_add_xx_0, '1']
- [virtual_source_0_1_1_0, '0', blocks_sub_xx_0, '1']
- [virtual_source_0_1_2_0_0, '0', blocks_selector_0, '0']
- [virtual_source_0_1_2_0_0_0, '0', blocks_selector_0_0, '0']
- [virtual_source_0_1_2_0_0_1, '0', blocks_selector_0, '1']
- [virtual_source_0_1_2_0_0_1, '0', blocks_selector_0_0, '1']
- [virtual_source_0_1_2_0_0_1_0, '0', blocks_selector_0, '2']
- [virtual_source_0_1_2_0_0_1_0, '0', blocks_selector_0_0, '2']
- [virtual_source_2, '0', rtlsdr_source_0, command]
- [virtual_source_2, '0', uhd_usrp_source_0, command]
- [virtual_source_2_0, '0', qtgui_edit_box_msg_0, val]
metadata:
file_format: 1
grc_version: 3.10.7.0