762 lines
15 KiB
Plaintext
762 lines
15 KiB
Plaintext
options:
|
|
parameters:
|
|
author: Barry Duggan
|
|
catch_exceptions: 'True'
|
|
category: '[GRC Hier Blocks]'
|
|
cmake_opt: ''
|
|
comment: ''
|
|
copyright: ''
|
|
description: NBFM transmitter
|
|
gen_cmake: 'On'
|
|
gen_linking: dynamic
|
|
generate_options: qt_gui
|
|
hier_block_src_path: '.:'
|
|
id: NFM_xmt
|
|
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: NFM_xmt
|
|
window_size: ''
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [16, 12.0]
|
|
rotation: 0
|
|
state: enabled
|
|
|
|
blocks:
|
|
- name: df
|
|
id: variable_qtgui_range
|
|
parameters:
|
|
comment: ''
|
|
gui_hint: ''
|
|
label: ''
|
|
min_len: '200'
|
|
orient: QtCore.Qt.Horizontal
|
|
rangeType: float
|
|
start: '0'
|
|
step: '0.001'
|
|
stop: '0.02'
|
|
value: '0'
|
|
widget: counter_slider
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [128, 288.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: freq
|
|
id: variable_qtgui_range
|
|
parameters:
|
|
comment: ''
|
|
gui_hint: ''
|
|
label: ''
|
|
min_len: '200'
|
|
orient: QtCore.Qt.Horizontal
|
|
rangeType: float
|
|
start: '0'
|
|
step: '1'
|
|
stop: samp_rate/2
|
|
value: '440'
|
|
widget: counter_slider
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [456, 16.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: if_rate
|
|
id: variable
|
|
parameters:
|
|
comment: ''
|
|
value: int(usrp_rate/3)
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [376, 16.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: noise
|
|
id: variable_qtgui_range
|
|
parameters:
|
|
comment: ''
|
|
gui_hint: ''
|
|
label: ''
|
|
min_len: '200'
|
|
orient: QtCore.Qt.Horizontal
|
|
rangeType: float
|
|
start: '0'
|
|
step: '0.01'
|
|
stop: '2'
|
|
value: '0'
|
|
widget: counter_slider
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [16, 288.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: samp_rate
|
|
id: variable
|
|
parameters:
|
|
comment: ''
|
|
value: '48000'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [200, 16.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: usrp_rate
|
|
id: variable
|
|
parameters:
|
|
comment: ''
|
|
value: '576000'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [288, 16.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: analog_agc_xx_0
|
|
id: analog_agc_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
gain: '1.0'
|
|
max_gain: '65536'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
rate: 1e-3
|
|
reference: '2'
|
|
type: float
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1064, 520.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: analog_nbfm_rx_0
|
|
id: analog_nbfm_rx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
audio_rate: '48000'
|
|
comment: ''
|
|
max_dev: 5e3
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
quad_rate: if_rate
|
|
tau: 75e-6
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [688, 416.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: analog_nbfm_tx_0
|
|
id: analog_nbfm_tx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
audio_rate: samp_rate
|
|
comment: ''
|
|
fh: '-1.0'
|
|
max_dev: 5e3
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
quad_rate: if_rate
|
|
tau: 75e-6
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [576, 168.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: blocks_null_sink_0
|
|
id: blocks_null_sink
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
bus_structure_sink: '[[0,],]'
|
|
comment: ''
|
|
num_inputs: '1'
|
|
type: byte
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1416, 552.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: blocks_repeat_0_0
|
|
id: blocks_repeat
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
interp: (int)(usrp_rate/if_rate)
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
type: complex
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [984, 200.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: blocks_throttle_0
|
|
id: blocks_throttle
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
ignoretag: 'True'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
samples_per_second: usrp_rate
|
|
type: complex
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [160, 440.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: blocks_vector_source_x_0_2
|
|
id: blocks_vector_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
repeat: 'True'
|
|
tags: '[]'
|
|
type: byte
|
|
vector: (0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
|
0x00, 0x00, 0x00, 0x00)
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [8, 184.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: channels_channel_model_0
|
|
id: channels_channel_model
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
block_tags: 'False'
|
|
comment: ''
|
|
epsilon: '1.0'
|
|
freq_offset: df
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
noise_voltage: noise
|
|
seed: '0'
|
|
taps: 1.0 + 1.0j
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [320, 400.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: low_pass_filter_0
|
|
id: low_pass_filter
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
beta: '6.76'
|
|
comment: ''
|
|
cutoff_freq: '15000'
|
|
decim: '1'
|
|
gain: '1'
|
|
interp: '1'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
samp_rate: if_rate
|
|
type: fir_filter_ccf
|
|
width: '2000'
|
|
win: window.WIN_HAMMING
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [816, 148.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: low_pass_filter_1
|
|
id: low_pass_filter
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
beta: '6.76'
|
|
comment: ''
|
|
cutoff_freq: usrp_rate/6
|
|
decim: int(usrp_rate/if_rate)
|
|
gain: '1'
|
|
interp: '1'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
samp_rate: usrp_rate
|
|
type: fir_filter_ccf
|
|
width: usrp_rate/64
|
|
win: window.WIN_HAMMING
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [520, 388.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: m17_m17_coder_0
|
|
id: m17_m17_coder
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
debug: 'False'
|
|
dst_id: ALL
|
|
maxoutbuf: '0'
|
|
meta: meta
|
|
minoutbuf: '0'
|
|
src_id: EMITTER1
|
|
type: '42'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [208, 168.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: m17_m17_decoder_0
|
|
id: m17_m17_decoder
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
debug_ctrl: 'True'
|
|
debug_data: 'False'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1248, 536.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: note_0_2
|
|
id: note
|
|
parameters:
|
|
alias: ''
|
|
comment: ''
|
|
note: DATA
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [48, 128.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: qtgui_freq_sink_x_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: '1.0'
|
|
axislabels: 'True'
|
|
bw: if_rate
|
|
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: 'True'
|
|
grid: 'False'
|
|
gui_hint: ''
|
|
label: Relative Gain
|
|
label1: ''
|
|
label10: ''''''
|
|
label2: ''''''
|
|
label3: ''''''
|
|
label4: ''''''
|
|
label5: ''''''
|
|
label6: ''''''
|
|
label7: ''''''
|
|
label8: ''''''
|
|
label9: ''''''
|
|
legend: 'True'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
name: '""'
|
|
nconnections: '3'
|
|
norm_window: 'False'
|
|
showports: 'False'
|
|
tr_chan: '0'
|
|
tr_level: '0.0'
|
|
tr_mode: qtgui.TRIG_MODE_FREE
|
|
tr_tag: '""'
|
|
type: complex
|
|
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: [1232, 256.0]
|
|
rotation: 0
|
|
state: true
|
|
- 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: 'False'
|
|
gui_hint: ''
|
|
label1: Signal 1
|
|
label10: Signal 10
|
|
label2: Signal 2
|
|
label3: Signal 3
|
|
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: '-1'
|
|
marker4: '-1'
|
|
marker5: '-1'
|
|
marker6: '-1'
|
|
marker7: '-1'
|
|
marker8: '-1'
|
|
marker9: '-1'
|
|
name: '""'
|
|
nconnections: '2'
|
|
size: '1024'
|
|
srate: samp_rate
|
|
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: 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: [1224, 360.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: qtgui_time_sink_x_0_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: 'False'
|
|
gui_hint: ''
|
|
label1: Signal 1
|
|
label10: Signal 10
|
|
label2: Signal 2
|
|
label3: Signal 3
|
|
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: '-1'
|
|
marker4: '-1'
|
|
marker5: '-1'
|
|
marker6: '-1'
|
|
marker7: '-1'
|
|
marker8: '-1'
|
|
marker9: '-1'
|
|
name: '""'
|
|
nconnections: '2'
|
|
size: '1024'
|
|
srate: samp_rate
|
|
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: 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: [1224, 448.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: root_raised_cosine_filter_0
|
|
id: root_raised_cosine_filter
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
alpha: '0.5'
|
|
comment: ''
|
|
decim: '1'
|
|
gain: '1'
|
|
interp: '10'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
ntaps: '81'
|
|
samp_rate: '10'
|
|
sym_rate: '1.0'
|
|
type: interp_fir_filter_fff
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [376, 160.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: root_raised_cosine_filter_0_0
|
|
id: root_raised_cosine_filter
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
alpha: '0.5'
|
|
comment: ''
|
|
decim: '10'
|
|
gain: '1'
|
|
interp: '10'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
ntaps: '81'
|
|
samp_rate: '10'
|
|
sym_rate: '1.0'
|
|
type: fir_filter_fff
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [864, 504.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: virtual_sink_0
|
|
id: virtual_sink
|
|
parameters:
|
|
alias: ''
|
|
comment: ''
|
|
stream_id: tag1
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1136, 200.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: virtual_source_0
|
|
id: virtual_source
|
|
parameters:
|
|
alias: ''
|
|
comment: ''
|
|
stream_id: tag1
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [8, 440.0]
|
|
rotation: 0
|
|
state: true
|
|
|
|
connections:
|
|
- [analog_agc_xx_0, '0', m17_m17_decoder_0, '0']
|
|
- [analog_agc_xx_0, '0', qtgui_time_sink_x_0_0, '1']
|
|
- [analog_nbfm_rx_0, '0', qtgui_time_sink_x_0, '1']
|
|
- [analog_nbfm_rx_0, '0', root_raised_cosine_filter_0_0, '0']
|
|
- [analog_nbfm_tx_0, '0', low_pass_filter_0, '0']
|
|
- [analog_nbfm_tx_0, '0', qtgui_freq_sink_x_0, '1']
|
|
- [blocks_repeat_0_0, '0', virtual_sink_0, '0']
|
|
- [blocks_throttle_0, '0', channels_channel_model_0, '0']
|
|
- [blocks_vector_source_x_0_2, '0', m17_m17_coder_0, '0']
|
|
- [channels_channel_model_0, '0', low_pass_filter_1, '0']
|
|
- [low_pass_filter_0, '0', blocks_repeat_0_0, '0']
|
|
- [low_pass_filter_0, '0', qtgui_freq_sink_x_0, '0']
|
|
- [low_pass_filter_1, '0', analog_nbfm_rx_0, '0']
|
|
- [low_pass_filter_1, '0', qtgui_freq_sink_x_0, '2']
|
|
- [m17_m17_coder_0, '0', qtgui_time_sink_x_0_0, '0']
|
|
- [m17_m17_coder_0, '0', root_raised_cosine_filter_0, '0']
|
|
- [m17_m17_decoder_0, '0', blocks_null_sink_0, '0']
|
|
- [root_raised_cosine_filter_0, '0', analog_nbfm_tx_0, '0']
|
|
- [root_raised_cosine_filter_0, '0', qtgui_time_sink_x_0, '0']
|
|
- [root_raised_cosine_filter_0_0, '0', analog_agc_xx_0, '0']
|
|
- [virtual_source_0, '0', blocks_throttle_0, '0']
|
|
|
|
metadata:
|
|
file_format: 1
|
|
grc_version: 3.10.5.1
|