mirror of
https://github.com/dj0abr/SSB_HighSpeed_Modem.git
synced 2024-10-31 15:37:12 -04:00
974 lines
20 KiB
Plaintext
974 lines
20 KiB
Plaintext
options:
|
|
parameters:
|
|
author: DJ0ABR
|
|
category: '[GRC Hier Blocks]'
|
|
cmake_opt: ''
|
|
comment: 'send and receive a datastream
|
|
|
|
with 3500 bit/s via a QO-100
|
|
|
|
SSB channel with 2700 Hz bandwidth
|
|
|
|
works with Gnu Radio 3.8.xxx ONLY
|
|
|
|
does not work with 3.7.x'
|
|
copyright: ''
|
|
description: works with Gnu Radio 3.8.xxx
|
|
gen_cmake: 'Off'
|
|
gen_linking: dynamic
|
|
generate_options: no_gui
|
|
hier_block_src_path: '.:'
|
|
id: qpsk_rx
|
|
max_nouts: '0'
|
|
output_language: python
|
|
placement: (0,0)
|
|
qt_qss_theme: ''
|
|
realtime_scheduling: ''
|
|
run: 'True'
|
|
run_command: '{python} -u {filename}'
|
|
run_options: run
|
|
sizing_mode: fixed
|
|
thread_safe_setters: ''
|
|
title: QPSK RX-Modem
|
|
window_size: ''
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [8, 8]
|
|
rotation: 0
|
|
state: enabled
|
|
|
|
blocks:
|
|
- name: mixf
|
|
id: variable
|
|
parameters:
|
|
comment: 'mid frequency
|
|
|
|
in the audio
|
|
|
|
spectrum. Set to get
|
|
|
|
lowest and highest
|
|
|
|
frequency within the
|
|
|
|
transceiver filter range.'
|
|
value: '1500'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [328, 12.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: nfilts
|
|
id: variable
|
|
parameters:
|
|
comment: ''
|
|
value: '32'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [704, 12.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: outputsps
|
|
id: variable
|
|
parameters:
|
|
comment: 'Samples/Symbol
|
|
|
|
fixed value,
|
|
|
|
do not change.
|
|
|
|
Used to adjust
|
|
|
|
bitrate vs. bandwidth'
|
|
value: '7'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [8, 212.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: qpsk__constellation
|
|
id: variable_constellation_rect
|
|
parameters:
|
|
comment: ''
|
|
const_points: '[0.707+0.707j, -0.707+0.707j, -0.707-0.707j, 0.707-0.707j]'
|
|
imag_sect: '2'
|
|
precision: '8'
|
|
real_sect: '2'
|
|
rot_sym: '4'
|
|
soft_dec_lut: '''auto'''
|
|
sym_map: '[0, 1, 2, 3]'
|
|
w_imag_sect: '1'
|
|
w_real_sect: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [976, 12.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: sps
|
|
id: variable
|
|
parameters:
|
|
comment: 'Resampling Rate
|
|
|
|
of the Polyphase
|
|
|
|
Clock Sync and its filter'
|
|
value: '4'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [568, 12.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: analog_agc2_xx_0_0
|
|
id: analog_agc2_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
attack_rate: '0.01'
|
|
comment: 'Costas loop needs AGC
|
|
|
|
loop gain depends on input level'
|
|
decay_rate: '0.2'
|
|
gain: '1'
|
|
max_gain: '3'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
reference: '1'
|
|
type: complex
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [544, 636.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: analog_const_source_x_0
|
|
id: analog_const_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'Marker to find the start
|
|
|
|
of the values'
|
|
const: '1000'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
type: int
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [464, 788.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: analog_const_source_x_0_0
|
|
id: analog_const_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'Marker to find the start
|
|
|
|
of the values'
|
|
const: '1000'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
type: int
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [536, 948.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: analog_const_source_x_0_0_0
|
|
id: analog_const_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'Marker to find the start
|
|
|
|
of the values'
|
|
const: '0'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
type: float
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [824, 1140.0]
|
|
rotation: 180
|
|
state: disabled
|
|
- name: analog_const_source_x_0_1
|
|
id: analog_const_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
const: '16777216'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
type: float
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [792, 916.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: analog_sig_source_x_0_0_0
|
|
id: analog_sig_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
amp: '1'
|
|
comment: 'the modulator output is in the baseband at 0 Hz.
|
|
|
|
Mix it with the required audio mid frequency.
|
|
|
|
cos and -sin are used to combine I and Q
|
|
|
|
into the frinal signal.
|
|
|
|
Use it als for RX in the reverse direction'
|
|
freq: mixf
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
offset: '0'
|
|
phase: '0'
|
|
samp_rate: samp_rate
|
|
type: complex
|
|
waveform: analog.GR_COS_WAVE
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [200, 220.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: analog_sig_source_x_1
|
|
id: analog_sig_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
amp: '1'
|
|
comment: "Markers for the \nFrequ.Sink"
|
|
freq: '1500'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
offset: '0'
|
|
phase: '0'
|
|
samp_rate: samp_rate
|
|
type: float
|
|
waveform: analog.GR_COS_WAVE
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [712, 140.0]
|
|
rotation: 0
|
|
state: disabled
|
|
- name: analog_sig_source_x_1_0
|
|
id: analog_sig_source_x
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
amp: '1'
|
|
comment: ''
|
|
freq: '3000'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
offset: '0'
|
|
phase: '0'
|
|
samp_rate: samp_rate
|
|
type: float
|
|
waveform: analog.GR_COS_WAVE
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [704, 300.0]
|
|
rotation: 0
|
|
state: disabled
|
|
- name: audio_source_0
|
|
id: audio_source
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: get audio from transceiver
|
|
device_name: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_outputs: '1'
|
|
ok_to_block: 'True'
|
|
samp_rate: samp_rate
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1328, 468.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_complex_to_float_0
|
|
id: blocks_complex_to_float
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [824, 1032.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_complex_to_float_1
|
|
id: blocks_complex_to_float
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [456, 248.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: blocks_float_to_complex_0
|
|
id: blocks_float_to_complex
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'combile I and Q
|
|
|
|
to complex signal'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [320, 464.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_float_to_int_0
|
|
id: blocks_float_to_int
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
scale: '16777216'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [632, 1028.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_float_to_int_0_0
|
|
id: blocks_float_to_int
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
scale: '16777216'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [632, 1076.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_float_to_int_0_1
|
|
id: blocks_float_to_int
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
scale: '1'
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [512, 868.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_interleave_0
|
|
id: blocks_interleave
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
blocksize: '1'
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_streams: '2'
|
|
type: int
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [360, 872.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_interleave_0_0
|
|
id: blocks_interleave
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
blocksize: '1'
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_streams: '3'
|
|
type: int
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [320, 1000.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: blocks_multiply_xx_0_0_0
|
|
id: blocks_multiply_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: make I
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_inputs: '2'
|
|
type: float
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [520, 408.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_multiply_xx_0_1
|
|
id: blocks_multiply_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: make Q
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_inputs: '2'
|
|
type: float
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [560, 512.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_multiply_xx_0_1_0
|
|
id: blocks_multiply_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
num_inputs: '2'
|
|
type: float
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [640, 856.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_udp_sink_0
|
|
id: blocks_udp_sink
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'send RX data to UDP
|
|
|
|
port 1235 on the local machine'
|
|
eof: 'False'
|
|
ipaddr: 127.0.0.1
|
|
port: '40135'
|
|
psize: '344'
|
|
type: byte
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1240, 588.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: blocks_udp_sink_0_0
|
|
id: blocks_udp_sink
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'send QPSK Constellation data to UDP
|
|
|
|
port 1236 on the local machine'
|
|
eof: 'False'
|
|
ipaddr: 127.0.0.1
|
|
port: '40136'
|
|
psize: '120'
|
|
type: int
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [64, 860.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: blocks_udp_sink_0_0_0
|
|
id: blocks_udp_sink
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'send QPSK Constellation data to UDP
|
|
|
|
port 1236 on the local machine'
|
|
eof: 'False'
|
|
ipaddr: 127.0.0.1
|
|
port: '40137'
|
|
psize: '120'
|
|
type: int
|
|
vlen: '1'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [64, 988.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: digital_constellation_decoder_cb_0
|
|
id: digital_constellation_decoder_cb
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'QPSK decoding, same
|
|
|
|
parameters as modulator'
|
|
constellation: qpsk__constellation
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [992, 612.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: digital_costas_loop_cc_0
|
|
id: digital_costas_loop_cc
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'locks the signal and
|
|
|
|
converts into baseband'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
order: '4'
|
|
use_snr: 'False'
|
|
w: '0.06'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [744, 616.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: digital_lms_dd_equalizer_cc_0
|
|
id: digital_lms_dd_equalizer_cc
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
cnst: qpsk__constellation
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
mu: '0.01'
|
|
num_taps: '15'
|
|
sps: outputsps
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [288, 628.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: digital_pfb_clock_sync_xxx_0
|
|
id: digital_pfb_clock_sync_xxx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: 'synchronize the Clock,
|
|
|
|
works very well with drifting
|
|
|
|
QO-100 signal'
|
|
filter_size: nfilts
|
|
init_phase: nfilts/2
|
|
loop_bw: '0.1'
|
|
max_dev: '1.5'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
osps: outputsps
|
|
sps: sps
|
|
taps: firdes.root_raised_cosine(nfilts, nfilts, 1.0/float(sps), 0.35, 11*sps*nfilts)
|
|
type: ccf
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [64, 652.0]
|
|
rotation: 0
|
|
state: enabled
|
|
- name: low_pass_filter_0
|
|
id: low_pass_filter
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
beta: '6.76'
|
|
comment: 'Anti-Aliasing filter
|
|
|
|
Level correction
|
|
|
|
and decimation'
|
|
cutoff_freq: '3500'
|
|
decim: '1'
|
|
gain: '8'
|
|
interp: '1'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
samp_rate: samp_rate
|
|
type: fir_filter_fff
|
|
width: '3100'
|
|
win: firdes.WIN_HAMMING
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [1048, 412.0]
|
|
rotation: 180
|
|
state: enabled
|
|
- name: mmse_resampler_xx_0
|
|
id: mmse_resampler_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
phase_shift: '0'
|
|
resamp_ratio: samp_rate / 8000
|
|
type: float
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [776, 768.0]
|
|
rotation: 180
|
|
state: true
|
|
- name: mmse_resampler_xx_1
|
|
id: mmse_resampler_xx
|
|
parameters:
|
|
affinity: ''
|
|
alias: ''
|
|
comment: ''
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
phase_shift: '0'
|
|
resamp_ratio: resamp
|
|
type: complex
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [72, 480.0]
|
|
rotation: 180
|
|
state: true
|
|
- 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: ''
|
|
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: '2'
|
|
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: [768, 532.0]
|
|
rotation: 180
|
|
state: disabled
|
|
- name: qtgui_freq_sink_x_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: '1.0'
|
|
axislabels: 'True'
|
|
bw: samp_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: '4096'
|
|
freqhalf: 'False'
|
|
grid: 'True'
|
|
gui_hint: ''
|
|
label: Relative Gain
|
|
label1: ''
|
|
label10: ''''''
|
|
label2: ''''''
|
|
label3: ''''''
|
|
label4: ''''''
|
|
label5: ''''''
|
|
label6: ''''''
|
|
label7: ''''''
|
|
label8: ''''''
|
|
label9: ''''''
|
|
legend: 'True'
|
|
maxoutbuf: '0'
|
|
minoutbuf: '0'
|
|
name: TX / RX Spectrum
|
|
nconnections: '3'
|
|
showports: 'False'
|
|
tr_chan: '0'
|
|
tr_level: '0.0'
|
|
tr_mode: qtgui.TRIG_MODE_FREE
|
|
tr_tag: '""'
|
|
type: float
|
|
units: dB
|
|
update_time: '.1'
|
|
width1: '1'
|
|
width10: '1'
|
|
width2: '1'
|
|
width3: '1'
|
|
width4: '1'
|
|
width5: '1'
|
|
width6: '1'
|
|
width7: '1'
|
|
width8: '1'
|
|
width9: '1'
|
|
wintype: firdes.WIN_BLACKMAN_hARRIS
|
|
ymax: '10'
|
|
ymin: '-140'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [992, 208.0]
|
|
rotation: 0
|
|
state: disabled
|
|
- name: resamp
|
|
id: parameter
|
|
parameters:
|
|
alias: ''
|
|
comment: "Resampling Rate\nfrom Audio Rate\nto 8kS/s which is\nthe input of the\
|
|
\ \nPolypashe Clock"
|
|
hide: none
|
|
label: resamp
|
|
short_id: r
|
|
type: intx
|
|
value: '5'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [464, 12.0]
|
|
rotation: 0
|
|
state: true
|
|
- name: samp_rate
|
|
id: parameter
|
|
parameters:
|
|
alias: ''
|
|
comment: Audio Rate
|
|
hide: none
|
|
label: samp_rate
|
|
short_id: s
|
|
type: intx
|
|
value: '44100'
|
|
states:
|
|
bus_sink: false
|
|
bus_source: false
|
|
bus_structure: null
|
|
coordinate: [216, 12.0]
|
|
rotation: 0
|
|
state: true
|
|
|
|
connections:
|
|
- [analog_agc2_xx_0_0, '0', digital_costas_loop_cc_0, '0']
|
|
- [analog_const_source_x_0, '0', blocks_interleave_0, '0']
|
|
- [analog_const_source_x_0_0, '0', blocks_interleave_0_0, '0']
|
|
- [analog_const_source_x_0_0_0, '0', blocks_float_to_int_0_0, '0']
|
|
- [analog_const_source_x_0_1, '0', blocks_multiply_xx_0_1_0, '1']
|
|
- [analog_sig_source_x_0_0_0, '0', blocks_complex_to_float_1, '0']
|
|
- [analog_sig_source_x_1, '0', qtgui_freq_sink_x_1, '1']
|
|
- [analog_sig_source_x_1_0, '0', qtgui_freq_sink_x_1, '2']
|
|
- [audio_source_0, '0', low_pass_filter_0, '0']
|
|
- [audio_source_0, '0', mmse_resampler_xx_0, '0']
|
|
- [blocks_complex_to_float_0, '0', blocks_float_to_int_0, '0']
|
|
- [blocks_complex_to_float_0, '1', blocks_float_to_int_0_0, '0']
|
|
- [blocks_complex_to_float_1, '0', blocks_multiply_xx_0_1, '1']
|
|
- [blocks_complex_to_float_1, '1', blocks_multiply_xx_0_0_0, '1']
|
|
- [blocks_float_to_complex_0, '0', mmse_resampler_xx_1, '0']
|
|
- [blocks_float_to_int_0, '0', blocks_interleave_0_0, '1']
|
|
- [blocks_float_to_int_0_0, '0', blocks_interleave_0_0, '2']
|
|
- [blocks_float_to_int_0_1, '0', blocks_interleave_0, '1']
|
|
- [blocks_interleave_0, '0', blocks_udp_sink_0_0, '0']
|
|
- [blocks_interleave_0_0, '0', blocks_udp_sink_0_0_0, '0']
|
|
- [blocks_multiply_xx_0_0_0, '0', blocks_float_to_complex_0, '0']
|
|
- [blocks_multiply_xx_0_1, '0', blocks_float_to_complex_0, '1']
|
|
- [blocks_multiply_xx_0_1_0, '0', blocks_float_to_int_0_1, '0']
|
|
- [digital_constellation_decoder_cb_0, '0', blocks_udp_sink_0, '0']
|
|
- [digital_costas_loop_cc_0, '0', blocks_complex_to_float_0, '0']
|
|
- [digital_costas_loop_cc_0, '0', digital_constellation_decoder_cb_0, '0']
|
|
- [digital_costas_loop_cc_0, '0', qtgui_const_sink_x_0, '0']
|
|
- [digital_lms_dd_equalizer_cc_0, '0', analog_agc2_xx_0_0, '0']
|
|
- [digital_lms_dd_equalizer_cc_0, '0', qtgui_const_sink_x_0, '1']
|
|
- [digital_pfb_clock_sync_xxx_0, '0', digital_lms_dd_equalizer_cc_0, '0']
|
|
- [low_pass_filter_0, '0', blocks_multiply_xx_0_0_0, '0']
|
|
- [low_pass_filter_0, '0', blocks_multiply_xx_0_1, '0']
|
|
- [low_pass_filter_0, '0', qtgui_freq_sink_x_1, '0']
|
|
- [mmse_resampler_xx_0, '0', blocks_multiply_xx_0_1_0, '0']
|
|
- [mmse_resampler_xx_1, '0', digital_pfb_clock_sync_xxx_0, '0']
|
|
|
|
metadata:
|
|
file_format: 1
|