diff options
Diffstat (limited to 'gr-digital/examples/ofdm/ofdm_loopback.grc')
-rw-r--r-- | gr-digital/examples/ofdm/ofdm_loopback.grc | 558 |
1 files changed, 291 insertions, 267 deletions
diff --git a/gr-digital/examples/ofdm/ofdm_loopback.grc b/gr-digital/examples/ofdm/ofdm_loopback.grc index 45a6ca0869..0207f68fc3 100644 --- a/gr-digital/examples/ofdm/ofdm_loopback.grc +++ b/gr-digital/examples/ofdm/ofdm_loopback.grc @@ -1,6 +1,6 @@ <?xml version='1.0' encoding='ASCII'?> <flow_graph> - <timestamp>Tue May 7 15:42:23 2013</timestamp> + <timestamp>Thu May 30 08:10:19 2013</timestamp> <block> <key>options</key> <param> @@ -107,54 +107,68 @@ </param> </block> <block> - <key>variable_slider</key> + <key>import</key> <param> <key>id</key> - <value>freq_offset</value> + <value>import_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>label</key> - <value>Frequency Offset (Multiples of Sub-carrier spacing)</value> + <key>import</key> + <value>import numpy</value> </param> <param> - <key>value</key> + <key>_coordinate</key> + <value>(536, -1)</value> + </param> + <param> + <key>_rotation</key> <value>0</value> </param> + </block> + <block> + <key>import</key> <param> - <key>min</key> - <value>-3</value> + <key>id</key> + <value>import_0_0</value> </param> <param> - <key>max</key> - <value>3</value> + <key>_enabled</key> + <value>True</value> </param> <param> - <key>num_steps</key> - <value>100</value> + <key>import</key> + <value>from gnuradio.digital.utils import tagged_streams</value> </param> <param> - <key>style</key> - <value>wx.SL_HORIZONTAL</value> + <key>_coordinate</key> + <value>(633, -1)</value> </param> <param> - <key>converver</key> - <value>float_converter</value> + <key>_rotation</key> + <value>0</value> </param> + </block> + <block> + <key>variable</key> <param> - <key>grid_pos</key> - <value></value> + <key>id</key> + <value>tx_signal</value> </param> <param> - <key>notebook</key> - <value></value> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>value</key> + <value>[numpy.sin(2 * numpy.pi * 1.0/8 * x) for x in range(8*2)]</value> </param> <param> <key>_coordinate</key> - <value>(652, 285)</value> + <value>(176, -1)</value> </param> <param> <key>_rotation</key> @@ -162,42 +176,105 @@ </param> </block> <block> - <key>variable_slider</key> + <key>blocks_throttle</key> <param> <key>id</key> - <value>noise_voltage</value> + <value>blocks_throttle_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>label</key> - <value>Noise Amplitude</value> + <key>type</key> + <value>complex</value> </param> <param> - <key>value</key> - <value>0.01</value> + <key>samples_per_second</key> + <value>100e3</value> </param> <param> - <key>min</key> + <key>vlen</key> + <value>1</value> + </param> + <param> + <key>_coordinate</key> + <value>(354, 230)</value> + </param> + <param> + <key>_rotation</key> + <value>180</value> + </param> + </block> + <block> + <key>wxgui_fftsink2</key> + <param> + <key>id</key> + <value>wxgui_fftsink2_0</value> + </param> + <param> + <key>_enabled</key> + <value>True</value> + </param> + <param> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>title</key> + <value>Rx Spectrum</value> + </param> + <param> + <key>samp_rate</key> + <value>100e3</value> + </param> + <param> + <key>baseband_freq</key> <value>0</value> </param> <param> - <key>max</key> - <value>1</value> + <key>y_per_div</key> + <value>10</value> </param> <param> - <key>num_steps</key> - <value>100</value> + <key>y_divs</key> + <value>10</value> </param> <param> - <key>style</key> - <value>wx.SL_HORIZONTAL</value> + <key>ref_level</key> + <value>0</value> </param> <param> - <key>converver</key> - <value>float_converter</value> + <key>ref_scale</key> + <value>2.0</value> + </param> + <param> + <key>fft_size</key> + <value>1024</value> + </param> + <param> + <key>fft_rate</key> + <value>15</value> + </param> + <param> + <key>peak_hold</key> + <value>False</value> + </param> + <param> + <key>average</key> + <value>False</value> + </param> + <param> + <key>avg_alpha</key> + <value>0</value> + </param> + <param> + <key>win</key> + <value>None</value> + </param> + <param> + <key>win_size</key> + <value></value> </param> <param> <key>grid_pos</key> @@ -208,8 +285,12 @@ <value></value> </param> <param> + <key>freqvar</key> + <value>None</value> + </param> + <param> <key>_coordinate</key> - <value>(651, 416)</value> + <value>(92, 463)</value> </param> <param> <key>_rotation</key> @@ -217,45 +298,38 @@ </param> </block> <block> - <key>import</key> + <key>blocks_vector_source_x</key> <param> <key>id</key> - <value>import_0</value> + <value>blocks_vector_source_x_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>import</key> - <value>import numpy</value> - </param> - <param> - <key>_coordinate</key> - <value>(536, -1)</value> + <key>type</key> + <value>float</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>vector</key> + <value>tx_signal</value> </param> - </block> - <block> - <key>import</key> <param> - <key>id</key> - <value>import_0_0</value> + <key>tags</key> + <value>tagged_streams.make_lengthtags((8*2*gr.sizeof_float,), (0,), tagname=len_tag_key)</value> </param> <param> - <key>_enabled</key> + <key>repeat</key> <value>True</value> </param> <param> - <key>import</key> - <value>from gnuradio.digital.utils import tagged_streams</value> + <key>vlen</key> + <value>1</value> </param> <param> <key>_coordinate</key> - <value>(633, -1)</value> + <value>(-1, 101)</value> </param> <param> <key>_rotation</key> @@ -263,10 +337,10 @@ </param> </block> <block> - <key>digital_ofdm_tx</key> + <key>digital_ofdm_rx</key> <param> <key>id</key> - <value>digital_ofdm_tx_0</value> + <value>digital_ofdm_rx_0</value> </param> <param> <key>_enabled</key> @@ -282,7 +356,7 @@ </param> <param> <key>packet_len_key</key> - <value>len_tag_key</value> + <value>"rx_len"</value> </param> <param> <key>occupied_carriers</key> @@ -313,16 +387,12 @@ <value>"BPSK"</value> </param> <param> - <key>rolloff</key> - <value>0</value> - </param> - <param> <key>log</key> <value>False</value> </param> <param> <key>_coordinate</key> - <value>(390, 78)</value> + <value>(92, 307)</value> </param> <param> <key>_rotation</key> @@ -330,18 +400,30 @@ </param> </block> <block> - <key>blocks_float_to_uchar</key> + <key>blocks_vector_to_stream</key> <param> <key>id</key> - <value>blocks_float_to_uchar_0</value> + <value>blocks_vector_to_stream_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> + <key>type</key> + <value>byte</value> + </param> + <param> + <key>num_items</key> + <value>4</value> + </param> + <param> + <key>vlen</key> + <value>1</value> + </param> + <param> <key>_coordinate</key> - <value>(230, 119)</value> + <value>(256, 117)</value> </param> <param> <key>_rotation</key> @@ -349,61 +431,54 @@ </param> </block> <block> - <key>variable</key> + <key>variable_slider</key> <param> <key>id</key> - <value>tx_signal</value> + <value>freq_offset</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>value</key> - <value>[numpy.sin(2 * numpy.pi * 1.0/8 * x) for x in range(8*2)]</value> - </param> - <param> - <key>_coordinate</key> - <value>(176, -1)</value> + <key>label</key> + <value>Frequency Offset (Multiples of Sub-carrier spacing)</value> </param> <param> - <key>_rotation</key> + <key>value</key> <value>0</value> </param> - </block> - <block> - <key>blocks_vector_source_x</key> <param> - <key>id</key> - <value>blocks_vector_source_x_0</value> + <key>min</key> + <value>-3</value> </param> <param> - <key>_enabled</key> - <value>True</value> + <key>max</key> + <value>3</value> </param> <param> - <key>type</key> - <value>float</value> + <key>num_steps</key> + <value>100</value> </param> <param> - <key>vector</key> - <value>tx_signal</value> + <key>style</key> + <value>wx.SL_HORIZONTAL</value> </param> <param> - <key>tags</key> - <value>tagged_streams.make_lengthtags((8*2*gr.sizeof_float,), (0,), tagname=len_tag_key)</value> + <key>converver</key> + <value>float_converter</value> </param> <param> - <key>repeat</key> - <value>True</value> + <key>grid_pos</key> + <value></value> </param> <param> - <key>vlen</key> - <value>1</value> + <key>notebook</key> + <value></value> </param> <param> <key>_coordinate</key> - <value>(-1, 101)</value> + <value>(727, 282)</value> </param> <param> <key>_rotation</key> @@ -411,41 +486,65 @@ </param> </block> <block> - <key>blocks_throttle</key> + <key>variable_slider</key> <param> <key>id</key> - <value>blocks_throttle_0</value> + <value>noise_voltage</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>type</key> - <value>complex</value> + <key>label</key> + <value>Noise Amplitude</value> </param> <param> - <key>samples_per_second</key> - <value>100e3</value> + <key>value</key> + <value>0.01</value> </param> <param> - <key>vlen</key> + <key>min</key> + <value>0</value> + </param> + <param> + <key>max</key> <value>1</value> </param> <param> + <key>num_steps</key> + <value>100</value> + </param> + <param> + <key>style</key> + <value>wx.SL_HORIZONTAL</value> + </param> + <param> + <key>converver</key> + <value>float_converter</value> + </param> + <param> + <key>grid_pos</key> + <value></value> + </param> + <param> + <key>notebook</key> + <value></value> + </param> + <param> <key>_coordinate</key> - <value>(354, 230)</value> + <value>(726, 457)</value> </param> <param> <key>_rotation</key> - <value>180</value> + <value>0</value> </param> </block> <block> - <key>blocks_tag_gate</key> + <key>blocks_stream_to_vector</key> <param> <key>id</key> - <value>blocks_tag_gate_0</value> + <value>blocks_stream_to_vector_0</value> </param> <param> <key>_enabled</key> @@ -453,30 +552,30 @@ </param> <param> <key>type</key> - <value>complex</value> + <value>byte</value> </param> <param> - <key>vlen</key> - <value>1</value> + <key>num_items</key> + <value>4</value> </param> <param> - <key>propagate_tags</key> - <value>False</value> + <key>vlen</key> + <value>1</value> </param> <param> <key>_coordinate</key> - <value>(539, 230)</value> + <value>(369, 339)</value> </param> <param> <key>_rotation</key> - <value>180</value> + <value>0</value> </param> </block> <block> - <key>wxgui_fftsink2</key> + <key>wxgui_scopesink2</key> <param> <key>id</key> - <value>wxgui_fftsink2_0</value> + <value>wxgui_scopesink2_0</value> </param> <param> <key>_enabled</key> @@ -484,59 +583,39 @@ </param> <param> <key>type</key> - <value>complex</value> + <value>float</value> </param> <param> <key>title</key> - <value>Rx Spectrum</value> + <value>Scope Plot</value> </param> <param> <key>samp_rate</key> - <value>100e3</value> + <value>1.0</value> </param> <param> - <key>baseband_freq</key> + <key>v_scale</key> <value>0</value> </param> <param> - <key>y_per_div</key> - <value>10</value> - </param> - <param> - <key>y_divs</key> - <value>10</value> - </param> - <param> - <key>ref_level</key> + <key>v_offset</key> <value>0</value> </param> <param> - <key>ref_scale</key> - <value>2.0</value> - </param> - <param> - <key>fft_size</key> - <value>1024</value> - </param> - <param> - <key>fft_rate</key> - <value>15</value> + <key>t_scale</key> + <value>0</value> </param> <param> - <key>peak_hold</key> + <key>ac_couple</key> <value>False</value> </param> <param> - <key>average</key> + <key>xy_mode</key> <value>False</value> </param> <param> - <key>avg_alpha</key> - <value>0</value> - </param> - <param> - <key>win</key> - <value>None</value> + <key>num_inputs</key> + <value>1</value> </param> <param> <key>win_size</key> @@ -551,12 +630,16 @@ <value></value> </param> <param> - <key>freqvar</key> - <value>None</value> + <key>trig_mode</key> + <value>wxgui.TRIG_MODE_AUTO</value> + </param> + <param> + <key>y_axis_label</key> + <value>Counts</value> </param> <param> <key>_coordinate</key> - <value>(92, 463)</value> + <value>(565, 315)</value> </param> <param> <key>_rotation</key> @@ -564,38 +647,38 @@ </param> </block> <block> - <key>channel_model</key> + <key>blocks_tag_debug</key> <param> <key>id</key> - <value>chan_model</value> + <value>blocks_tag_debug_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>noise_voltage</key> - <value>noise_voltage</value> + <key>type</key> + <value>byte</value> </param> <param> - <key>freq_offset</key> - <value>1.0/fft_len * freq_offset</value> + <key>name</key> + <value>Rx Packets</value> </param> <param> - <key>epsilon</key> - <value>1.0</value> + <key>num_inputs</key> + <value>1</value> </param> <param> - <key>taps</key> - <value>1.0</value> + <key>vlen</key> + <value>1</value> </param> <param> - <key>seed</key> - <value>0</value> + <key>display</key> + <value>True</value> </param> <param> <key>_coordinate</key> - <value>(615, 86)</value> + <value>(366, 416)</value> </param> <param> <key>_rotation</key> @@ -603,14 +686,14 @@ </param> </block> <block> - <key>digital_ofdm_rx</key> + <key>digital_ofdm_tx</key> <param> <key>id</key> - <value>digital_ofdm_rx_0</value> + <value>digital_ofdm_tx_0</value> </param> <param> <key>_enabled</key> - <value>False</value> + <value>True</value> </param> <param> <key>fft_len</key> @@ -622,7 +705,7 @@ </param> <param> <key>packet_len_key</key> - <value>"rx_len"</value> + <value>len_tag_key</value> </param> <param> <key>occupied_carriers</key> @@ -653,31 +736,16 @@ <value>"BPSK"</value> </param> <param> - <key>log</key> - <value>False</value> - </param> - <param> - <key>_coordinate</key> - <value>(92, 307)</value> - </param> - <param> - <key>_rotation</key> + <key>rolloff</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> + <key>log</key> <value>False</value> </param> <param> <key>_coordinate</key> - <value>(332, 340)</value> + <value>(455, 77)</value> </param> <param> <key>_rotation</key> @@ -685,113 +753,69 @@ </param> </block> <block> - <key>blocks_tag_debug</key> + <key>blocks_tag_gate</key> <param> <key>id</key> - <value>blocks_tag_debug_0</value> + <value>blocks_tag_gate_0</value> </param> <param> <key>_enabled</key> - <value>False</value> + <value>True</value> </param> <param> <key>type</key> - <value>byte</value> - </param> - <param> - <key>name</key> - <value>Rx Packets</value> - </param> - <param> - <key>num_inputs</key> - <value>1</value> + <value>complex</value> </param> <param> <key>vlen</key> <value>1</value> </param> <param> - <key>display</key> - <value>True</value> + <key>propagate_tags</key> + <value>False</value> </param> <param> <key>_coordinate</key> - <value>(336, 412)</value> + <value>(539, 230)</value> </param> <param> <key>_rotation</key> - <value>0</value> + <value>180</value> </param> </block> <block> - <key>wxgui_scopesink2</key> + <key>channels_channel_model</key> <param> <key>id</key> - <value>wxgui_scopesink2_0</value> + <value>channels_channel_model_0</value> </param> <param> <key>_enabled</key> - <value>False</value> + <value>True</value> </param> <param> - <key>type</key> - <value>float</value> + <key>noise_voltage</key> + <value>noise_voltage</value> </param> <param> - <key>title</key> - <value>Scope Plot</value> + <key>freq_offset</key> + <value>1.0/fft_len * freq_offset</value> </param> <param> - <key>samp_rate</key> + <key>epsilon</key> <value>1.0</value> </param> <param> - <key>v_scale</key> - <value>0</value> - </param> - <param> - <key>v_offset</key> - <value>0</value> + <key>taps</key> + <value>1.0 + 1.0j</value> </param> <param> - <key>t_scale</key> + <key>seed</key> <value>0</value> </param> <param> - <key>ac_couple</key> - <value>False</value> - </param> - <param> - <key>xy_mode</key> - <value>False</value> - </param> - <param> - <key>num_inputs</key> - <value>1</value> - </param> - <param> - <key>win_size</key> - <value></value> - </param> - <param> - <key>grid_pos</key> - <value></value> - </param> - <param> - <key>notebook</key> - <value></value> - </param> - <param> - <key>trig_mode</key> - <value>gr.gr_TRIG_MODE_AUTO</value> - </param> - <param> - <key>y_axis_label</key> - <value>Counts</value> - </param> - <param> <key>_coordinate</key> - <value>(504, 314)</value> + <value>(775, 85)</value> </param> <param> <key>_rotation</key> @@ -799,62 +823,62 @@ </param> </block> <connection> - <source_block_id>blocks_vector_source_x_0</source_block_id> - <sink_block_id>blocks_float_to_uchar_0</sink_block_id> + <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>digital_ofdm_tx_0</source_block_id> - <sink_block_id>chan_model</sink_block_id> + <source_block_id>blocks_throttle_0</source_block_id> + <sink_block_id>wxgui_fftsink2_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>blocks_float_to_uchar_0</source_block_id> - <sink_block_id>digital_ofdm_tx_0</sink_block_id> + <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>blocks_throttle_0</source_block_id> - <sink_block_id>digital_ofdm_rx_0</sink_block_id> + <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_throttle_0</source_block_id> - <sink_block_id>wxgui_fftsink2_0</sink_block_id> + <source_block_id>blocks_vector_source_x_0</source_block_id> + <sink_block_id>blocks_vector_to_stream_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_block_id>blocks_vector_to_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>blocks_uchar_to_float_0</source_block_id> - <sink_block_id>wxgui_scopesink2_0</sink_block_id> + <source_block_id>digital_ofdm_rx_0</source_block_id> + <sink_block_id>blocks_stream_to_vector_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_block_id>blocks_stream_to_vector_0</source_block_id> + <sink_block_id>wxgui_scopesink2_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>chan_model</source_block_id> - <sink_block_id>blocks_tag_gate_0</sink_block_id> + <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_tag_gate_0</source_block_id> - <sink_block_id>blocks_throttle_0</sink_block_id> + <source_block_id>channels_channel_model_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> |