aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--hardware/QAM/qam.grc3
-rwxr-xr-xhardware/QAM/qam.py1
-rw-r--r--hardware/QAM/qam_fading.grc2554
-rw-r--r--notebooks/Fading.ipynb12
-rw-r--r--notebooks/Untitled.ipynb233
-rw-r--r--simulation/QAM/qam_nogui.grc42
-rwxr-xr-xsimulation/QAM_Fading/qam_fading.py3
-rw-r--r--simulation/QAM_Fading/qam_fading_FIR_Filter_v1.grc4
-rw-r--r--simulation/QAM_Fading/qam_fading_V2.grc21
-rw-r--r--simulation/QAM_Fading/qam_fading_frequency_selectiv_copy.grc25
10 files changed, 2859 insertions, 39 deletions
diff --git a/hardware/QAM/qam.grc b/hardware/QAM/qam.grc
index 0f2fa50..f5d4cc5 100644
--- a/hardware/QAM/qam.grc
+++ b/hardware/QAM/qam.grc
@@ -1031,7 +1031,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [1360, 84.0]
+ coordinate: [1400, 84.0]
rotation: 0
state: true
- name: qtgui_eye_sink_x_1
@@ -2530,6 +2530,7 @@ connections:
- [digital_cma_equalizer_cc_0, '0', qtgui_freq_sink_x_1_0_1, '0']
- [digital_constellation_decoder_cb_0, '0', digital_diff_decoder_bb_0, '0']
- [digital_constellation_modulator_0, '0', qtgui_const_sink_x_0, '0']
+- [digital_constellation_modulator_0, '0', qtgui_eye_sink_x_0, '0']
- [digital_constellation_modulator_0, '0', qtgui_freq_sink_x_1, '0']
- [digital_constellation_modulator_0, '0', qtgui_time_sink_x_2, '0']
- [digital_constellation_modulator_0, '0', uhd_usrp_sink_0, '0']
diff --git a/hardware/QAM/qam.py b/hardware/QAM/qam.py
index 9b54472..e57fb9e 100755
--- a/hardware/QAM/qam.py
+++ b/hardware/QAM/qam.py
@@ -850,6 +850,7 @@ class qam(gr.top_block, Qt.QWidget):
self.connect((self.digital_cma_equalizer_cc_0, 0), (self.qtgui_freq_sink_x_1_0_1, 0))
self.connect((self.digital_constellation_decoder_cb_0, 0), (self.digital_diff_decoder_bb_0, 0))
self.connect((self.digital_constellation_modulator_0, 0), (self.qtgui_const_sink_x_0, 0))
+ self.connect((self.digital_constellation_modulator_0, 0), (self.qtgui_eye_sink_x_0, 0))
self.connect((self.digital_constellation_modulator_0, 0), (self.qtgui_freq_sink_x_1, 0))
self.connect((self.digital_constellation_modulator_0, 0), (self.qtgui_time_sink_x_2, 0))
self.connect((self.digital_constellation_modulator_0, 0), (self.uhd_usrp_sink_0, 0))
diff --git a/hardware/QAM/qam_fading.grc b/hardware/QAM/qam_fading.grc
new file mode 100644
index 0000000..89ac91c
--- /dev/null
+++ b/hardware/QAM/qam_fading.grc
@@ -0,0 +1,2554 @@
+options:
+ parameters:
+ author: Pross Naoki, Halter Sara Cinzia
+ category: '[GRC Hier Blocks]'
+ cmake_opt: ''
+ comment: ''
+ copyright: ''
+ description: ''
+ gen_cmake: 'On'
+ gen_linking: dynamic
+ generate_options: qt_gui
+ hier_block_src_path: '.:'
+ id: qam
+ max_nouts: '0'
+ output_language: python
+ placement: (0,0)
+ qt_qss_theme: ''
+ realtime_scheduling: '1'
+ run: 'True'
+ run_command: '{python} -u {filename}'
+ run_options: prompt
+ sizing_mode: fixed
+ thread_safe_setters: ''
+ title: QAM Hardware Simultion
+ window_size: ''
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [8, 8]
+ rotation: 0
+ state: enabled
+
+blocks:
+- name: const
+ id: variable_constellation
+ parameters:
+ comment: ''
+ const_points: '[-1-1j, -1+1j, 1+1j, 1-1j]'
+ dims: '1'
+ precision: '8'
+ rot_sym: '4'
+ soft_dec_lut: None
+ sym_map: '[0, 1, 3, 2]'
+ type: 16qam
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [920, 420.0]
+ rotation: 0
+ state: true
+- name: eq_gain
+ id: variable_qtgui_range
+ parameters:
+ comment: ''
+ gui_hint: 'params@1: 0,0,1,1'
+ label: Equalizer Rate
+ min_len: '200'
+ orient: Qt.Horizontal
+ rangeType: float
+ start: '0'
+ step: '.001'
+ stop: '.1'
+ value: '.01'
+ widget: counter_slider
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [840, 1172.0]
+ rotation: 0
+ state: true
+- name: eq_mod
+ id: variable
+ parameters:
+ comment: ''
+ value: '2'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [840, 1092.0]
+ rotation: 0
+ state: true
+- name: eq_ntaps
+ id: variable
+ parameters:
+ comment: ''
+ value: '15'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [920, 1092.0]
+ rotation: 0
+ state: true
+- name: excess_bw
+ id: variable
+ parameters:
+ comment: ''
+ value: '.35'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1016, 252.0]
+ rotation: 0
+ state: true
+- name: nfilts
+ id: variable
+ parameters:
+ comment: ''
+ value: '32'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [432, 1188.0]
+ rotation: 0
+ state: true
+- name: phase_bw
+ id: variable_qtgui_range
+ parameters:
+ comment: ''
+ gui_hint: 'params@1: 1,0,1,1'
+ label: Phase Bandwidth
+ min_len: '200'
+ orient: Qt.Horizontal
+ rangeType: float
+ start: '0'
+ step: '.01'
+ stop: '1'
+ value: 2 * 3.141592653589793 / 100
+ widget: counter_slider
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1160, 1140.0]
+ rotation: 0
+ state: true
+- name: rrc_taps
+ id: variable
+ parameters:
+ comment: ''
+ value: firdes.root_raised_cosine(nfilts, nfilts, 1.0/float(sps), excess_bw, 45*nfilts)
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [512, 1188.0]
+ rotation: 0
+ state: true
+- name: samp_rate
+ id: variable
+ parameters:
+ comment: ''
+ value: .4e6
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [192, 12.0]
+ rotation: 0
+ state: enabled
+- name: sps
+ id: variable
+ parameters:
+ comment: ''
+ value: '4'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [920, 252.0]
+ rotation: 0
+ state: true
+- name: timing_loop_bw
+ id: variable
+ parameters:
+ comment: ''
+ value: 2 * 3.141592653589793 / 100
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [432, 1260.0]
+ rotation: 0
+ state: true
+- name: blocks_file_sink_0
+ id: blocks_file_sink
+ parameters:
+ affinity: ''
+ alias: ''
+ append: 'False'
+ comment: ''
+ file: /home/god/Documents/Fading/hardware/QPSK/lena512color_rx.tiff
+ type: byte
+ unbuffered: 'False'
+ vlen: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1832, 692.0]
+ rotation: 0
+ state: disabled
+- name: blocks_file_source_0
+ id: blocks_file_source
+ parameters:
+ affinity: ''
+ alias: ''
+ begin_tag: pmt.PMT_NIL
+ comment: ''
+ file: /home/sara/Documents/Fading/hardware/QPSK/lena512color.tiff
+ length: '0'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ offset: '0'
+ repeat: 'True'
+ type: byte
+ vlen: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [568, 308.0]
+ rotation: 0
+ state: enabled
+- 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: [1832, 800.0]
+ rotation: 0
+ state: enabled
+- name: blocks_uchar_to_float_0
+ id: blocks_uchar_to_float
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [792.0, 192]
+ rotation: 90
+ state: disabled
+- name: blocks_vector_source_x_0
+ id: blocks_vector_source_x
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ repeat: 'True'
+ tags: '[]'
+ type: byte
+ vector: (0xb4,)
+ vlen: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [632, 444.0]
+ rotation: 0
+ state: disabled
+- name: digital_cma_equalizer_cc_0
+ id: digital_cma_equalizer_cc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ modulus: eq_mod
+ mu: eq_gain
+ num_taps: eq_ntaps
+ sps: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [840, 996.0]
+ rotation: 0
+ state: true
+- name: digital_constellation_decoder_cb_0
+ id: digital_constellation_decoder_cb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ constellation: const
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1560, 968.0]
+ rotation: 0
+ state: true
+- name: digital_constellation_modulator_0
+ id: digital_constellation_modulator
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ constellation: const
+ differential: 'True'
+ excess_bw: excess_bw
+ log: 'False'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ samples_per_symbol: sps
+ verbose: 'False'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [912, 316.0]
+ rotation: 0
+ state: enabled
+- name: digital_costas_loop_cc_0
+ id: digital_costas_loop_cc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ order: '4'
+ use_snr: 'False'
+ w: phase_bw
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1152, 992.0]
+ rotation: 0
+ state: true
+- name: digital_diff_decoder_bb_0
+ id: digital_diff_decoder_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ modulus: '4'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1576, 888.0]
+ rotation: 180
+ state: true
+- name: digital_map_bb_0
+ id: digital_map_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ map: '[0, 1, 3, 2]'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1584, 796.0]
+ rotation: 0
+ state: true
+- name: digital_pfb_clock_sync_xxx_0
+ id: digital_pfb_clock_sync_xxx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ filter_size: nfilts
+ init_phase: nfilts/2
+ loop_bw: timing_loop_bw
+ max_dev: '1.5'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ osps: '1'
+ sps: sps
+ taps: rrc_taps
+ type: ccf
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [416, 1020.0]
+ rotation: 0
+ state: true
+- name: params
+ id: qtgui_tab_widget
+ parameters:
+ alias: ''
+ comment: ''
+ gui_hint: ''
+ label0: Channel
+ label1: Receiver
+ label10: Tab 10
+ 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: Tab 2
+ label3: Tab 3
+ label4: Tab 4
+ label5: Tab 5
+ label6: Tab 6
+ label7: Tab 7
+ label8: Tab 8
+ label9: Tab 9
+ num_tabs: '2'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [296, 12.0]
+ rotation: 0
+ state: true
+- name: plots
+ id: qtgui_tab_widget
+ parameters:
+ alias: ''
+ comment: ''
+ gui_hint: ''
+ label0: Constellations
+ label1: Frequency
+ label10: Tab 10
+ 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: Time
+ label3: Bits
+ label4: Tab 4
+ label5: Tab 5
+ label6: Tab 6
+ label7: Tab 7
+ label8: Tab 8
+ label9: Tab 9
+ num_tabs: '4'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [448, 12.0]
+ rotation: 0
+ 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: 'plots@0: 0,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: '"Sent (with ISI)"'
+ 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: [1156.0, 72]
+ rotation: 90
+ state: enabled
+- name: qtgui_const_sink_x_0_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: 'True'
+ 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: 'plots@0: 0,2,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: '"Synchronized and filtered"'
+ nconnections: '1'
+ size: '2048'
+ 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: [668.0, 784]
+ rotation: 90
+ state: enabled
+- name: qtgui_const_sink_x_0_0_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: 'True'
+ 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: 'plots@0: 0,1,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: '"Received"'
+ nconnections: '1'
+ size: '2048'
+ 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: [284.0, 808]
+ rotation: 90
+ state: enabled
+- name: qtgui_const_sink_x_1_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: 'plots@0: 1,1,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: '"Equalized"'
+ 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: [1012.0, 768]
+ rotation: 90
+ state: true
+- name: qtgui_const_sink_x_2
+ 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: 'plots@0: 1,2,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: '"Locked"'
+ 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: [1380.0, 720]
+ rotation: 90
+ state: true
+- name: qtgui_eye_sink_x_0
+ id: qtgui_eye_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: blue
+ color2: blue
+ color3: blue
+ color4: blue
+ color5: blue
+ color6: blue
+ color7: blue
+ color8: blue
+ color9: blue
+ 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: '1'
+ samp_per_symbol: sps
+ size: '1024'
+ srate: samp_rate
+ 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: Amplitude
+ ymax: '1'
+ ymin: '-1'
+ yunit: '""'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1352, 172.0]
+ rotation: 0
+ state: true
+- name: qtgui_eye_sink_x_1
+ id: qtgui_eye_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: blue
+ color2: blue
+ color3: blue
+ color4: blue
+ color5: blue
+ color6: blue
+ color7: blue
+ color8: blue
+ color9: blue
+ comment: ''
+ ctrlpanel: 'False'
+ entags: 'True'
+ grid: 'False'
+ gui_hint: 'plots@3: 1,0,1,1'
+ 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: '1'
+ samp_per_symbol: sps
+ size: '1024'
+ srate: samp_rate
+ 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: Amplitude
+ ymax: '1'
+ ymin: '-1'
+ yunit: '""'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1840, 1028.0]
+ rotation: 0
+ state: true
+- 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: '1024'
+ freqhalf: 'True'
+ grid: 'False'
+ gui_hint: 'plots@1: 0,0,1,1'
+ label: Relative Gain
+ label1: ''
+ label10: ''''''
+ label2: ''''''
+ label3: ''''''
+ label4: ''''''
+ label5: ''''''
+ label6: ''''''
+ label7: ''''''
+ label8: ''''''
+ label9: ''''''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: '"Modulated (TX)"'
+ nconnections: '1'
+ 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: firdes.WIN_BLACKMAN_hARRIS
+ ymax: '10'
+ ymin: '-140'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1144.0, 488]
+ rotation: 270
+ state: enabled
+- name: qtgui_freq_sink_x_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: '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: '1024'
+ freqhalf: 'True'
+ grid: 'False'
+ gui_hint: 'plots@1: 0,2,1,1'
+ label: Relative Gain
+ label1: ''
+ label10: ''''''
+ label2: ''''''
+ label3: ''''''
+ label4: ''''''
+ label5: ''''''
+ label6: ''''''
+ label7: ''''''
+ label8: ''''''
+ label9: ''''''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: '"Synchronized and filtered"'
+ nconnections: '1'
+ 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: firdes.WIN_BLACKMAN_hARRIS
+ ymax: '10'
+ ymin: '-140'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [704.0, 1160]
+ rotation: 270
+ state: enabled
+- name: qtgui_freq_sink_x_1_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: '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: '1024'
+ freqhalf: 'True'
+ grid: 'False'
+ gui_hint: 'plots@1: 0,1,1,1'
+ label: Relative Gain
+ label1: ''
+ label10: ''''''
+ label2: ''''''
+ label3: ''''''
+ label4: ''''''
+ label5: ''''''
+ label6: ''''''
+ label7: ''''''
+ label8: ''''''
+ label9: ''''''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: '"Received"'
+ nconnections: '1'
+ 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: firdes.WIN_BLACKMAN_hARRIS
+ ymax: '10'
+ ymin: '-140'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [296.0, 1216]
+ rotation: 270
+ state: enabled
+- name: qtgui_freq_sink_x_1_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: '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: '1024'
+ freqhalf: 'True'
+ grid: 'False'
+ gui_hint: 'plots@1: 1,1,1,1'
+ label: Relative Gain
+ label1: ''
+ label10: ''''''
+ label2: ''''''
+ label3: ''''''
+ label4: ''''''
+ label5: ''''''
+ label6: ''''''
+ label7: ''''''
+ label8: ''''''
+ label9: ''''''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: '"Equalized"'
+ nconnections: '1'
+ 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: firdes.WIN_BLACKMAN_hARRIS
+ ymax: '10'
+ ymin: '-140'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1032.0, 1176]
+ rotation: 270
+ state: enabled
+- name: qtgui_freq_sink_x_1_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: '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: '1024'
+ freqhalf: 'True'
+ grid: 'False'
+ gui_hint: 'plots@1: 1,2,1,1'
+ label: Relative Gain
+ label1: ''
+ label10: ''''''
+ label2: ''''''
+ label3: ''''''
+ label4: ''''''
+ label5: ''''''
+ label6: ''''''
+ label7: ''''''
+ label8: ''''''
+ label9: ''''''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: '"Locked"'
+ nconnections: '1'
+ 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: firdes.WIN_BLACKMAN_hARRIS
+ ymax: '10'
+ ymin: '-140'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1456.0, 1128]
+ rotation: 270
+ state: enabled
+- name: qtgui_histogram_sink_x_0
+ id: qtgui_histogram_sink_x
+ parameters:
+ accum: 'False'
+ 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'
+ bins: '20'
+ color1: '"blue"'
+ color10: '"dark blue"'
+ color2: '"red"'
+ color3: '"green"'
+ color4: '"black"'
+ color5: '"cyan"'
+ color6: '"magenta"'
+ color7: '"yellow"'
+ color8: '"dark red"'
+ color9: '"dark green"'
+ comment: ''
+ grid: 'False'
+ gui_hint: 'plots@3: 0,0,1,1'
+ label1: ''
+ label10: ''
+ label2: ''
+ label3: ''
+ label4: ''
+ label5: ''
+ label6: ''
+ label7: ''
+ label8: ''
+ label9: ''
+ legend: 'True'
+ marker1: '-1'
+ marker10: '-1'
+ marker2: '-1'
+ marker3: '-1'
+ marker4: '-1'
+ marker5: '-1'
+ marker6: '-1'
+ marker7: '-1'
+ marker8: '-1'
+ marker9: '-1'
+ name: '"Sent"'
+ nconnections: '1'
+ size: 1024*4
+ style1: '1'
+ style10: '1'
+ style2: '1'
+ style3: '1'
+ style4: '1'
+ style5: '1'
+ style6: '1'
+ style7: '1'
+ style8: '1'
+ style9: '1'
+ 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'
+ xmax: '1'
+ xmin: '-1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [912, 60.0]
+ rotation: 0
+ state: disabled
+- name: qtgui_time_raster_sink_x_0
+ id: qtgui_time_raster_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'
+ axislabels: 'True'
+ color1: '0'
+ color10: '0'
+ color2: '0'
+ color3: '0'
+ color4: '0'
+ color5: '0'
+ color6: '0'
+ color7: '0'
+ color8: '0'
+ color9: '0'
+ comment: ''
+ grid: 'False'
+ gui_hint: 'plots@3: 1,0,1,1'
+ label1: ''
+ label10: ''
+ label2: ''
+ label3: ''
+ label4: ''
+ label5: ''
+ label6: ''
+ label7: ''
+ label8: ''
+ label9: ''
+ mult: '[]'
+ name: '""'
+ ncols: '256'
+ nconnections: '1'
+ nrows: '256'
+ offset: '[]'
+ samp_rate: samp_rate
+ type: byte
+ update_time: '0.10'
+ zmax: '1'
+ zmin: '-1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1832, 852.0]
+ rotation: 0
+ state: disabled
+- name: qtgui_time_sink_x_2
+ 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: 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: 'False'
+ grid: 'False'
+ gui_hint: 'plots@2: 0,0,1,1'
+ 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: '"Modulated (TX)"'
+ nconnections: '1'
+ 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: 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: Amplitude
+ ymax: '1'
+ ymin: '-1'
+ yunit: '""'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1276.0, 488]
+ rotation: 270
+ state: enabled
+- name: qtgui_time_sink_x_2_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: 'True'
+ 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: 'False'
+ grid: 'False'
+ gui_hint: 'plots@2: 1,0,1,1'
+ 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: '"Received (RX)"'
+ nconnections: '1'
+ 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: 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: Amplitude
+ ymax: '1'
+ ymin: '-1'
+ yunit: '""'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [1572.0, 1128]
+ rotation: 270
+ state: enabled
+- name: uhd_usrp_sink_0
+ id: uhd_usrp_sink
+ parameters:
+ affinity: ''
+ alias: ''
+ ant0: TX/RX
+ ant1: TX/RX
+ ant10: TX/RX
+ ant11: TX/RX
+ ant12: TX/RX
+ ant13: TX/RX
+ ant14: TX/RX
+ ant15: TX/RX
+ ant16: TX/RX
+ ant17: TX/RX
+ ant18: TX/RX
+ ant19: TX/RX
+ ant2: TX/RX
+ ant20: TX/RX
+ ant21: TX/RX
+ ant22: TX/RX
+ ant23: TX/RX
+ ant24: TX/RX
+ ant25: TX/RX
+ ant26: TX/RX
+ ant27: TX/RX
+ ant28: TX/RX
+ ant29: TX/RX
+ ant3: TX/RX
+ ant30: TX/RX
+ ant31: TX/RX
+ ant4: TX/RX
+ ant5: TX/RX
+ ant6: TX/RX
+ ant7: TX/RX
+ ant8: TX/RX
+ ant9: TX/RX
+ 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'
+ center_freq0: 2.4e9
+ 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: external
+ clock_source1: ''
+ clock_source2: ''
+ clock_source3: ''
+ clock_source4: ''
+ clock_source5: ''
+ clock_source6: ''
+ clock_source7: ''
+ comment: ''
+ dev_addr: '"serial=309AF59 "'
+ dev_args: '""'
+ gain0: '0.35'
+ 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'
+ len_tag_name: ''
+ 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'
+ norm_gain0: 'True'
+ norm_gain1: 'False'
+ norm_gain10: 'False'
+ norm_gain11: 'False'
+ norm_gain12: 'False'
+ norm_gain13: 'False'
+ norm_gain14: 'False'
+ norm_gain15: 'False'
+ norm_gain16: 'False'
+ norm_gain17: 'False'
+ norm_gain18: 'False'
+ norm_gain19: 'False'
+ norm_gain2: 'False'
+ norm_gain20: 'False'
+ norm_gain21: 'False'
+ norm_gain22: 'False'
+ norm_gain23: 'False'
+ norm_gain24: 'False'
+ norm_gain25: 'False'
+ norm_gain26: 'False'
+ norm_gain27: 'False'
+ norm_gain28: 'False'
+ norm_gain29: 'False'
+ norm_gain3: 'False'
+ norm_gain30: 'False'
+ norm_gain31: 'False'
+ norm_gain4: 'False'
+ norm_gain5: 'False'
+ norm_gain6: 'False'
+ norm_gain7: 'False'
+ norm_gain8: 'False'
+ norm_gain9: 'False'
+ num_mboards: '1'
+ otw: ''
+ 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: sync
+ 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: [1384, 268.0]
+ rotation: 0
+ state: true
+- name: uhd_usrp_source_0
+ id: uhd_usrp_source
+ parameters:
+ affinity: ''
+ alias: ''
+ ant0: RX2
+ 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: '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'
+ center_freq0: 2.4e9
+ 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: external
+ clock_source1: ''
+ clock_source2: ''
+ clock_source3: ''
+ clock_source4: ''
+ clock_source5: ''
+ clock_source6: ''
+ clock_source7: ''
+ comment: ''
+ dc_offs_enb0: '""'
+ dc_offs_enb1: '""'
+ dc_offs_enb10: '""'
+ dc_offs_enb11: '""'
+ dc_offs_enb12: '""'
+ dc_offs_enb13: '""'
+ dc_offs_enb14: '""'
+ dc_offs_enb15: '""'
+ dc_offs_enb16: '""'
+ dc_offs_enb17: '""'
+ dc_offs_enb18: '""'
+ dc_offs_enb19: '""'
+ dc_offs_enb2: '""'
+ dc_offs_enb20: '""'
+ dc_offs_enb21: '""'
+ dc_offs_enb22: '""'
+ dc_offs_enb23: '""'
+ dc_offs_enb24: '""'
+ dc_offs_enb25: '""'
+ dc_offs_enb26: '""'
+ dc_offs_enb27: '""'
+ dc_offs_enb28: '""'
+ dc_offs_enb29: '""'
+ dc_offs_enb3: '""'
+ dc_offs_enb30: '""'
+ dc_offs_enb31: '""'
+ dc_offs_enb4: '""'
+ dc_offs_enb5: '""'
+ dc_offs_enb6: '""'
+ dc_offs_enb7: '""'
+ dc_offs_enb8: '""'
+ dc_offs_enb9: '""'
+ dev_addr: '"serial=309AF6A "'
+ dev_args: '""'
+ gain0: '0.6'
+ 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'
+ iq_imbal_enb0: '""'
+ iq_imbal_enb1: '""'
+ iq_imbal_enb10: '""'
+ iq_imbal_enb11: '""'
+ iq_imbal_enb12: '""'
+ iq_imbal_enb13: '""'
+ iq_imbal_enb14: '""'
+ iq_imbal_enb15: '""'
+ iq_imbal_enb16: '""'
+ iq_imbal_enb17: '""'
+ iq_imbal_enb18: '""'
+ iq_imbal_enb19: '""'
+ iq_imbal_enb2: '""'
+ iq_imbal_enb20: '""'
+ iq_imbal_enb21: '""'
+ iq_imbal_enb22: '""'
+ iq_imbal_enb23: '""'
+ iq_imbal_enb24: '""'
+ iq_imbal_enb25: '""'
+ iq_imbal_enb26: '""'
+ iq_imbal_enb27: '""'
+ iq_imbal_enb28: '""'
+ iq_imbal_enb29: '""'
+ iq_imbal_enb3: '""'
+ iq_imbal_enb30: '""'
+ iq_imbal_enb31: '""'
+ iq_imbal_enb4: '""'
+ iq_imbal_enb5: '""'
+ iq_imbal_enb6: '""'
+ iq_imbal_enb7: '""'
+ iq_imbal_enb8: '""'
+ iq_imbal_enb9: '""'
+ 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'
+ norm_gain0: 'True'
+ norm_gain1: 'False'
+ norm_gain10: 'False'
+ norm_gain11: 'False'
+ norm_gain12: 'False'
+ norm_gain13: 'False'
+ norm_gain14: 'False'
+ norm_gain15: 'False'
+ norm_gain16: 'False'
+ norm_gain17: 'False'
+ norm_gain18: 'False'
+ norm_gain19: 'False'
+ norm_gain2: 'False'
+ norm_gain20: 'False'
+ norm_gain21: 'False'
+ norm_gain22: 'False'
+ norm_gain23: 'False'
+ norm_gain24: 'False'
+ norm_gain25: 'False'
+ norm_gain26: 'False'
+ norm_gain27: 'False'
+ norm_gain28: 'False'
+ norm_gain29: 'False'
+ norm_gain3: 'False'
+ norm_gain30: 'False'
+ norm_gain31: 'False'
+ norm_gain4: 'False'
+ norm_gain5: 'False'
+ norm_gain6: 'False'
+ norm_gain7: 'False'
+ norm_gain8: 'False'
+ norm_gain9: 'False'
+ 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: sync
+ 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: [88, 1004.0]
+ rotation: 0
+ state: true
+
+connections:
+- [blocks_file_source_0, '0', blocks_uchar_to_float_0, '0']
+- [blocks_file_source_0, '0', digital_constellation_modulator_0, '0']
+- [blocks_uchar_to_float_0, '0', qtgui_histogram_sink_x_0, '0']
+- [blocks_vector_source_x_0, '0', blocks_uchar_to_float_0, '0']
+- [blocks_vector_source_x_0, '0', digital_constellation_modulator_0, '0']
+- [digital_cma_equalizer_cc_0, '0', digital_costas_loop_cc_0, '0']
+- [digital_cma_equalizer_cc_0, '0', qtgui_const_sink_x_1_0, '0']
+- [digital_cma_equalizer_cc_0, '0', qtgui_freq_sink_x_1_0_1, '0']
+- [digital_constellation_decoder_cb_0, '0', digital_diff_decoder_bb_0, '0']
+- [digital_constellation_modulator_0, '0', qtgui_const_sink_x_0, '0']
+- [digital_constellation_modulator_0, '0', qtgui_eye_sink_x_0, '0']
+- [digital_constellation_modulator_0, '0', qtgui_freq_sink_x_1, '0']
+- [digital_constellation_modulator_0, '0', qtgui_time_sink_x_2, '0']
+- [digital_constellation_modulator_0, '0', uhd_usrp_sink_0, '0']
+- [digital_costas_loop_cc_0, '0', digital_constellation_decoder_cb_0, '0']
+- [digital_costas_loop_cc_0, '0', qtgui_const_sink_x_2, '0']
+- [digital_costas_loop_cc_0, '0', qtgui_eye_sink_x_1, '0']
+- [digital_costas_loop_cc_0, '0', qtgui_freq_sink_x_1_0_1_0, '0']
+- [digital_costas_loop_cc_0, '0', qtgui_time_sink_x_2_0_0, '0']
+- [digital_diff_decoder_bb_0, '0', digital_map_bb_0, '0']
+- [digital_map_bb_0, '0', blocks_file_sink_0, '0']
+- [digital_map_bb_0, '0', blocks_null_sink_0, '0']
+- [digital_map_bb_0, '0', qtgui_time_raster_sink_x_0, '0']
+- [digital_pfb_clock_sync_xxx_0, '0', digital_cma_equalizer_cc_0, '0']
+- [digital_pfb_clock_sync_xxx_0, '0', qtgui_const_sink_x_0_0, '0']
+- [digital_pfb_clock_sync_xxx_0, '0', qtgui_freq_sink_x_1_0, '0']
+- [uhd_usrp_source_0, '0', digital_pfb_clock_sync_xxx_0, '0']
+- [uhd_usrp_source_0, '0', qtgui_const_sink_x_0_0_0, '0']
+- [uhd_usrp_source_0, '0', qtgui_freq_sink_x_1_0_0, '0']
+
+metadata:
+ file_format: 1
diff --git a/notebooks/Fading.ipynb b/notebooks/Fading.ipynb
index e320893..b7618cd 100644
--- a/notebooks/Fading.ipynb
+++ b/notebooks/Fading.ipynb
@@ -30,7 +30,7 @@
{
"data": {
"text/plain": [
- "<matplotlib.collections.PathCollection at 0x7f16d0427e20>"
+ "<matplotlib.collections.PathCollection at 0x7efdc8f89f10>"
]
},
"execution_count": 2,
@@ -39,7 +39,7 @@
},
{
"data": {
- "image/png": "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\n",
+ "image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
@@ -82,6 +82,14 @@
"fig = plt.figure()\n",
"plt.scatter(sig_fading.real, sig_fading.imag)"
]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "db9b381c",
+ "metadata": {},
+ "outputs": [],
+ "source": []
}
],
"metadata": {
diff --git a/notebooks/Untitled.ipynb b/notebooks/Untitled.ipynb
new file mode 100644
index 0000000..6350dc3
--- /dev/null
+++ b/notebooks/Untitled.ipynb
@@ -0,0 +1,233 @@
+{
+ "cells": [
+ {
+ "cell_type": "code",
+ "execution_count": 1,
+ "id": "6b0e891f",
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import numpy as np \n",
+ "from numpy.fft import fft,ifft,fftshift\n",
+ "import matplotlib.pyplot as plt"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 2,
+ "id": "f7878dca",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([-4, -3, -2, -1, 0, 1, 2, 3])"
+ ]
+ },
+ "execution_count": 2,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "tau = 1\n",
+ "freq = np.arange(-4,4)\n",
+ "freq"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "id": "6b5000a6",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([1.-9.79717439e-16j, 1.-7.34788079e-16j, 1.-4.89858720e-16j,\n",
+ " 1.-2.44929360e-16j, 1.+0.00000000e+00j, 1.+2.44929360e-16j,\n",
+ " 1.+4.89858720e-16j, 1.+7.34788079e-16j])"
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "f_tabs = np.exp((-2j*np.pi*freq*tau))\n",
+ "f_tabs"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 4,
+ "id": "54df500d",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "<Figure size 432x288 with 1 Axes>"
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.plot(f_tabs.real)\n",
+ "plt.plot(f_tabs.imag)\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "id": "bffc82f4",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "array([ 1.00000000e+00-1.2246468e-16j, -2.95655891e-16+1.2246468e-16j,\n",
+ " 1.22464680e-16-1.2246468e-16j, -5.07265313e-17+1.2246468e-16j,\n",
+ " 0.00000000e+00-1.2246468e-16j, 5.07265313e-17+1.2246468e-16j,\n",
+ " -1.22464680e-16-1.2246468e-16j, 2.95655891e-16+1.2246468e-16j])"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "i_tabs = ifft(fftshift(f_tabs))\n",
+ "i_tabs"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 6,
+ "id": "12ff730b",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "<Figure size 432x288 with 1 Axes>"
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "shiftet= fftshift(f_tabs)\n",
+ "plt.plot(shiftet.real)\n",
+ "plt.plot(shiftet.imag)\n",
+ "plt.show()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 7,
+ "id": "a075dd24",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "image/png": "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\n",
+ "text/plain": [
+ "<Figure size 432x288 with 1 Axes>"
+ ]
+ },
+ "metadata": {
+ "needs_background": "light"
+ },
+ "output_type": "display_data"
+ }
+ ],
+ "source": [
+ "plt.plot(i_tabs.real)\n",
+ "plt.plot(i_tabs.imag)\n",
+ "plt.show()\n"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "92311556",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ },
+ {
+ "cell_type": "markdown",
+ "id": "4c190dbf",
+ "metadata": {},
+ "source": [
+ "# Delay as a Convolution System"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "id": "0929e51c",
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "[0, 0, 0, 1]"
+ ]
+ },
+ "execution_count": 8,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "# Create the FIR\n",
+ "D = 3 # Delay value\n",
+ "h = [0]*D+[1]\n",
+ "h"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": null,
+ "id": "1b8438b2",
+ "metadata": {},
+ "outputs": [],
+ "source": []
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3 (ipykernel)",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.9.2"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
diff --git a/simulation/QAM/qam_nogui.grc b/simulation/QAM/qam_nogui.grc
index cfbed6d..037c20f 100644
--- a/simulation/QAM/qam_nogui.grc
+++ b/simulation/QAM/qam_nogui.grc
@@ -59,7 +59,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [224, 604.0]
+ coordinate: [224, 436.0]
rotation: 0
state: true
- name: eq_gain
@@ -194,27 +194,6 @@ blocks:
coordinate: [1640, 428.0]
rotation: 0
state: true
-- name: qam_const
- id: variable_constellation_rect
- parameters:
- comment: ''
- const_points: '[(-3-3j), (-1-3j), (1-3j), (3-3j), (-3-1j), (-1-1j), (1-1j), (3-1j),
- (-3+1j), (-1+1j), (1+1j), (3+1j), (-3+3j), (-1+3j), (1+3j), (3+3j)]'
- imag_sect: '1'
- precision: '4'
- real_sect: '1'
- rot_sym: '4'
- soft_dec_lut: None
- sym_map: '[0, 4, 12, 8, 1, 5, 13, 9, 3, 7, 15, 11, 2, 6, 14, 10]'
- w_imag_sect: '1'
- w_real_sect: '1'
- states:
- bus_sink: false
- bus_source: false
- bus_structure: null
- coordinate: [224, 436.0]
- rotation: 0
- state: true
- name: rrc_taps
id: variable
parameters:
@@ -366,6 +345,24 @@ blocks:
coordinate: [2264, 844.0]
rotation: 0
state: true
+- name: blocks_file_sink_0
+ id: blocks_file_sink
+ parameters:
+ affinity: ''
+ alias: ''
+ append: 'False'
+ comment: ''
+ file: /home/sara/Documents/Fading/doc/thesis/figures/data/SImulation
+ type: float
+ unbuffered: 'False'
+ vlen: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [2432, 108.0]
+ rotation: 0
+ state: disabled
- name: blocks_throttle_0
id: blocks_throttle
parameters:
@@ -1184,6 +1181,7 @@ blocks:
connections:
- [analog_random_source_x_0, '0', blocks_unpack_k_bits_bb_0_0, '0']
- [analog_random_source_x_0, '0', digital_constellation_modulator_0, '0']
+- [blocks_char_to_float_0, '0', blocks_file_sink_0, '0']
- [blocks_char_to_float_0, '0', qtgui_time_sink_x_0, '0']
- [blocks_char_to_float_0_0, '0', blocks_delay_0, '0']
- [blocks_delay_0, '0', qtgui_time_sink_x_0, '1']
diff --git a/simulation/QAM_Fading/qam_fading.py b/simulation/QAM_Fading/qam_fading.py
index a921443..01685a1 100755
--- a/simulation/QAM_Fading/qam_fading.py
+++ b/simulation/QAM_Fading/qam_fading.py
@@ -545,6 +545,8 @@ class qam_fading(gr.top_block, Qt.QWidget):
self.blocks_unpack_k_bits_bb_0_0 = blocks.unpack_k_bits_bb(2)
self.blocks_unpack_k_bits_bb_0 = blocks.unpack_k_bits_bb(2)
self.blocks_throttle_0 = blocks.throttle(gr.sizeof_gr_complex*1, samp_rate,True)
+ self.blocks_file_sink_0 = blocks.file_sink(gr.sizeof_float*1, '/home/sara/Documents/Fading/simulation/QAM_Fading/qam_fading_V2_output.grc', False)
+ self.blocks_file_sink_0.set_unbuffered(False)
self.blocks_delay_0 = blocks.delay(gr.sizeof_float*1, 50)
self.blocks_char_to_float_0_1 = blocks.char_to_float(1, 1)
self.blocks_char_to_float_0_0 = blocks.char_to_float(1, 1)
@@ -558,6 +560,7 @@ class qam_fading(gr.top_block, Qt.QWidget):
##################################################
self.connect((self.analog_random_source_x_0, 0), (self.blocks_unpack_k_bits_bb_0_0, 0))
self.connect((self.analog_random_source_x_0, 0), (self.digital_constellation_modulator_0, 0))
+ self.connect((self.blocks_char_to_float_0, 0), (self.blocks_file_sink_0, 0))
self.connect((self.blocks_char_to_float_0, 0), (self.qtgui_freq_sink_x_2_1, 0))
self.connect((self.blocks_char_to_float_0, 0), (self.qtgui_time_sink_x_0, 0))
self.connect((self.blocks_char_to_float_0_0, 0), (self.blocks_delay_0, 0))
diff --git a/simulation/QAM_Fading/qam_fading_FIR_Filter_v1.grc b/simulation/QAM_Fading/qam_fading_FIR_Filter_v1.grc
index 082e688..ffc47f6 100644
--- a/simulation/QAM_Fading/qam_fading_FIR_Filter_v1.grc
+++ b/simulation/QAM_Fading/qam_fading_FIR_Filter_v1.grc
@@ -459,7 +459,7 @@ blocks:
affinity: ''
alias: ''
comment: ''
- fDTs: 10.0/samp_rate
+ fDTs: '0'
maxoutbuf: '0'
minoutbuf: '0'
seed: '0'
@@ -467,7 +467,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [960, 332.0]
+ coordinate: [952, 332.0]
rotation: 0
state: true
- name: digital_cma_equalizer_cc_0
diff --git a/simulation/QAM_Fading/qam_fading_V2.grc b/simulation/QAM_Fading/qam_fading_V2.grc
index 7f2014b..2f61a71 100644
--- a/simulation/QAM_Fading/qam_fading_V2.grc
+++ b/simulation/QAM_Fading/qam_fading_V2.grc
@@ -425,6 +425,24 @@ blocks:
coordinate: [2736, 1360.0]
rotation: 0
state: true
+- name: blocks_file_sink_0
+ id: blocks_file_sink
+ parameters:
+ affinity: ''
+ alias: ''
+ append: 'False'
+ comment: ''
+ file: /home/sara/Documents/Fading/simulation/QAM_Fading/qam_fading_V2_output.grc
+ type: float
+ unbuffered: 'False'
+ vlen: '1'
+ states:
+ bus_sink: false
+ bus_source: false
+ bus_structure: null
+ coordinate: [2880, 84.0]
+ rotation: 0
+ state: disabled
- name: blocks_throttle_0
id: blocks_throttle
parameters:
@@ -779,7 +797,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [1032, 348.0]
+ coordinate: [1024, 340.0]
rotation: 0
state: enabled
- name: params
@@ -1479,6 +1497,7 @@ blocks:
connections:
- [analog_random_source_x_0, '0', blocks_unpack_k_bits_bb_0_0, '0']
- [analog_random_source_x_0, '0', digital_constellation_modulator_0, '0']
+- [blocks_char_to_float_0, '0', blocks_file_sink_0, '0']
- [blocks_char_to_float_0, '0', qtgui_freq_sink_x_2_1, '0']
- [blocks_char_to_float_0, '0', qtgui_time_sink_x_0, '0']
- [blocks_char_to_float_0_0, '0', blocks_delay_0, '0']
diff --git a/simulation/QAM_Fading/qam_fading_frequency_selectiv_copy.grc b/simulation/QAM_Fading/qam_fading_frequency_selectiv_copy.grc
index 2a5bafb..18f7893 100644
--- a/simulation/QAM_Fading/qam_fading_frequency_selectiv_copy.grc
+++ b/simulation/QAM_Fading/qam_fading_frequency_selectiv_copy.grc
@@ -54,7 +54,7 @@ blocks:
rot_sym: '4'
soft_dec_lut: None
sym_map: '[0, 1, 3, 2]'
- type: qpsk
+ type: 16qam
states:
bus_sink: false
bus_source: false
@@ -453,24 +453,24 @@ blocks:
- name: channels_selective_fading_model_0
id: channels_selective_fading_model
parameters:
- K: '4.0'
+ K: '1.0'
LOS: 'False'
N: '8'
affinity: ''
alias: ''
comment: ''
- delays: (0.0,0.1,1.3)
- fDTs: 10.0/samp_rate
- mags: (1,0.99,0.97)
+ delays: (0,7)
+ fDTs: '0'
+ mags: (1,0.2)
maxoutbuf: '0'
minoutbuf: '0'
- ntaps: '8'
+ ntaps: '1'
seed: '0'
states:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [912, 308.0]
+ coordinate: [960, 308.0]
rotation: 0
state: true
- name: digital_cma_equalizer_cc_0
@@ -700,7 +700,7 @@ blocks:
maxoutbuf: '0'
minoutbuf: '0'
osps: '1'
- sps: sps * 1.001
+ sps: 'sps '
taps: rrc_taps
type: ccf
states:
@@ -867,7 +867,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [1044.0, -48]
+ coordinate: [1036.0, -64]
rotation: 90
state: enabled
- name: qtgui_const_sink_x_0_0
@@ -1223,7 +1223,7 @@ blocks:
bus_sink: false
bus_source: false
bus_structure: null
- coordinate: [1144.0, 568]
+ coordinate: [1080.0, 656]
rotation: 270
state: true
- name: qtgui_freq_sink_x_2_1
@@ -1305,7 +1305,7 @@ blocks:
bus_structure: null
coordinate: [2848, 488.0]
rotation: 0
- state: true
+ state: disabled
- name: qtgui_time_sink_x_0
id: qtgui_time_sink_x
parameters:
@@ -1421,6 +1421,9 @@ connections:
- [channels_channel_model_0, '0', digital_pfb_clock_sync_xxx_0_0, '0']
- [channels_channel_model_0, '0', qtgui_const_sink_x_0, '1']
- [channels_channel_model_0, '0', qtgui_freq_sink_x_0, '1']
+- [channels_selective_fading_model_0, '0', digital_pfb_clock_sync_xxx_0, '0']
+- [channels_selective_fading_model_0, '0', qtgui_const_sink_x_0, '0']
+- [channels_selective_fading_model_0, '0', qtgui_freq_sink_x_0, '0']
- [digital_cma_equalizer_cc_0, '0', digital_costas_loop_cc_0, '0']
- [digital_cma_equalizer_cc_0, '0', qtgui_const_sink_x_1, '0']
- [digital_cma_equalizer_cc_0_0, '0', digital_costas_loop_cc_0_0, '0']