summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gr-digital/examples/ofdm/ofdm_loopback.grc1825
-rw-r--r--gr-digital/examples/ofdm/rx_ofdm.grc2726
-rw-r--r--gr-digital/examples/ofdm/tx_ofdm.grc3329
-rw-r--r--gr-digital/grc/digital_header_payload_demux.block.yml8
-rw-r--r--gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml2
-rw-r--r--gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml2
-rw-r--r--gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml2
-rw-r--r--gr-digital/grc/digital_ofdm_serializer_vcc.block.yml2
8 files changed, 1878 insertions, 6018 deletions
diff --git a/gr-digital/examples/ofdm/ofdm_loopback.grc b/gr-digital/examples/ofdm/ofdm_loopback.grc
index fbb26cae92..5d77187a92 100644
--- a/gr-digital/examples/ofdm/ofdm_loopback.grc
+++ b/gr-digital/examples/ofdm/ofdm_loopback.grc
@@ -1,1393 +1,432 @@
-<?xml version='1.0' encoding='ASCII'?>
-<flow_graph>
- <timestamp>Wed Jul 9 15:53:31 2014</timestamp>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>len_tag_key</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"packet_len"</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(283, 6)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>100000</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(493, 7)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>64</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(403, 8)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>50</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(182, 6)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_vector_source_x</key>
- <param>
- <key>id</key>
- <value>blocks_vector_source_x_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vector</key>
- <value>range(packet_len)</value>
- </param>
- <param>
- <key>tags</key>
- <value>()</value>
- </param>
- <param>
- <key>repeat</key>
- <value>True</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(5, 124)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_tag_debug</key>
- <param>
- <key>id</key>
- <value>blocks_tag_debug_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>name</key>
- <value>Rx Packets</value>
- </param>
- <param>
- <key>filter</key>
- <value>""</value>
- </param>
- <param>
- <key>num_inputs</key>
- <value>1</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>display</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(325, 483)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_stream_to_tagged_stream</key>
- <param>
- <key>id</key>
- <value>blocks_stream_to_tagged_stream_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>packet_len</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>len_tag_key</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(282, 132)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_rx</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_rx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>packet_len_key</key>
- <value>"rx_len"</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>()</value>
- </param>
- <param>
- <key>pilot_carriers</key>
- <value>()</value>
- </param>
- <param>
- <key>pilot_symbols</key>
- <value>()</value>
- </param>
- <param>
- <key>sync_word1</key>
- <value>()</value>
- </param>
- <param>
- <key>sync_word2</key>
- <value>()</value>
- </param>
- <param>
- <key>header_mod</key>
- <value>"BPSK"</value>
- </param>
- <param>
- <key>payload_mod</key>
- <value>"QPSK"</value>
- </param>
- <param>
- <key>scramble_bits</key>
- <value>False</value>
- </param>
- <param>
- <key>log</key>
- <value>False</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(52, 374)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_tx</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_tx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>packet_len_key</key>
- <value>len_tag_key</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>()</value>
- </param>
- <param>
- <key>pilot_carriers</key>
- <value>()</value>
- </param>
- <param>
- <key>pilot_symbols</key>
- <value>()</value>
- </param>
- <param>
- <key>sync_word1</key>
- <value>()</value>
- </param>
- <param>
- <key>sync_word2</key>
- <value>()</value>
- </param>
- <param>
- <key>header_mod</key>
- <value>"BPSK"</value>
- </param>
- <param>
- <key>payload_mod</key>
- <value>"QPSK"</value>
- </param>
- <param>
- <key>rolloff</key>
- <value>0</value>
- </param>
- <param>
- <key>scramble_bits</key>
- <value>False</value>
- </param>
- <param>
- <key>log</key>
- <value>False</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(557, 94)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>channels_channel_model</key>
- <param>
- <key>id</key>
- <value>channels_channel_model_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>noise_voltage</key>
- <value>noise_voltage</value>
- </param>
- <param>
- <key>freq_offset</key>
- <value>freq_offset * 1.0/fft_len</value>
- </param>
- <param>
- <key>epsilon</key>
- <value>1.0</value>
- </param>
- <param>
- <key>taps</key>
- <value>1.0 + 1.0j</value>
- </param>
- <param>
- <key>seed</key>
- <value>0</value>
- </param>
- <param>
- <key>block_tags</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(453, 244)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>blocks_throttle</key>
- <param>
- <key>id</key>
- <value>blocks_throttle_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>ignoretag</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(177, 281)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>qtgui_freq_sink_x</key>
- <param>
- <key>id</key>
- <value>qtgui_freq_sink_x_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>name</key>
- <value>Rx Spectrum</value>
- </param>
- <param>
- <key>fftsize</key>
- <value>1024</value>
- </param>
- <param>
- <key>wintype</key>
- <value>firdes.WIN_BLACKMAN_hARRIS</value>
- </param>
- <param>
- <key>fc</key>
- <value>0</value>
- </param>
- <param>
- <key>bw</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>autoscale</key>
- <value>False</value>
- </param>
- <param>
- <key>average</key>
- <value>1.0</value>
- </param>
- <param>
- <key>ymin</key>
- <value>-140</value>
- </param>
- <param>
- <key>ymax</key>
- <value>10</value>
- </param>
- <param>
- <key>nconnections</key>
- <value>1</value>
- </param>
- <param>
- <key>update_time</key>
- <value>0.10</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>label1</key>
- <value>Rx Spectrum</value>
- </param>
- <param>
- <key>width1</key>
- <value>1</value>
- </param>
- <param>
- <key>color1</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>alpha1</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label2</key>
- <value></value>
- </param>
- <param>
- <key>width2</key>
- <value>1</value>
- </param>
- <param>
- <key>color2</key>
- <value>"red"</value>
- </param>
- <param>
- <key>alpha2</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label3</key>
- <value></value>
- </param>
- <param>
- <key>width3</key>
- <value>1</value>
- </param>
- <param>
- <key>color3</key>
- <value>"green"</value>
- </param>
- <param>
- <key>alpha3</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label4</key>
- <value></value>
- </param>
- <param>
- <key>width4</key>
- <value>1</value>
- </param>
- <param>
- <key>color4</key>
- <value>"black"</value>
- </param>
- <param>
- <key>alpha4</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label5</key>
- <value></value>
- </param>
- <param>
- <key>width5</key>
- <value>1</value>
- </param>
- <param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label6</key>
- <value></value>
- </param>
- <param>
- <key>width6</key>
- <value>1</value>
- </param>
- <param>
- <key>color6</key>
- <value>"magenta"</value>
- </param>
- <param>
- <key>alpha6</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label7</key>
- <value></value>
- </param>
- <param>
- <key>width7</key>
- <value>1</value>
- </param>
- <param>
- <key>color7</key>
- <value>"yellow"</value>
- </param>
- <param>
- <key>alpha7</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label8</key>
- <value></value>
- </param>
- <param>
- <key>width8</key>
- <value>1</value>
- </param>
- <param>
- <key>color8</key>
- <value>"dark red"</value>
- </param>
- <param>
- <key>alpha8</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label9</key>
- <value></value>
- </param>
- <param>
- <key>width9</key>
- <value>1</value>
- </param>
- <param>
- <key>color9</key>
- <value>"dark green"</value>
- </param>
- <param>
- <key>alpha9</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label10</key>
- <value></value>
- </param>
- <param>
- <key>width10</key>
- <value>1</value>
- </param>
- <param>
- <key>color10</key>
- <value>"dark blue"</value>
- </param>
- <param>
- <key>alpha10</key>
- <value>1.0</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(52, 527)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable_qtgui_range</key>
- <param>
- <key>id</key>
- <value>freq_offset</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>label</key>
- <value>Frequency Offset (Multiples of Sub-carrier spacing)</value>
- </param>
- <param>
- <key>value</key>
- <value>0</value>
- </param>
- <param>
- <key>start</key>
- <value>-3</value>
- </param>
- <param>
- <key>stop</key>
- <value>3</value>
- </param>
- <param>
- <key>step</key>
- <value>.01</value>
- </param>
- <param>
- <key>widget</key>
- <value>counter_slider</value>
- </param>
- <param>
- <key>orient</key>
- <value>Qt.Horizontal</value>
- </param>
- <param>
- <key>min_len</key>
- <value>200</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(458, 518)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable_qtgui_range</key>
- <param>
- <key>id</key>
- <value>noise_voltage</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>label</key>
- <value>Noise Amplitude</value>
- </param>
- <param>
- <key>value</key>
- <value>0.1</value>
- </param>
- <param>
- <key>start</key>
- <value>0</value>
- </param>
- <param>
- <key>stop</key>
- <value>1</value>
- </param>
- <param>
- <key>step</key>
- <value>.01</value>
- </param>
- <param>
- <key>widget</key>
- <value>counter_slider</value>
- </param>
- <param>
- <key>orient</key>
- <value>Qt.Horizontal</value>
- </param>
- <param>
- <key>min_len</key>
- <value>200</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(652, 501)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>options</key>
- <param>
- <key>id</key>
- <value>ofdm_loopback_example</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>title</key>
- <value>OFDM Loopback Example</value>
- </param>
- <param>
- <key>author</key>
- <value></value>
- </param>
- <param>
- <key>description</key>
- <value>Transmit a pre-defined signal (a complex sine) as OFDM packets.</value>
- </param>
- <param>
- <key>window_size</key>
- <value>1280, 1024</value>
- </param>
- <param>
- <key>generate_options</key>
- <value>qt_gui</value>
- </param>
- <param>
- <key>category</key>
- <value>Custom</value>
- </param>
- <param>
- <key>run_options</key>
- <value>prompt</value>
- </param>
- <param>
- <key>run</key>
- <value>True</value>
- </param>
- <param>
- <key>max_nouts</key>
- <value>0</value>
- </param>
- <param>
- <key>realtime_scheduling</key>
- <value></value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, -1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_uchar_to_float</key>
- <param>
- <key>id</key>
- <value>blocks_uchar_to_float_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(326, 408)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>qtgui_time_sink_x</key>
- <param>
- <key>id</key>
- <value>qtgui_time_sink_x_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>float</value>
- </param>
- <param>
- <key>name</key>
- <value>Scope Plot</value>
- </param>
- <param>
- <key>size</key>
- <value>1024</value>
- </param>
- <param>
- <key>srate</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>autoscale</key>
- <value>True</value>
- </param>
- <param>
- <key>ymin</key>
- <value>-1</value>
- </param>
- <param>
- <key>ymax</key>
- <value>1</value>
- </param>
- <param>
- <key>nconnections</key>
- <value>1</value>
- </param>
- <param>
- <key>update_time</key>
- <value>0.10</value>
- </param>
- <param>
- <key>entags</key>
- <value>True</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>tr_mode</key>
- <value>qtgui.TRIG_MODE_FREE</value>
- </param>
- <param>
- <key>tr_slope</key>
- <value>qtgui.TRIG_SLOPE_POS</value>
- </param>
- <param>
- <key>tr_level</key>
- <value>0.0</value>
- </param>
- <param>
- <key>tr_delay</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_chan</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_tag</key>
- <value>""</value>
- </param>
- <param>
- <key>label1</key>
- <value></value>
- </param>
- <param>
- <key>width1</key>
- <value>1</value>
- </param>
- <param>
- <key>color1</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>style1</key>
- <value>1</value>
- </param>
- <param>
- <key>marker1</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha1</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label2</key>
- <value></value>
- </param>
- <param>
- <key>width2</key>
- <value>1</value>
- </param>
- <param>
- <key>color2</key>
- <value>"red"</value>
- </param>
- <param>
- <key>style2</key>
- <value>1</value>
- </param>
- <param>
- <key>marker2</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha2</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label3</key>
- <value></value>
- </param>
- <param>
- <key>width3</key>
- <value>1</value>
- </param>
- <param>
- <key>color3</key>
- <value>"green"</value>
- </param>
- <param>
- <key>style3</key>
- <value>1</value>
- </param>
- <param>
- <key>marker3</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha3</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label4</key>
- <value></value>
- </param>
- <param>
- <key>width4</key>
- <value>1</value>
- </param>
- <param>
- <key>color4</key>
- <value>"black"</value>
- </param>
- <param>
- <key>style4</key>
- <value>1</value>
- </param>
- <param>
- <key>marker4</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha4</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label5</key>
- <value></value>
- </param>
- <param>
- <key>width5</key>
- <value>1</value>
- </param>
- <param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>style5</key>
- <value>1</value>
- </param>
- <param>
- <key>marker5</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label6</key>
- <value></value>
- </param>
- <param>
- <key>width6</key>
- <value>1</value>
- </param>
- <param>
- <key>color6</key>
- <value>"magenta"</value>
- </param>
- <param>
- <key>style6</key>
- <value>1</value>
- </param>
- <param>
- <key>marker6</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha6</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label7</key>
- <value></value>
- </param>
- <param>
- <key>width7</key>
- <value>1</value>
- </param>
- <param>
- <key>color7</key>
- <value>"yellow"</value>
- </param>
- <param>
- <key>style7</key>
- <value>1</value>
- </param>
- <param>
- <key>marker7</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha7</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label8</key>
- <value></value>
- </param>
- <param>
- <key>width8</key>
- <value>1</value>
- </param>
- <param>
- <key>color8</key>
- <value>"dark red"</value>
- </param>
- <param>
- <key>style8</key>
- <value>1</value>
- </param>
- <param>
- <key>marker8</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha8</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label9</key>
- <value></value>
- </param>
- <param>
- <key>width9</key>
- <value>1</value>
- </param>
- <param>
- <key>color9</key>
- <value>"dark green"</value>
- </param>
- <param>
- <key>style9</key>
- <value>1</value>
- </param>
- <param>
- <key>marker9</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha9</key>
- <value>1.0</value>
- </param>
- <param>
- <key>label10</key>
- <value></value>
- </param>
- <param>
- <key>width10</key>
- <value>1</value>
- </param>
- <param>
- <key>color10</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>style10</key>
- <value>1</value>
- </param>
- <param>
- <key>marker10</key>
- <value>-1</value>
- </param>
- <param>
- <key>alpha10</key>
- <value>1.0</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(550, 382)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <connection>
- <source_block_id>digital_ofdm_tx_0</source_block_id>
- <sink_block_id>channels_channel_model_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>digital_ofdm_rx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_vector_source_x_0</source_block_id>
- <sink_block_id>blocks_stream_to_tagged_stream_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_stream_to_tagged_stream_0</source_block_id>
- <sink_block_id>digital_ofdm_tx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_rx_0</source_block_id>
- <sink_block_id>blocks_tag_debug_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_rx_0</source_block_id>
- <sink_block_id>blocks_uchar_to_float_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>channels_channel_model_0</source_block_id>
- <sink_block_id>blocks_throttle_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>qtgui_freq_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_uchar_to_float_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
-</flow_graph>
+options:
+ parameters:
+ author: ''
+ category: Custom
+ cmake_opt: ''
+ comment: ''
+ copyright: ''
+ description: Transmit a pre-defined signal (a complex sine) as OFDM packets.
+ gen_cmake: 'On'
+ gen_linking: dynamic
+ generate_options: qt_gui
+ hier_block_src_path: '.:'
+ id: ofdm_loopback_example
+ 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: OFDM Loopback Example
+ window_size: 1280, 1024
+ states:
+ coordinate: [8, 12.0]
+ rotation: 0
+ state: enabled
+
+blocks:
+- name: fft_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '64'
+ states:
+ coordinate: [408, 20.0]
+ rotation: 0
+ state: enabled
+- name: freq_offset
+ id: variable_qtgui_range
+ parameters:
+ comment: ''
+ gui_hint: ''
+ label: Frequency Offset (Multiples of Sub-carrier spacing)
+ min_len: '200'
+ orient: Qt.Horizontal
+ rangeType: float
+ start: '-3'
+ step: '.01'
+ stop: '3'
+ value: '0'
+ widget: counter_slider
+ states:
+ coordinate: [528, 548.0]
+ rotation: 0
+ state: enabled
+- name: len_tag_key
+ id: variable
+ parameters:
+ comment: ''
+ value: '"packet_len"'
+ states:
+ coordinate: [288, 20.0]
+ rotation: 0
+ state: enabled
+- name: noise_voltage
+ id: variable_qtgui_range
+ parameters:
+ comment: ''
+ gui_hint: ''
+ label: Noise Amplitude
+ min_len: '200'
+ orient: Qt.Horizontal
+ rangeType: float
+ start: '0'
+ step: '.01'
+ stop: '1'
+ value: '0.1'
+ widget: counter_slider
+ states:
+ coordinate: [704, 548.0]
+ rotation: 0
+ state: enabled
+- name: packet_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '50'
+ states:
+ coordinate: [200, 20.0]
+ rotation: 0
+ state: enabled
+- name: samp_rate
+ id: variable
+ parameters:
+ comment: ''
+ value: '100000'
+ states:
+ coordinate: [504, 20.0]
+ rotation: 0
+ state: enabled
+- name: blocks_stream_to_tagged_stream_0
+ id: blocks_stream_to_tagged_stream
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ len_tag_key: len_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ packet_len: packet_len
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [224, 140.0]
+ rotation: 0
+ state: enabled
+- name: blocks_tag_debug_0
+ id: blocks_tag_debug
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ display: 'False'
+ filter: '""'
+ name: Rx Packets
+ num_inputs: '1'
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [352, 508.0]
+ rotation: 0
+ state: enabled
+- name: blocks_throttle_0
+ id: blocks_throttle
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ ignoretag: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ samples_per_second: samp_rate
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [80, 300.0]
+ rotation: 180
+ state: enabled
+- name: blocks_uchar_to_float_0
+ id: blocks_uchar_to_float
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [352, 448.0]
+ rotation: 0
+ state: enabled
+- 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: range(packet_len)
+ vlen: '1'
+ states:
+ coordinate: [16, 132.0]
+ rotation: 0
+ state: enabled
+- name: channels_channel_model_0
+ id: channels_channel_model
+ parameters:
+ affinity: ''
+ alias: ''
+ block_tags: 'True'
+ comment: ''
+ epsilon: '1.0'
+ freq_offset: freq_offset * 1.0/fft_len
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ noise_voltage: noise_voltage
+ seed: '0'
+ taps: 1.0 + 1.0j
+ states:
+ coordinate: [528, 268.0]
+ rotation: 180
+ state: enabled
+- name: digital_ofdm_rx_0
+ id: digital_ofdm_rx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ fft_len: fft_len
+ header_mod: '"BPSK"'
+ log: 'False'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: ((-4,-3,-2,-1,1,2,3,4),)
+ packet_len_key: '"rx_len"'
+ payload_mod: '"QPSK"'
+ pilot_carriers: ((-6,-5,5,6),)
+ pilot_symbols: ((-1,1,-1,1),)
+ scramble_bits: 'False'
+ sync_word1: None
+ sync_word2: None
+ states:
+ coordinate: [80, 380.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_tx_0
+ id: digital_ofdm_tx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ fft_len: fft_len
+ header_mod: '"BPSK"'
+ log: 'False'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: ((-4,-3,-2,-1,1,2,3,4),)
+ packet_len_key: len_tag_key
+ payload_mod: '"QPSK"'
+ pilot_carriers: ((-6,-5,5,6),)
+ pilot_symbols: ((-1,1,-1,1),)
+ rolloff: '0'
+ scramble_bits: 'False'
+ sync_word1: None
+ sync_word2: None
+ states:
+ coordinate: [480, 76.0]
+ rotation: 0
+ state: enabled
+- 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: 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: ''
+ label: Relative Gain
+ label1: Rx Spectrum
+ label10: ''
+ label2: ''
+ label3: ''
+ label4: ''
+ label5: ''
+ label6: ''
+ label7: ''
+ label8: ''
+ label9: ''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: Rx Spectrum
+ nconnections: '1'
+ showports: 'True'
+ 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:
+ coordinate: [80, 564.0]
+ rotation: 0
+ state: enabled
+- name: qtgui_time_sink_x_0
+ id: qtgui_time_sink_x
+ parameters:
+ affinity: ''
+ alias: ''
+ alpha1: '1.0'
+ alpha10: '1.0'
+ alpha2: '1.0'
+ alpha3: '1.0'
+ alpha4: '1.0'
+ alpha5: '1.0'
+ alpha6: '1.0'
+ alpha7: '1.0'
+ alpha8: '1.0'
+ alpha9: '1.0'
+ autoscale: 'True'
+ axislabels: 'True'
+ color1: '"blue"'
+ color10: '"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: ''
+ 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: Scope Plot
+ 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: 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:
+ coordinate: [528, 420.0]
+ rotation: 0
+ state: enabled
+
+connections:
+- [blocks_stream_to_tagged_stream_0, '0', digital_ofdm_tx_0, '0']
+- [blocks_throttle_0, '0', digital_ofdm_rx_0, '0']
+- [blocks_throttle_0, '0', qtgui_freq_sink_x_0, '0']
+- [blocks_uchar_to_float_0, '0', qtgui_time_sink_x_0, '0']
+- [blocks_vector_source_x_0, '0', blocks_stream_to_tagged_stream_0, '0']
+- [channels_channel_model_0, '0', blocks_throttle_0, '0']
+- [digital_ofdm_rx_0, '0', blocks_tag_debug_0, '0']
+- [digital_ofdm_rx_0, '0', blocks_uchar_to_float_0, '0']
+- [digital_ofdm_tx_0, '0', channels_channel_model_0, '0']
+
+metadata:
+ file_format: 1
diff --git a/gr-digital/examples/ofdm/rx_ofdm.grc b/gr-digital/examples/ofdm/rx_ofdm.grc
index a6cb385e14..a11c31317f 100644
--- a/gr-digital/examples/ofdm/rx_ofdm.grc
+++ b/gr-digital/examples/ofdm/rx_ofdm.grc
@@ -1,2050 +1,676 @@
-<?xml version='1.0' encoding='ASCII'?>
-<flow_graph>
- <timestamp>Wed Jul 9 15:50:17 2014</timestamp>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>10000</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(170, 65)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>header_formatter</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.packet_header_ofdm(occupied_carriers, n_syms=1, len_tag_key=packet_length_tag_key, frame_len_tag_key=length_tag_key, bits_per_header_sym=header_mod.bits_per_symbol(), bits_per_payload_sym=payload_mod.bits_per_symbol(), scramble_header=False)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(855, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"packet_len"</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1132, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>"frame_len"</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(367, -1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>(range(-26, -21) + range(-20, -7) + range(-6, 0) + range(1, 7) + range(8, 21) + range(22, 27),)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(541, 70)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>pilot_symbols</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>((1, 1, 1, -1,),)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(813, 70)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>pilot_carriers</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>((-21, -7, 7, 21,),)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(692, 70)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>96</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1034, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>header_mod</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.constellation_bpsk()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(490, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>64</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(301, -1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>sync_word1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>[0., 0., 0., 0., 0., 0., 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 0., 0., 0., 0., 0.]</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(255, 67)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>sync_word2</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>[0j, 0j, 0j, 0j, 0j, 0j, (-1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), (1+0j), (1+0j), (1 +0j), (1+0j), (1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), 0j, (1+0j), (-1+0j), (1+0j), (1+0j), (1+0j), (-1+0j), (1+0j), (1+0j), (1+0j), (-1+0j), (1+0j), (1+0j), (1+0j), (1+0j), (-1+0j), (1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), (1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j), 0j, 0j, 0j, 0j, 0j]</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(399, 66)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>payload_equalizer</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.ofdm_equalizer_simpledfe(fft_len, payload_mod.base(), occupied_carriers, pilot_carriers, pilot_symbols, 1)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1112, 73)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>header_equalizer</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.ofdm_equalizer_simpledfe(fft_len, header_mod.base(), occupied_carriers, pilot_carriers, pilot_symbols)</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(931, 69)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>id</key>
- <value>payload_mod</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.constellation_qpsk()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(663, 1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>import</key>
- <param>
- <key>id</key>
- <value>import_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>import</key>
- <value>from gnuradio.digital.utils import tagged_streams</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(163, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>analog_random_source_x</key>
- <param>
- <key>id</key>
- <value>analog_random_source_x_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>min</key>
- <value>0</value>
- </param>
- <param>
- <key>max</key>
- <value>255</value>
- </param>
- <param>
- <key>num_samps</key>
- <value>1000</value>
- </param>
- <param>
- <key>repeat</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(2, 167)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>analog_frequency_modulator_fc</key>
- <param>
- <key>id</key>
- <value>analog_frequency_modulator_fc_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>sensitivity</key>
- <value>-2.0/fft_len</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(920, 171)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_throttle</key>
- <param>
- <key>id</key>
- <value>blocks_throttle_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>ignoretag</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(440, 187)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_multiply_xx</key>
- <param>
- <key>id</key>
- <value>blocks_multiply_xx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>num_inputs</key>
- <value>2</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1117, 265)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_sync_sc_cfb</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_sync_sc_cfb_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>use_even_carriers</key>
- <value>False</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(627, 175)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_packet_headerparser_b</key>
- <param>
- <key>id</key>
- <value>digital_packet_headerparser_b_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>header_formatter</key>
- <value>header_formatter.base()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(634, 529)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>digital_constellation_decoder_cb</key>
- <param>
- <key>id</key>
- <value>digital_constellation_decoder_cb_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>constellation</key>
- <value>header_mod.base()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(903, 530)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>180</value>
- </param>
- </block>
- <block>
- <key>fft_vxx</key>
- <param>
- <key>id</key>
- <value>fft_vxx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>fft_size</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>forward</key>
- <value>True</value>
- </param>
- <param>
- <key>window</key>
- <value>()</value>
- </param>
- <param>
- <key>shift</key>
- <value>True</value>
- </param>
- <param>
- <key>nthreads</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(217, 576)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>id</key>
- <value>virtual_sink_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Header Stream</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1098, 414)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_stream_to_tagged_stream</key>
- <param>
- <key>id</key>
- <value>blocks_stream_to_tagged_stream_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>packet_len</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(171, 182)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_chanest_vcvc</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_chanest_vcvc_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>sync_symbol1</key>
- <value>sync_word1</value>
- </param>
- <param>
- <key>sync_symbol2</key>
- <value>sync_word2</value>
- </param>
- <param>
- <key>n_data_symbols</key>
- <value>1</value>
- </param>
- <param>
- <key>eq_noise_red_len</key>
- <value>0</value>
- </param>
- <param>
- <key>max_carr_offset</key>
- <value>3</value>
- </param>
- <param>
- <key>force_one_symbol</key>
- <value>False</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(442, 584)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_frame_equalizer_vcvc</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_frame_equalizer_vcvc_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>equalizer</key>
- <value>header_equalizer.base()</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>propagate_channel_state</key>
- <value>True</value>
- </param>
- <param>
- <key>fixed_frame_len</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(675, 577)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>id</key>
- <value>virtual_source_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload Stream</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 732)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>id</key>
- <value>virtual_sink_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload Stream</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1094, 470)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>id</key>
- <value>virtual_source_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Header Stream</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(5, 606)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>fft_vxx</key>
- <param>
- <key>id</key>
- <value>fft_vxx_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>fft_size</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>forward</key>
- <value>True</value>
- </param>
- <param>
- <key>window</key>
- <value></value>
- </param>
- <param>
- <key>shift</key>
- <value>True</value>
- </param>
- <param>
- <key>nthreads</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(221, 702)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_frame_equalizer_vcvc</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_frame_equalizer_vcvc_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>equalizer</key>
- <value>payload_equalizer.base()</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>propagate_channel_state</key>
- <value>True</value>
- </param>
- <param>
- <key>fixed_frame_len</key>
- <value>0</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(672, 702)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>id</key>
- <value>virtual_sink_1_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload IQ</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1139, 732)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_crc32_bb</key>
- <param>
- <key>id</key>
- <value>digital_crc32_bb_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>check</key>
- <value>True</value>
- </param>
- <param>
- <key>lengthtagname</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(659, 841)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_repack_bits_bb</key>
- <param>
- <key>id</key>
- <value>blocks_repack_bits_bb_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>k</key>
- <value>payload_mod.bits_per_symbol()</value>
- </param>
- <param>
- <key>l</key>
- <value>8</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>align_output</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(430, 826)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_constellation_decoder_cb</key>
- <param>
- <key>id</key>
- <value>digital_constellation_decoder_cb_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>constellation</key>
- <value>payload_mod.base()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(183, 848)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>id</key>
- <value>virtual_source_0_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload IQ</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1, 851)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_tag_debug</key>
- <param>
- <key>id</key>
- <value>blocks_tag_debug_1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>name</key>
- <value>Rx Bytes</value>
- </param>
- <param>
- <key>filter</key>
- <value>""</value>
- </param>
- <param>
- <key>num_inputs</key>
- <value>1</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>display</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(898, 841)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>channels_channel_model</key>
- <param>
- <key>id</key>
- <value>channels_channel_model_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>noise_voltage</key>
- <value>0.1</value>
- </param>
- <param>
- <key>freq_offset</key>
- <value>0 * 1.0/fft_len</value>
- </param>
- <param>
- <key>epsilon</key>
- <value>1.0</value>
- </param>
- <param>
- <key>taps</key>
- <value>1.0</value>
- </param>
- <param>
- <key>seed</key>
- <value>0</value>
- </param>
- <param>
- <key>block_tags</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(303, 372)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_tx</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_tx_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>packet_len_key</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>pilot_carriers</key>
- <value>pilot_carriers</value>
- </param>
- <param>
- <key>pilot_symbols</key>
- <value>pilot_symbols</value>
- </param>
- <param>
- <key>sync_word1</key>
- <value>sync_word1</value>
- </param>
- <param>
- <key>sync_word2</key>
- <value>sync_word2</value>
- </param>
- <param>
- <key>header_mod</key>
- <value>"BPSK"</value>
- </param>
- <param>
- <key>payload_mod</key>
- <value>"QPSK"</value>
- </param>
- <param>
- <key>rolloff</key>
- <value>0</value>
- </param>
- <param>
- <key>scramble_bits</key>
- <value>False</value>
- </param>
- <param>
- <key>log</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(58, 327)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_header_payload_demux</key>
- <param>
- <key>id</key>
- <value>digital_header_payload_demux_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>header_len</key>
- <value>3</value>
- </param>
- <param>
- <key>items_per_symbol</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>guard_interval</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>length_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>trigger_tag_key</key>
- <value>""</value>
- </param>
- <param>
- <key>output_symbols</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>timing_tag_key</key>
- <value>"rx_time"</value>
- </param>
- <param>
- <key>samp_rate</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>special_tags</key>
- <value>()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(766, 363)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_serializer_vcc</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_serializer_vcc_header</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>packet_len_tag_key</key>
- <value></value>
- </param>
- <param>
- <key>symbols_skipped</key>
- <value>0</value>
- </param>
- <param>
- <key>carr_offset_key</key>
- <value></value>
- </param>
- <param>
- <key>input_is_shifted</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(914, 584)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_serializer_vcc</key>
- <param>
- <key>id</key>
- <value>digital_ofdm_serializer_vcc_payload</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>packet_len_tag_key</key>
- <value>packet_length_tag_key</value>
- </param>
- <param>
- <key>symbols_skipped</key>
- <value>1</value>
- </param>
- <param>
- <key>carr_offset_key</key>
- <value></value>
- </param>
- <param>
- <key>input_is_shifted</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(916, 710)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>blocks_delay</key>
- <param>
- <key>id</key>
- <value>blocks_delay_0</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>delay</key>
- <value>fft_len+fft_len/4</value>
- </param>
- <param>
- <key>num_ports</key>
- <value>1</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(622, 273)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>options</key>
- <param>
- <key>id</key>
- <value>rx_ofdm</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>title</key>
- <value>OFDM Rx</value>
- </param>
- <param>
- <key>author</key>
- <value></value>
- </param>
- <param>
- <key>description</key>
- <value>Example of an OFDM receiver</value>
- </param>
- <param>
- <key>window_size</key>
- <value>1280, 1024</value>
- </param>
- <param>
- <key>generate_options</key>
- <value>no_gui</value>
- </param>
- <param>
- <key>category</key>
- <value>Custom</value>
- </param>
- <param>
- <key>run_options</key>
- <value>prompt</value>
- </param>
- <param>
- <key>run</key>
- <value>True</value>
- </param>
- <param>
- <key>max_nouts</key>
- <value>0</value>
- </param>
- <param>
- <key>realtime_scheduling</key>
- <value></value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- </block>
- <connection>
- <source_block_id>analog_random_source_x_0</source_block_id>
- <sink_block_id>blocks_stream_to_tagged_stream_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_stream_to_tagged_stream_0</source_block_id>
- <sink_block_id>digital_ofdm_tx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_tx_0</source_block_id>
- <sink_block_id>channels_channel_model_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>channels_channel_model_0</source_block_id>
- <sink_block_id>blocks_throttle_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>digital_ofdm_sync_sc_cfb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_header_payload_demux_0</source_block_id>
- <sink_block_id>virtual_sink_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_sync_sc_cfb_0</source_block_id>
- <sink_block_id>analog_frequency_modulator_fc_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>analog_frequency_modulator_fc_0</source_block_id>
- <sink_block_id>blocks_multiply_xx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_multiply_xx_0</source_block_id>
- <sink_block_id>digital_header_payload_demux_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>blocks_delay_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_delay_0</source_block_id>
- <sink_block_id>blocks_multiply_xx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>1</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_sync_sc_cfb_0</source_block_id>
- <sink_block_id>digital_header_payload_demux_0</sink_block_id>
- <source_key>1</source_key>
- <sink_key>1</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_header_payload_demux_0</source_block_id>
- <sink_block_id>virtual_sink_1</sink_block_id>
- <source_key>1</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_packet_headerparser_b_0</source_block_id>
- <sink_block_id>digital_header_payload_demux_0</sink_block_id>
- <source_key>header_data</source_key>
- <sink_key>header_data</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_chanest_vcvc_0</source_block_id>
- <sink_block_id>digital_ofdm_frame_equalizer_vcvc_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_frame_equalizer_vcvc_0</source_block_id>
- <sink_block_id>digital_ofdm_serializer_vcc_header</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_serializer_vcc_header</source_block_id>
- <sink_block_id>digital_constellation_decoder_cb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_constellation_decoder_cb_0</source_block_id>
- <sink_block_id>digital_packet_headerparser_b_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>fft_vxx_0</source_block_id>
- <sink_block_id>digital_ofdm_chanest_vcvc_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0</source_block_id>
- <sink_block_id>fft_vxx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_1</source_block_id>
- <sink_block_id>fft_vxx_1</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_serializer_vcc_payload</source_block_id>
- <sink_block_id>virtual_sink_1_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_frame_equalizer_vcvc_1</source_block_id>
- <sink_block_id>digital_ofdm_serializer_vcc_payload</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>fft_vxx_1</source_block_id>
- <sink_block_id>digital_ofdm_frame_equalizer_vcvc_1</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_crc32_bb_0</source_block_id>
- <sink_block_id>blocks_tag_debug_1</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>digital_crc32_bb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0_0</source_block_id>
- <sink_block_id>digital_constellation_decoder_cb_1</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_constellation_decoder_cb_1</source_block_id>
- <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
-</flow_graph>
+options:
+ parameters:
+ author: ''
+ category: Custom
+ cmake_opt: ''
+ comment: ''
+ copyright: ''
+ description: Example of an OFDM receiver
+ gen_cmake: 'On'
+ gen_linking: dynamic
+ generate_options: no_gui
+ hier_block_src_path: '.:'
+ id: rx_ofdm
+ 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: OFDM Rx
+ window_size: 1280, 1024
+ states:
+ coordinate: [8, 12.0]
+ rotation: 0
+ state: enabled
+
+blocks:
+- name: fft_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '64'
+ states:
+ coordinate: [328, 12.0]
+ rotation: 0
+ state: enabled
+- name: header_equalizer
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.ofdm_equalizer_simpledfe(fft_len, header_mod.base(), occupied_carriers,
+ pilot_carriers, pilot_symbols)
+ states:
+ coordinate: [952, 76.0]
+ rotation: 0
+ state: enabled
+- name: header_formatter
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.packet_header_ofdm(occupied_carriers, n_syms=1, len_tag_key=packet_length_tag_key,
+ frame_len_tag_key=length_tag_key, bits_per_header_sym=header_mod.bits_per_symbol(),
+ bits_per_payload_sym=payload_mod.bits_per_symbol(), scramble_header=False)
+ states:
+ coordinate: [880, 12.0]
+ rotation: 0
+ state: enabled
+- name: header_mod
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.constellation_bpsk()
+ states:
+ coordinate: [512, 12.0]
+ rotation: 0
+ state: enabled
+- name: length_tag_key
+ id: variable
+ parameters:
+ comment: ''
+ value: '"frame_len"'
+ states:
+ coordinate: [392, 12.0]
+ rotation: 0
+ state: enabled
+- name: occupied_carriers
+ id: variable
+ parameters:
+ comment: ''
+ value: (list(range(-26, -21)) + list(range(-20, -7)) + list(range(-6, 0)) + list(range(1,
+ 7)) + list(range(8, 21)) + list(range(22, 27)),)
+ states:
+ coordinate: [568, 76.0]
+ rotation: 0
+ state: enabled
+- name: packet_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '96'
+ states:
+ coordinate: [1056, 12.0]
+ rotation: 0
+ state: enabled
+- name: packet_length_tag_key
+ id: variable
+ parameters:
+ comment: ''
+ value: '"packet_len"'
+ states:
+ coordinate: [1152, 12.0]
+ rotation: 0
+ state: enabled
+- name: payload_equalizer
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.ofdm_equalizer_simpledfe(fft_len, payload_mod.base(), occupied_carriers,
+ pilot_carriers, pilot_symbols, 1)
+ states:
+ coordinate: [1136, 76.0]
+ rotation: 0
+ state: enabled
+- name: payload_mod
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.constellation_qpsk()
+ states:
+ coordinate: [688, 12.0]
+ rotation: 0
+ state: enabled
+- name: pilot_carriers
+ id: variable
+ parameters:
+ comment: ''
+ value: ((-21, -7, 7, 21,),)
+ states:
+ coordinate: [720, 76.0]
+ rotation: 0
+ state: enabled
+- name: pilot_symbols
+ id: variable
+ parameters:
+ comment: ''
+ value: ((1, 1, 1, -1,),)
+ states:
+ coordinate: [840, 76.0]
+ rotation: 0
+ state: enabled
+- name: samp_rate
+ id: variable
+ parameters:
+ comment: ''
+ value: '10000'
+ states:
+ coordinate: [184, 76.0]
+ rotation: 0
+ state: enabled
+- name: sync_word1
+ id: variable
+ parameters:
+ comment: ''
+ value: '[0., 0., 0., 0., 0., 0., 0., 1.41421356, 0., -1.41421356, 0., 1.41421356,
+ 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356,
+ 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 0., 0., 0., 0., 0.]'
+ states:
+ coordinate: [272, 76.0]
+ rotation: 0
+ state: enabled
+- name: sync_word2
+ id: variable
+ parameters:
+ comment: ''
+ value: '[0j, 0j, 0j, 0j, 0j, 0j, (-1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (1+0j),
+ (-1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), (1+0j), (1+0j), (1 +0j), (1+0j),
+ (1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j), (1+0j), (-1+0j), (-1+0j),
+ (1+0j), (-1+0j), 0j, (1+0j), (-1+0j), (1+0j), (1+0j), (1+0j), (-1+0j), (1+0j),
+ (1+0j), (1+0j), (-1+0j), (1+0j), (1+0j), (1+0j), (1+0j), (-1+0j), (1+0j), (-1+0j),
+ (-1+0j), (-1+0j), (1+0j), (-1+0j), (1+0j), (-1+0j), (-1+0j), (-1+0j), (-1+0j),
+ 0j, 0j, 0j, 0j, 0j]'
+ states:
+ coordinate: [416, 76.0]
+ rotation: 0
+ state: enabled
+- name: analog_frequency_modulator_fc_0
+ id: analog_frequency_modulator_fc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ sensitivity: -2.0/fft_len
+ states:
+ coordinate: [912, 292.0]
+ rotation: 0
+ state: enabled
+- name: analog_random_source_x_0
+ id: analog_random_source_x
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ max: '255'
+ maxoutbuf: '0'
+ min: '0'
+ minoutbuf: '0'
+ num_samps: '1000'
+ repeat: 'True'
+ type: byte
+ states:
+ coordinate: [16, 212.0]
+ rotation: 0
+ state: enabled
+- name: blocks_delay_0
+ id: blocks_delay
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ delay: fft_len+fft_len//4
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ num_ports: '1'
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [688, 436.0]
+ rotation: 0
+ state: enabled
+- name: blocks_multiply_xx_0
+ id: blocks_multiply_xx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ num_inputs: '2'
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [800, 408.0]
+ rotation: 0
+ state: enabled
+- name: blocks_repack_bits_bb_0
+ id: blocks_repack_bits_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ align_output: 'True'
+ comment: ''
+ endianness: gr.GR_LSB_FIRST
+ k: payload_mod.bits_per_symbol()
+ l: '8'
+ len_tag_key: packet_length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [432, 892.0]
+ rotation: 0
+ state: enabled
+- name: blocks_stream_to_tagged_stream_0
+ id: blocks_stream_to_tagged_stream
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ len_tag_key: packet_length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ packet_len: packet_len
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [176, 228.0]
+ rotation: 0
+ state: enabled
+- name: blocks_tag_debug_1
+ id: blocks_tag_debug
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ display: 'True'
+ filter: '""'
+ name: Rx Bytes
+ num_inputs: '1'
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [864, 884.0]
+ rotation: 0
+ state: enabled
+- name: blocks_throttle_0
+ id: blocks_throttle
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ ignoretag: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ samples_per_second: samp_rate
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [464, 484.0]
+ rotation: 0
+ state: enabled
+- name: channels_channel_model_0
+ id: channels_channel_model
+ parameters:
+ affinity: ''
+ alias: ''
+ block_tags: 'True'
+ comment: ''
+ epsilon: '1.0'
+ freq_offset: 0 * 1.0/fft_len
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ noise_voltage: '0.1'
+ seed: '0'
+ taps: '1.0'
+ states:
+ coordinate: [448, 372.0]
+ rotation: 180
+ state: enabled
+- name: digital_constellation_decoder_cb_0
+ id: digital_constellation_decoder_cb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ constellation: header_mod.base()
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [1072, 580.0]
+ rotation: 180
+ state: enabled
+- name: digital_constellation_decoder_cb_1
+ id: digital_constellation_decoder_cb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ constellation: payload_mod.base()
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [192, 900.0]
+ rotation: 0
+ state: enabled
+- name: digital_crc32_bb_0
+ id: digital_crc32_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ check: 'True'
+ comment: ''
+ lengthtagname: packet_length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ packed: 'True'
+ states:
+ coordinate: [640, 884.0]
+ rotation: 0
+ state: enabled
+- name: digital_header_payload_demux_0
+ id: digital_header_payload_demux
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ guard_interval: fft_len//4
+ header_len: '3'
+ header_padding: '0'
+ items_per_symbol: fft_len
+ length_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ output_symbols: 'True'
+ samp_rate: samp_rate
+ special_tags: ()
+ timing_tag_key: '"rx_time"'
+ trigger_tag_key: '""'
+ type: complex
+ states:
+ coordinate: [1008, 388.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_chanest_vcvc_0
+ id: digital_ofdm_chanest_vcvc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ eq_noise_red_len: '0'
+ force_one_symbol: 'False'
+ max_carr_offset: '3'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ n_data_symbols: '1'
+ sync_symbol1: sync_word1
+ sync_symbol2: sync_word2
+ states:
+ coordinate: [432, 636.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_frame_equalizer_vcvc_0
+ id: digital_ofdm_frame_equalizer_vcvc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ equalizer: header_equalizer.base()
+ fft_len: fft_len
+ fixed_frame_len: '1'
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ propagate_channel_state: 'True'
+ states:
+ coordinate: [720, 628.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_frame_equalizer_vcvc_1
+ id: digital_ofdm_frame_equalizer_vcvc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ equalizer: payload_equalizer.base()
+ fft_len: fft_len
+ fixed_frame_len: '0'
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ propagate_channel_state: 'True'
+ states:
+ coordinate: [680, 764.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_serializer_vcc_header
+ id: digital_ofdm_serializer_vcc
+ parameters:
+ affinity: ''
+ alias: ''
+ carr_offset_key: ''
+ comment: ''
+ fft_len: fft_len
+ input_is_shifted: 'True'
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: occupied_carriers
+ packet_len_tag_key: ''
+ symbols_skipped: '0'
+ states:
+ coordinate: [976, 652.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_serializer_vcc_payload
+ id: digital_ofdm_serializer_vcc
+ parameters:
+ affinity: ''
+ alias: ''
+ carr_offset_key: ''
+ comment: ''
+ fft_len: fft_len
+ input_is_shifted: 'True'
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: occupied_carriers
+ packet_len_tag_key: packet_length_tag_key
+ symbols_skipped: '1'
+ states:
+ coordinate: [912, 764.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_sync_sc_cfb_0
+ id: digital_ofdm_sync_sc_cfb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ fft_len: fft_len
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ threshold: '0.9'
+ use_even_carriers: 'False'
+ states:
+ coordinate: [688, 292.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_tx_0
+ id: digital_ofdm_tx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ fft_len: fft_len
+ header_mod: '"BPSK"'
+ log: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: occupied_carriers
+ packet_len_key: packet_length_tag_key
+ payload_mod: '"QPSK"'
+ pilot_carriers: pilot_carriers
+ pilot_symbols: pilot_symbols
+ rolloff: '0'
+ scramble_bits: 'False'
+ sync_word1: sync_word1
+ sync_word2: sync_word2
+ states:
+ coordinate: [400, 148.0]
+ rotation: 0
+ state: enabled
+- name: digital_packet_headerparser_b_0
+ id: digital_packet_headerparser_b
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ header_formatter: header_formatter.base()
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [832, 580.0]
+ rotation: 180
+ state: enabled
+- name: fft_vxx_0
+ id: fft_vxx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ fft_size: fft_len
+ forward: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ nthreads: '1'
+ shift: 'True'
+ type: complex
+ window: ()
+ states:
+ coordinate: [224, 636.0]
+ rotation: 0
+ state: enabled
+- name: fft_vxx_1
+ id: fft_vxx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ fft_size: fft_len
+ forward: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ nthreads: '1'
+ shift: 'True'
+ type: complex
+ window: ()
+ states:
+ coordinate: [216, 764.0]
+ rotation: 0
+ state: enabled
+- name: import_1
+ id: import
+ parameters:
+ alias: ''
+ comment: ''
+ imports: from gnuradio.digital.utils import tagged_streams
+ states:
+ coordinate: [184, 12.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_0
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Header Stream
+ states:
+ coordinate: [1328, 436.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_1
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload Stream
+ states:
+ coordinate: [1328, 484.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_1_0
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload IQ
+ states:
+ coordinate: [1152, 796.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Header Stream
+ states:
+ coordinate: [16, 668.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload IQ
+ states:
+ coordinate: [16, 900.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_1
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload Stream
+ states:
+ coordinate: [16, 796.0]
+ rotation: 0
+ state: enabled
+
+connections:
+- [analog_frequency_modulator_fc_0, '0', blocks_multiply_xx_0, '0']
+- [analog_random_source_x_0, '0', blocks_stream_to_tagged_stream_0, '0']
+- [blocks_delay_0, '0', blocks_multiply_xx_0, '1']
+- [blocks_multiply_xx_0, '0', digital_header_payload_demux_0, '0']
+- [blocks_repack_bits_bb_0, '0', digital_crc32_bb_0, '0']
+- [blocks_stream_to_tagged_stream_0, '0', digital_ofdm_tx_0, '0']
+- [blocks_throttle_0, '0', blocks_delay_0, '0']
+- [blocks_throttle_0, '0', digital_ofdm_sync_sc_cfb_0, '0']
+- [channels_channel_model_0, '0', blocks_throttle_0, '0']
+- [digital_constellation_decoder_cb_0, '0', digital_packet_headerparser_b_0, '0']
+- [digital_constellation_decoder_cb_1, '0', blocks_repack_bits_bb_0, '0']
+- [digital_crc32_bb_0, '0', blocks_tag_debug_1, '0']
+- [digital_header_payload_demux_0, '0', virtual_sink_0, '0']
+- [digital_header_payload_demux_0, '1', virtual_sink_1, '0']
+- [digital_ofdm_chanest_vcvc_0, '0', digital_ofdm_frame_equalizer_vcvc_0, '0']
+- [digital_ofdm_frame_equalizer_vcvc_0, '0', digital_ofdm_serializer_vcc_header, '0']
+- [digital_ofdm_frame_equalizer_vcvc_1, '0', digital_ofdm_serializer_vcc_payload,
+ '0']
+- [digital_ofdm_serializer_vcc_header, '0', digital_constellation_decoder_cb_0, '0']
+- [digital_ofdm_serializer_vcc_payload, '0', virtual_sink_1_0, '0']
+- [digital_ofdm_sync_sc_cfb_0, '0', analog_frequency_modulator_fc_0, '0']
+- [digital_ofdm_sync_sc_cfb_0, '1', digital_header_payload_demux_0, '1']
+- [digital_ofdm_tx_0, '0', channels_channel_model_0, '0']
+- [digital_packet_headerparser_b_0, header_data, digital_header_payload_demux_0, header_data]
+- [fft_vxx_0, '0', digital_ofdm_chanest_vcvc_0, '0']
+- [fft_vxx_1, '0', digital_ofdm_frame_equalizer_vcvc_1, '0']
+- [virtual_source_0, '0', fft_vxx_0, '0']
+- [virtual_source_0_0, '0', digital_constellation_decoder_cb_1, '0']
+- [virtual_source_1, '0', fft_vxx_1, '0']
+
+metadata:
+ file_format: 1
diff --git a/gr-digital/examples/ofdm/tx_ofdm.grc b/gr-digital/examples/ofdm/tx_ofdm.grc
index 3c8aca2b69..4d68086dcc 100644
--- a/gr-digital/examples/ofdm/tx_ofdm.grc
+++ b/gr-digital/examples/ofdm/tx_ofdm.grc
@@ -1,2567 +1,762 @@
-<?xml version='1.0' encoding='utf-8'?>
-<?grc format='1' created='3.7.10'?>
-<flow_graph>
- <timestamp>Wed Jul 9 15:49:47 2014</timestamp>
- <block>
- <key>options</key>
- <param>
- <key>author</key>
- <value></value>
- </param>
- <param>
- <key>window_size</key>
- <value>1280, 1024</value>
- </param>
- <param>
- <key>category</key>
- <value>Custom</value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>description</key>
- <value>Example of an OFDM Transmitter</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>generate_options</key>
- <value>qt_gui</value>
- </param>
- <param>
- <key>hier_block_src_path</key>
- <value>.:</value>
- </param>
- <param>
- <key>id</key>
- <value>tx_ofdm</value>
- </param>
- <param>
- <key>max_nouts</key>
- <value>0</value>
- </param>
- <param>
- <key>qt_qss_theme</key>
- <value></value>
- </param>
- <param>
- <key>realtime_scheduling</key>
- <value></value>
- </param>
- <param>
- <key>run_command</key>
- <value>{python} -u {filename}</value>
- </param>
- <param>
- <key>run_options</key>
- <value>run</value>
- </param>
- <param>
- <key>run</key>
- <value>True</value>
- </param>
- <param>
- <key>thread_safe_setters</key>
- <value></value>
- </param>
- <param>
- <key>title</key>
- <value>OFDM Tx</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(181, -1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>value</key>
- <value>64</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>1</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(720, 69)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>hdr_format</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.header_format_ofdm(occupied_carriers, 1, length_tag_key,)</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(567, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>header_mod</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.constellation_bpsk()</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(352, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>value</key>
- <value>"packet_len"</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(320, 69)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>value</key>
- <value>(range(-26, -21) + range(-20, -7) + range(-6, 0) + range(1, 7) + range(8, 21) + range(22, 27),)</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(476, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>value</key>
- <value>96</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(734, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>payload_mod</value>
- </param>
- <param>
- <key>value</key>
- <value>digital.constellation_qpsk()</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(480, 69)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>pilot_carriers</value>
- </param>
- <param>
- <key>value</key>
- <value>((-21, -7, 7, 21,),)</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(608, 69)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>pilot_symbols</value>
- </param>
- <param>
- <key>value</key>
- <value>((1, 1, 1, -1,),)</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>1</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(898, -1)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>rolloff</value>
- </param>
- <param>
- <key>value</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(255, 0)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>value</key>
- <value>100000</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(8, 93)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>sync_word1</value>
- </param>
- <param>
- <key>value</key>
- <value>[0., 0., 0., 0., 0., 0., 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 0., 0., 0., 0., 0.]</value>
- </param>
- </block>
- <block>
- <key>variable</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(152, 93)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>sync_word2</value>
- </param>
- <param>
- <key>value</key>
- <value>[0, 0, 0, 0, 0, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1, -1, -1, -1, -1, -1, 1, -1, -1, 1, -1, 0, 1, -1, 1, 1, 1, -1, 1, 1, 1, -1, 1, 1, 1, 1, -1, 1, -1, -1, -1, 1, -1, 1, -1, -1, -1, -1, 0, 0, 0, 0, 0] </value>
- </param>
- </block>
- <block>
- <key>analog_random_source_x</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(16, 167)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>analog_random_source_x_0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>max</key>
- <value>255</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>min</key>
- <value>0</value>
- </param>
- <param>
- <key>num_samps</key>
- <value>1000</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>repeat</key>
- <value>True</value>
- </param>
- </block>
- <block>
- <key>blocks_multiply_const_vxx</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>const</key>
- <value>0.05</value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(208, 692)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_multiply_const_vxx_0</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>blocks_repack_bits_bb</key>
- <param>
- <key>k</key>
- <value>8</value>
- </param>
- <param>
- <key>l</key>
- <value>payload_mod.bits_per_symbol()</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>endianness</key>
- <value>gr.GR_LSB_FIRST</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(664, 245)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_repack_bits_bb_0</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>align_output</key>
- <value>False</value>
- </param>
- </block>
- <block>
- <key>blocks_repack_bits_bb</key>
- <param>
- <key>k</key>
- <value>8</value>
- </param>
- <param>
- <key>l</key>
- <value>1</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>endianness</key>
- <value>gr.GR_LSB_FIRST</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(896, 157)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_repack_bits_bb_0_0</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>align_output</key>
- <value>False</value>
- </param>
- </block>
- <block>
- <key>blocks_stream_to_tagged_stream</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(192, 181)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_stream_to_tagged_stream_0</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>packet_len</key>
- <value>packet_len</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>blocks_tag_debug</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>display</key>
- <value>True</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(680, 822)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_tag_debug_0</value>
- </param>
- <param>
- <key>type</key>
- <value>byte</value>
- </param>
- <param>
- <key>filter</key>
- <value>""</value>
- </param>
- <param>
- <key>name</key>
- <value>Rx'd Packets</value>
- </param>
- <param>
- <key>num_inputs</key>
- <value>1</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>blocks_tag_gate</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(376, 692)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_tag_gate_0</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>propagate_tags</key>
- <value>False</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>blocks_tagged_stream_mux</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(512, 369)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_tagged_stream_mux_0</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>lengthtagname</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>ninputs</key>
- <value>2</value>
- </param>
- <param>
- <key>tag_preserve_head_pos</key>
- <value>0</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>blocks_throttle</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(560, 692)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>blocks_throttle_0</value>
- </param>
- <param>
- <key>ignoretag</key>
- <value>True</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>samples_per_second</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>vlen</key>
- <value>1</value>
- </param>
- </block>
- <block>
- <key>channels_channel_model</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>block_tags</key>
- <value>True</value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>epsilon</key>
- <value>1.0</value>
- </param>
- <param>
- <key>freq_offset</key>
- <value>0.0</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(192, 801)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>channels_channel_model_0</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>noise_voltage</key>
- <value>0.0</value>
- </param>
- <param>
- <key>seed</key>
- <value>0</value>
- </param>
- <param>
- <key>taps</key>
- <value>1.0 + 1.0j</value>
- </param>
- </block>
- <block>
- <key>digital_chunks_to_symbols_xx</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>dimension</key>
- <value>1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(216, 317)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_chunks_to_symbols_xx_0</value>
- </param>
- <param>
- <key>in_type</key>
- <value>byte</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>num_ports</key>
- <value>1</value>
- </param>
- <param>
- <key>out_type</key>
- <value>complex</value>
- </param>
- <param>
- <key>symbol_table</key>
- <value>header_mod.points()</value>
- </param>
- </block>
- <block>
- <key>digital_chunks_to_symbols_xx</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>dimension</key>
- <value>1</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(216, 397)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_chunks_to_symbols_xx_0_0</value>
- </param>
- <param>
- <key>in_type</key>
- <value>byte</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>num_ports</key>
- <value>1</value>
- </param>
- <param>
- <key>out_type</key>
- <value>complex</value>
- </param>
- <param>
- <key>symbol_table</key>
- <value>payload_mod.points()</value>
- </param>
- </block>
- <block>
- <key>digital_crc32_bb</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(432, 182)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_crc32_bb_0</value>
- </param>
- <param>
- <key>lengthtagname</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>check</key>
- <value>False</value>
- </param>
- <param>
- <key>packed</key>
- <value>True</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_carrier_allocator_cvc</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(192, 489)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_ofdm_carrier_allocator_cvc_0</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>pilot_carriers</key>
- <value>pilot_carriers</value>
- </param>
- <param>
- <key>pilot_symbols</key>
- <value>pilot_symbols</value>
- </param>
- <param>
- <key>sync_words</key>
- <value>(sync_word1, sync_word2)</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_cyclic_prefixer</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>input_size</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(632, 503)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_ofdm_cyclic_prefixer_0</value>
- </param>
- <param>
- <key>tagname</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>rolloff</key>
- <value>rolloff</value>
- </param>
- </block>
- <block>
- <key>digital_ofdm_rx</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>cp_len</key>
- <value>fft_len/4</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_len</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(440, 766)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>header_mod</key>
- <value>"BPSK"</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_ofdm_rx_0</value>
- </param>
- <param>
- <key>log</key>
- <value>False</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>occupied_carriers</key>
- <value>occupied_carriers</value>
- </param>
- <param>
- <key>packet_len_key</key>
- <value>"length"</value>
- </param>
- <param>
- <key>payload_mod</key>
- <value>"QPSK"</value>
- </param>
- <param>
- <key>pilot_carriers</key>
- <value>pilot_carriers</value>
- </param>
- <param>
- <key>pilot_symbols</key>
- <value>pilot_symbols</value>
- </param>
- <param>
- <key>scramble_bits</key>
- <value>False</value>
- </param>
- <param>
- <key>sync_word1</key>
- <value>sync_word1</value>
- </param>
- <param>
- <key>sync_word2</key>
- <value>sync_word2</value>
- </param>
- </block>
- <block>
- <key>digital_protocol_formatter_bb</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>format</key>
- <value>hdr_format</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(656, 157)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>digital_protocol_formatter_bb_0</value>
- </param>
- <param>
- <key>len_tag_key</key>
- <value>length_tag_key</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- </block>
- <block>
- <key>fft_vxx</key>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fft_size</key>
- <value>fft_len</value>
- </param>
- <param>
- <key>forward</key>
- <value>False</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(416, 496)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>fft_vxx_0</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>nthreads</key>
- <value>1</value>
- </param>
- <param>
- <key>shift</key>
- <value>True</value>
- </param>
- <param>
- <key>window</key>
- <value>()</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(1104, 164)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>header_bits</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Header Bits</value>
- </param>
- </block>
- <block>
- <key>qtgui_freq_sink_x</key>
- <param>
- <key>autoscale</key>
- <value>True</value>
- </param>
- <param>
- <key>average</key>
- <value>1.0</value>
- </param>
- <param>
- <key>axislabels</key>
- <value>True</value>
- </param>
- <param>
- <key>bw</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>fc</key>
- <value>0</value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>ctrlpanel</key>
- <value>False</value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>fftsize</key>
- <value>1024</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(960, 759)</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>grid</key>
- <value>False</value>
- </param>
- <param>
- <key>id</key>
- <value>qtgui_freq_sink_x_0</value>
- </param>
- <param>
- <key>legend</key>
- <value>True</value>
- </param>
- <param>
- <key>alpha1</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color1</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>label1</key>
- <value></value>
- </param>
- <param>
- <key>width1</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha10</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color10</key>
- <value>"dark blue"</value>
- </param>
- <param>
- <key>label10</key>
- <value></value>
- </param>
- <param>
- <key>width10</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha2</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color2</key>
- <value>"red"</value>
- </param>
- <param>
- <key>label2</key>
- <value></value>
- </param>
- <param>
- <key>width2</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha3</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color3</key>
- <value>"green"</value>
- </param>
- <param>
- <key>label3</key>
- <value></value>
- </param>
- <param>
- <key>width3</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha4</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color4</key>
- <value>"black"</value>
- </param>
- <param>
- <key>label4</key>
- <value></value>
- </param>
- <param>
- <key>width4</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>label5</key>
- <value></value>
- </param>
- <param>
- <key>width5</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha6</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color6</key>
- <value>"magenta"</value>
- </param>
- <param>
- <key>label6</key>
- <value></value>
- </param>
- <param>
- <key>width6</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha7</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color7</key>
- <value>"yellow"</value>
- </param>
- <param>
- <key>label7</key>
- <value></value>
- </param>
- <param>
- <key>width7</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha8</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color8</key>
- <value>"dark red"</value>
- </param>
- <param>
- <key>label8</key>
- <value></value>
- </param>
- <param>
- <key>width8</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha9</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color9</key>
- <value>"dark green"</value>
- </param>
- <param>
- <key>label9</key>
- <value></value>
- </param>
- <param>
- <key>width9</key>
- <value>1</value>
- </param>
- <param>
- <key>maxoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>minoutbuf</key>
- <value>0</value>
- </param>
- <param>
- <key>name</key>
- <value>FFT Plot</value>
- </param>
- <param>
- <key>nconnections</key>
- <value>1</value>
- </param>
- <param>
- <key>showports</key>
- <value>True</value>
- </param>
- <param>
- <key>freqhalf</key>
- <value>True</value>
- </param>
- <param>
- <key>tr_chan</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_level</key>
- <value>0.0</value>
- </param>
- <param>
- <key>tr_mode</key>
- <value>qtgui.TRIG_MODE_FREE</value>
- </param>
- <param>
- <key>tr_tag</key>
- <value>""</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>update_time</key>
- <value>0.10</value>
- </param>
- <param>
- <key>wintype</key>
- <value>firdes.WIN_BLACKMAN_hARRIS</value>
- </param>
- <param>
- <key>label</key>
- <value>Relative Gain</value>
- </param>
- <param>
- <key>ymax</key>
- <value>10</value>
- </param>
- <param>
- <key>ymin</key>
- <value>-140</value>
- </param>
- <param>
- <key>units</key>
- <value>dB</value>
- </param>
- </block>
- <block>
- <key>qtgui_time_sink_x</key>
- <param>
- <key>autoscale</key>
- <value>True</value>
- </param>
- <param>
- <key>axislabels</key>
- <value>True</value>
- </param>
- <param>
- <key>alias</key>
- <value></value>
- </param>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>ctrlpanel</key>
- <value>False</value>
- </param>
- <param>
- <key>affinity</key>
- <value></value>
- </param>
- <param>
- <key>entags</key>
- <value>True</value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(960, 671)</value>
- </param>
- <param>
- <key>gui_hint</key>
- <value></value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>grid</key>
- <value>False</value>
- </param>
- <param>
- <key>id</key>
- <value>qtgui_time_sink_x_0</value>
- </param>
- <param>
- <key>legend</key>
- <value>True</value>
- </param>
- <param>
- <key>alpha1</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color1</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>label1</key>
- <value>Scope Plot</value>
- </param>
- <param>
- <key>marker1</key>
- <value>-1</value>
- </param>
- <param>
- <key>style1</key>
- <value>1</value>
- </param>
- <param>
- <key>width1</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha10</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color10</key>
- <value>"blue"</value>
- </param>
- <param>
- <key>label10</key>
- <value></value>
- </param>
- <param>
- <key>marker10</key>
- <value>-1</value>
- </param>
- <param>
- <key>style10</key>
- <value>1</value>
- </param>
- <param>
- <key>width10</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha2</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color2</key>
- <value>"red"</value>
- </param>
- <param>
- <key>label2</key>
- <value></value>
- </param>
- <param>
- <key>marker2</key>
- <value>-1</value>
- </param>
- <param>
- <key>style2</key>
- <value>1</value>
- </param>
- <param>
- <key>width2</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha3</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color3</key>
- <value>"green"</value>
- </param>
- <param>
- <key>label3</key>
- <value></value>
- </param>
- <param>
- <key>marker3</key>
- <value>-1</value>
- </param>
- <param>
- <key>style3</key>
- <value>1</value>
- </param>
- <param>
- <key>width3</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha4</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color4</key>
- <value>"black"</value>
- </param>
- <param>
- <key>label4</key>
- <value></value>
- </param>
- <param>
- <key>marker4</key>
- <value>-1</value>
- </param>
- <param>
- <key>style4</key>
- <value>1</value>
- </param>
- <param>
- <key>width4</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha5</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color5</key>
- <value>"cyan"</value>
- </param>
- <param>
- <key>label5</key>
- <value></value>
- </param>
- <param>
- <key>marker5</key>
- <value>-1</value>
- </param>
- <param>
- <key>style5</key>
- <value>1</value>
- </param>
- <param>
- <key>width5</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha6</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color6</key>
- <value>"magenta"</value>
- </param>
- <param>
- <key>label6</key>
- <value></value>
- </param>
- <param>
- <key>marker6</key>
- <value>-1</value>
- </param>
- <param>
- <key>style6</key>
- <value>1</value>
- </param>
- <param>
- <key>width6</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha7</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color7</key>
- <value>"yellow"</value>
- </param>
- <param>
- <key>label7</key>
- <value></value>
- </param>
- <param>
- <key>marker7</key>
- <value>-1</value>
- </param>
- <param>
- <key>style7</key>
- <value>1</value>
- </param>
- <param>
- <key>width7</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha8</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color8</key>
- <value>"dark red"</value>
- </param>
- <param>
- <key>label8</key>
- <value></value>
- </param>
- <param>
- <key>marker8</key>
- <value>-1</value>
- </param>
- <param>
- <key>style8</key>
- <value>1</value>
- </param>
- <param>
- <key>width8</key>
- <value>1</value>
- </param>
- <param>
- <key>alpha9</key>
- <value>1.0</value>
- </param>
- <param>
- <key>color9</key>
- <value>"dark green"</value>
- </param>
- <param>
- <key>label9</key>
- <value></value>
- </param>
- <param>
- <key>marker9</key>
- <value>-1</value>
- </param>
- <param>
- <key>style9</key>
- <value>1</value>
- </param>
- <param>
- <key>width9</key>
- <value>1</value>
- </param>
- <param>
- <key>name</key>
- <value>Scope Plot</value>
- </param>
- <param>
- <key>nconnections</key>
- <value>1</value>
- </param>
- <param>
- <key>size</key>
- <value>1024</value>
- </param>
- <param>
- <key>srate</key>
- <value>samp_rate</value>
- </param>
- <param>
- <key>tr_chan</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_delay</key>
- <value>0</value>
- </param>
- <param>
- <key>tr_level</key>
- <value>0.0</value>
- </param>
- <param>
- <key>tr_mode</key>
- <value>qtgui.TRIG_MODE_FREE</value>
- </param>
- <param>
- <key>tr_slope</key>
- <value>qtgui.TRIG_SLOPE_POS</value>
- </param>
- <param>
- <key>tr_tag</key>
- <value>""</value>
- </param>
- <param>
- <key>type</key>
- <value>complex</value>
- </param>
- <param>
- <key>update_time</key>
- <value>0.10</value>
- </param>
- <param>
- <key>ylabel</key>
- <value>Amplitude</value>
- </param>
- <param>
- <key>yunit</key>
- <value>""</value>
- </param>
- <param>
- <key>ymax</key>
- <value>1</value>
- </param>
- <param>
- <key>ymin</key>
- <value>-1</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(856, 524)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_sink_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Time Domain</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(856, 252)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_sink_0_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload Bits</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(744, 388)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_sink_0_0_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Pre-OFDM</value>
- </param>
- </block>
- <block>
- <key>virtual_sink</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(960, 620)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_sink_1</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Tx Signal</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 324)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_source_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Header Bits</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 404)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_source_0_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Payload Bits</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 524)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_source_0_0_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Pre-OFDM</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 692)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_source_0_0_0_0</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Time Domain</value>
- </param>
- </block>
- <block>
- <key>virtual_source</key>
- <param>
- <key>comment</key>
- <value></value>
- </param>
- <param>
- <key>_enabled</key>
- <value>True</value>
- </param>
- <param>
- <key>_coordinate</key>
- <value>(0, 836)</value>
- </param>
- <param>
- <key>_rotation</key>
- <value>0</value>
- </param>
- <param>
- <key>id</key>
- <value>virtual_source_1</value>
- </param>
- <param>
- <key>stream_id</key>
- <value>Tx Signal</value>
- </param>
- </block>
- <connection>
- <source_block_id>analog_random_source_x_0</source_block_id>
- <sink_block_id>blocks_stream_to_tagged_stream_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_multiply_const_vxx_0</source_block_id>
- <sink_block_id>blocks_tag_gate_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_repack_bits_bb_0</source_block_id>
- <sink_block_id>virtual_sink_0_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_repack_bits_bb_0_0</source_block_id>
- <sink_block_id>header_bits</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_stream_to_tagged_stream_0</source_block_id>
- <sink_block_id>digital_crc32_bb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_tag_gate_0</source_block_id>
- <sink_block_id>blocks_throttle_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_tagged_stream_mux_0</source_block_id>
- <sink_block_id>virtual_sink_0_0_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>qtgui_freq_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>qtgui_time_sink_x_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>blocks_throttle_0</source_block_id>
- <sink_block_id>virtual_sink_1</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>channels_channel_model_0</source_block_id>
- <sink_block_id>digital_ofdm_rx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_chunks_to_symbols_xx_0</source_block_id>
- <sink_block_id>blocks_tagged_stream_mux_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_chunks_to_symbols_xx_0_0</source_block_id>
- <sink_block_id>blocks_tagged_stream_mux_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>1</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_crc32_bb_0</source_block_id>
- <sink_block_id>blocks_repack_bits_bb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_crc32_bb_0</source_block_id>
- <sink_block_id>digital_protocol_formatter_bb_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_carrier_allocator_cvc_0</source_block_id>
- <sink_block_id>fft_vxx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_cyclic_prefixer_0</source_block_id>
- <sink_block_id>virtual_sink_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_ofdm_rx_0</source_block_id>
- <sink_block_id>blocks_tag_debug_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>digital_protocol_formatter_bb_0</source_block_id>
- <sink_block_id>blocks_repack_bits_bb_0_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>fft_vxx_0</source_block_id>
- <sink_block_id>digital_ofdm_cyclic_prefixer_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0</source_block_id>
- <sink_block_id>digital_chunks_to_symbols_xx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0_0</source_block_id>
- <sink_block_id>digital_chunks_to_symbols_xx_0_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0_0_0</source_block_id>
- <sink_block_id>digital_ofdm_carrier_allocator_cvc_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_0_0_0_0</source_block_id>
- <sink_block_id>blocks_multiply_const_vxx_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
- <connection>
- <source_block_id>virtual_source_1</source_block_id>
- <sink_block_id>channels_channel_model_0</sink_block_id>
- <source_key>0</source_key>
- <sink_key>0</sink_key>
- </connection>
-</flow_graph>
+options:
+ parameters:
+ author: ''
+ category: Custom
+ cmake_opt: ''
+ comment: ''
+ copyright: ''
+ description: Example of an OFDM Transmitter
+ gen_cmake: 'On'
+ gen_linking: dynamic
+ generate_options: qt_gui
+ hier_block_src_path: '.:'
+ id: tx_ofdm
+ 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: OFDM Tx
+ window_size: 1280, 1024
+ states:
+ coordinate: [16, 12.0]
+ rotation: 0
+ state: enabled
+
+blocks:
+- name: fft_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '64'
+ states:
+ coordinate: [208, 12.0]
+ rotation: 0
+ state: enabled
+- name: hdr_format
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.header_format_ofdm(occupied_carriers, 1, length_tag_key,)
+ states:
+ coordinate: [912, 68.0]
+ rotation: 0
+ state: enabled
+- name: header_mod
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.constellation_bpsk()
+ states:
+ coordinate: [592, 12.0]
+ rotation: 0
+ state: enabled
+- name: length_tag_key
+ id: variable
+ parameters:
+ comment: ''
+ value: '"packet_len"'
+ states:
+ coordinate: [368, 12.0]
+ rotation: 0
+ state: enabled
+- name: occupied_carriers
+ id: variable
+ parameters:
+ comment: ''
+ value: (list(range(-26, -21)) + list(range(-20, -7)) + list(range(-6, 0)) + list(range(1,
+ 7)) + list(range(8, 21)) + list(range(22, 27)),)
+ states:
+ coordinate: [512, 68.0]
+ rotation: 0
+ state: enabled
+- name: packet_len
+ id: variable
+ parameters:
+ comment: ''
+ value: '96'
+ states:
+ coordinate: [496, 12.0]
+ rotation: 0
+ state: enabled
+- name: payload_mod
+ id: variable
+ parameters:
+ comment: ''
+ value: digital.constellation_qpsk()
+ states:
+ coordinate: [752, 12.0]
+ rotation: 0
+ state: enabled
+- name: pilot_carriers
+ id: variable
+ parameters:
+ comment: ''
+ value: ((-21, -7, 7, 21,),)
+ states:
+ coordinate: [672, 68.0]
+ rotation: 0
+ state: enabled
+- name: pilot_symbols
+ id: variable
+ parameters:
+ comment: ''
+ value: ((1, 1, 1, -1,),)
+ states:
+ coordinate: [800, 68.0]
+ rotation: 0
+ state: enabled
+- name: rolloff
+ id: variable
+ parameters:
+ comment: ''
+ value: '0'
+ states:
+ coordinate: [912, 12.0]
+ rotation: 0
+ state: enabled
+- name: samp_rate
+ id: variable
+ parameters:
+ comment: ''
+ value: '50000'
+ states:
+ coordinate: [272, 12.0]
+ rotation: 0
+ state: enabled
+- name: sync_word1
+ id: variable
+ parameters:
+ comment: ''
+ value: '[0., 0., 0., 0., 0., 0., 0., 1.41421356, 0., -1.41421356, 0., 1.41421356,
+ 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., 1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356,
+ 0., -1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., -1.41421356,
+ 0., 1.41421356, 0., 1.41421356, 0., 1.41421356, 0., 0., 0., 0., 0., 0.]'
+ states:
+ coordinate: [208, 68.0]
+ rotation: 0
+ state: enabled
+- name: sync_word2
+ id: variable
+ parameters:
+ comment: ''
+ value: '[0, 0, 0, 0, 0, 0, -1, -1, -1, -1, 1, 1, -1, -1, -1, 1, -1, 1, 1, 1, 1,
+ 1, -1, -1, -1, -1, -1, 1, -1, -1, 1, -1, 0, 1, -1, 1, 1, 1, -1, 1, 1, 1, -1,
+ 1, 1, 1, 1, -1, 1, -1, -1, -1, 1, -1, 1, -1, -1, -1, -1, 0, 0, 0, 0, 0] '
+ states:
+ coordinate: [336, 68.0]
+ rotation: 0
+ state: enabled
+- name: analog_random_source_x_0
+ id: analog_random_source_x
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ max: '255'
+ maxoutbuf: '0'
+ min: '0'
+ minoutbuf: '0'
+ num_samps: '1000'
+ repeat: 'True'
+ type: byte
+ states:
+ coordinate: [16, 164.0]
+ rotation: 0
+ state: enabled
+- name: blocks_multiply_const_vxx_0
+ id: blocks_multiply_const_vxx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ const: '0.05'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [200, 692.0]
+ rotation: 0
+ state: enabled
+- name: blocks_repack_bits_bb_0
+ id: blocks_repack_bits_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ align_output: 'False'
+ comment: ''
+ endianness: gr.GR_LSB_FIRST
+ k: '8'
+ l: payload_mod.bits_per_symbol()
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [640, 244.0]
+ rotation: 0
+ state: enabled
+- name: blocks_repack_bits_bb_0_0
+ id: blocks_repack_bits_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ align_output: 'False'
+ comment: ''
+ endianness: gr.GR_LSB_FIRST
+ k: '8'
+ l: '1'
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [880, 180.0]
+ rotation: 0
+ state: enabled
+- name: blocks_stream_to_tagged_stream_0
+ id: blocks_stream_to_tagged_stream
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ packet_len: packet_len
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [176, 180.0]
+ rotation: 0
+ state: enabled
+- name: blocks_tag_debug_0
+ id: blocks_tag_debug
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ display: 'False'
+ filter: '""'
+ name: Rx'd Packets
+ num_inputs: '1'
+ type: byte
+ vlen: '1'
+ states:
+ coordinate: [712, 828.0]
+ rotation: 0
+ state: enabled
+- name: blocks_tag_gate_0
+ id: blocks_tag_gate
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ propagate_tags: 'False'
+ single_key: '""'
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [360, 684.0]
+ rotation: 0
+ state: enabled
+- name: blocks_tagged_stream_mux_0
+ id: blocks_tagged_stream_mux
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ lengthtagname: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ ninputs: '2'
+ tag_preserve_head_pos: '0'
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [512, 360.0]
+ rotation: 0
+ state: enabled
+- name: blocks_throttle_0
+ id: blocks_throttle
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ ignoretag: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ samples_per_second: samp_rate
+ type: complex
+ vlen: '1'
+ states:
+ coordinate: [552, 692.0]
+ rotation: 0
+ state: enabled
+- name: channels_channel_model_0
+ id: channels_channel_model
+ parameters:
+ affinity: ''
+ alias: ''
+ block_tags: 'True'
+ comment: ''
+ epsilon: '1.0'
+ freq_offset: '0.0'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ noise_voltage: '0.0'
+ seed: '0'
+ taps: 1.0 + 1.0j
+ states:
+ coordinate: [200, 812.0]
+ rotation: 0
+ state: enabled
+- name: digital_chunks_to_symbols_xx_0
+ id: digital_chunks_to_symbols_xx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ dimension: '1'
+ in_type: byte
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ num_ports: '1'
+ out_type: complex
+ symbol_table: header_mod.points()
+ states:
+ coordinate: [216, 320.0]
+ rotation: 0
+ state: enabled
+- name: digital_chunks_to_symbols_xx_0_0
+ id: digital_chunks_to_symbols_xx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ dimension: '1'
+ in_type: byte
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ num_ports: '1'
+ out_type: complex
+ symbol_table: payload_mod.points()
+ states:
+ coordinate: [216, 392.0]
+ rotation: 0
+ state: enabled
+- name: digital_crc32_bb_0
+ id: digital_crc32_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ check: 'False'
+ comment: ''
+ lengthtagname: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ packed: 'True'
+ states:
+ coordinate: [384, 172.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_carrier_allocator_cvc_0
+ id: digital_ofdm_carrier_allocator_cvc
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ fft_len: fft_len
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: occupied_carriers
+ output_is_shifted: 'True'
+ pilot_carriers: pilot_carriers
+ pilot_symbols: pilot_symbols
+ sync_words: (sync_word1, sync_word2)
+ states:
+ coordinate: [200, 476.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_cyclic_prefixer_0
+ id: digital_ofdm_cyclic_prefixer
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ input_size: fft_len
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ rolloff: rolloff
+ tagname: length_tag_key
+ states:
+ coordinate: [624, 508.0]
+ rotation: 0
+ state: enabled
+- name: digital_ofdm_rx_0
+ id: digital_ofdm_rx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ cp_len: fft_len//4
+ fft_len: fft_len
+ header_mod: '"BPSK"'
+ log: 'False'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ occupied_carriers: occupied_carriers
+ packet_len_key: '"length"'
+ payload_mod: '"QPSK"'
+ pilot_carriers: pilot_carriers
+ pilot_symbols: pilot_symbols
+ scramble_bits: 'False'
+ sync_word1: sync_word1
+ sync_word2: sync_word2
+ states:
+ coordinate: [440, 764.0]
+ rotation: 0
+ state: enabled
+- name: digital_protocol_formatter_bb_0
+ id: digital_protocol_formatter_bb
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ format: hdr_format
+ len_tag_key: length_tag_key
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ states:
+ coordinate: [640, 180.0]
+ rotation: 0
+ state: enabled
+- name: fft_vxx_0
+ id: fft_vxx
+ parameters:
+ affinity: ''
+ alias: ''
+ comment: ''
+ fft_size: fft_len
+ forward: 'False'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ nthreads: '1'
+ shift: 'True'
+ type: complex
+ window: ()
+ states:
+ coordinate: [416, 492.0]
+ rotation: 0
+ state: enabled
+- name: header_bits
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Header Bits
+ states:
+ coordinate: [1088, 188.0]
+ rotation: 0
+ state: enabled
+- 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: 'True'
+ 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: ''
+ label: Relative Gain
+ label1: ''
+ label10: ''
+ label2: ''
+ label3: ''
+ label4: ''
+ label5: ''
+ label6: ''
+ label7: ''
+ label8: ''
+ label9: ''
+ legend: 'True'
+ maxoutbuf: '0'
+ minoutbuf: '0'
+ name: FFT Plot
+ nconnections: '1'
+ showports: 'True'
+ 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:
+ coordinate: [960, 756.0]
+ rotation: 0
+ state: enabled
+- name: qtgui_time_sink_x_0
+ id: qtgui_time_sink_x
+ parameters:
+ affinity: ''
+ alias: ''
+ alpha1: '1.0'
+ alpha10: '1.0'
+ alpha2: '1.0'
+ alpha3: '1.0'
+ alpha4: '1.0'
+ alpha5: '1.0'
+ alpha6: '1.0'
+ alpha7: '1.0'
+ alpha8: '1.0'
+ alpha9: '1.0'
+ autoscale: 'True'
+ axislabels: 'True'
+ color1: '"blue"'
+ color10: '"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: Scope Plot
+ 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: Scope Plot
+ 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:
+ coordinate: [960, 668.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_0
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Time Domain
+ states:
+ coordinate: [856, 524]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_0_0
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload Bits
+ states:
+ coordinate: [832, 252.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_0_0_0
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Pre-OFDM
+ states:
+ coordinate: [744, 372.0]
+ rotation: 0
+ state: enabled
+- name: virtual_sink_1
+ id: virtual_sink
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Tx Signal
+ states:
+ coordinate: [960, 620.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Header Bits
+ states:
+ coordinate: [8, 316.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Payload Bits
+ states:
+ coordinate: [8, 388.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0_0_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Pre-OFDM
+ states:
+ coordinate: [8, 524.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_0_0_0_0
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Time Domain
+ states:
+ coordinate: [8, 692.0]
+ rotation: 0
+ state: enabled
+- name: virtual_source_1
+ id: virtual_source
+ parameters:
+ alias: ''
+ comment: ''
+ stream_id: Tx Signal
+ states:
+ coordinate: [8, 844.0]
+ rotation: 0
+ state: enabled
+
+connections:
+- [analog_random_source_x_0, '0', blocks_stream_to_tagged_stream_0, '0']
+- [blocks_multiply_const_vxx_0, '0', blocks_tag_gate_0, '0']
+- [blocks_repack_bits_bb_0, '0', virtual_sink_0_0, '0']
+- [blocks_repack_bits_bb_0_0, '0', header_bits, '0']
+- [blocks_stream_to_tagged_stream_0, '0', digital_crc32_bb_0, '0']
+- [blocks_tag_gate_0, '0', blocks_throttle_0, '0']
+- [blocks_tagged_stream_mux_0, '0', virtual_sink_0_0_0, '0']
+- [blocks_throttle_0, '0', qtgui_freq_sink_x_0, '0']
+- [blocks_throttle_0, '0', qtgui_time_sink_x_0, '0']
+- [blocks_throttle_0, '0', virtual_sink_1, '0']
+- [channels_channel_model_0, '0', digital_ofdm_rx_0, '0']
+- [digital_chunks_to_symbols_xx_0, '0', blocks_tagged_stream_mux_0, '0']
+- [digital_chunks_to_symbols_xx_0_0, '0', blocks_tagged_stream_mux_0, '1']
+- [digital_crc32_bb_0, '0', blocks_repack_bits_bb_0, '0']
+- [digital_crc32_bb_0, '0', digital_protocol_formatter_bb_0, '0']
+- [digital_ofdm_carrier_allocator_cvc_0, '0', fft_vxx_0, '0']
+- [digital_ofdm_cyclic_prefixer_0, '0', virtual_sink_0, '0']
+- [digital_ofdm_rx_0, '0', blocks_tag_debug_0, '0']
+- [digital_protocol_formatter_bb_0, '0', blocks_repack_bits_bb_0_0, '0']
+- [fft_vxx_0, '0', digital_ofdm_cyclic_prefixer_0, '0']
+- [virtual_source_0, '0', digital_chunks_to_symbols_xx_0, '0']
+- [virtual_source_0_0, '0', digital_chunks_to_symbols_xx_0_0, '0']
+- [virtual_source_0_0_0, '0', digital_ofdm_carrier_allocator_cvc_0, '0']
+- [virtual_source_0_0_0_0, '0', blocks_multiply_const_vxx_0, '0']
+- [virtual_source_1, '0', channels_channel_model_0, '0']
+
+metadata:
+ file_format: 1
diff --git a/gr-digital/grc/digital_header_payload_demux.block.yml b/gr-digital/grc/digital_header_payload_demux.block.yml
index 8cccb65862..eae4b16e3b 100644
--- a/gr-digital/grc/digital_header_payload_demux.block.yml
+++ b/gr-digital/grc/digital_header_payload_demux.block.yml
@@ -12,7 +12,7 @@ parameters:
- id: items_per_symbol
label: Items per symbol
dtype: int
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'none' if output_symbols else 'part' }
- id: guard_interval
label: Guard Interval (items)
dtype: int
@@ -32,7 +32,7 @@ parameters:
dtype: enum
options: ['False', 'True']
option_labels: [Items, Symbols]
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'none' if output_symbols else 'part' }
- id: type
label: IO Type
dtype: enum
@@ -68,11 +68,11 @@ outputs:
- label: out_hdr
domain: stream
dtype: ${ type }
- vlen: '${ {True: items_per_symbol, False: 1}[output_symbols] }'
+ vlen: '${ items_per_symbol if output_symbols else 1 }'
- label: out_payload
domain: stream
dtype: ${ type }
- vlen: '${ {True: items_per_symbol, False: 1}[output_symbols] }'
+ vlen: '${ items_per_symbol if output_symbols else 1 }'
templates:
imports: from gnuradio import digital
diff --git a/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml b/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml
index 75e4daaeb8..e43a49f5ab 100644
--- a/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml
+++ b/gr-digital/grc/digital_ofdm_carrier_allocator_cvc.block.yml
@@ -6,7 +6,7 @@ parameters:
label: FFT length
dtype: int
default: fft_len
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'part' if fft_len == 1 else 'none' }
- id: occupied_carriers
label: Occupied Carriers
dtype: raw
diff --git a/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml b/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml
index 352c6ab5a7..849cac6d08 100644
--- a/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml
+++ b/gr-digital/grc/digital_ofdm_chanest_vcvc.block.yml
@@ -5,7 +5,7 @@ parameters:
- id: sync_symbol1
label: Synch. symbol 1
dtype: complex_vector
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'part' if len(sync_symbol1) == 1 else 'none' }
- id: sync_symbol2
label: Synch. symbol 2
dtype: complex_vector
diff --git a/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml b/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml
index b2eba18e64..a761e481e8 100644
--- a/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml
+++ b/gr-digital/grc/digital_ofdm_frame_equalizer_vcvc.block.yml
@@ -6,7 +6,7 @@ parameters:
label: FFT length
dtype: int
default: fft_len
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'part' if fft_len == 1 else 'none' }
- id: cp_len
label: CP length
dtype: int
diff --git a/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml b/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml
index d81dd569f7..c81b99043b 100644
--- a/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml
+++ b/gr-digital/grc/digital_ofdm_serializer_vcc.block.yml
@@ -6,7 +6,7 @@ parameters:
label: FFT length
dtype: int
default: fft_len
- hide: ${ 'part' if vlen == 1 else 'none' }
+ hide: ${ 'part' if fft_len == 1 else 'none' }
- id: occupied_carriers
label: Occupied Carriers
dtype: raw