diff options
author | Johnathan Corgan <jcorgan@corganenterprises.com> | 2009-09-20 12:47:34 -0700 |
---|---|---|
committer | Johnathan Corgan <jcorgan@corganenterprises.com> | 2009-09-20 12:47:34 -0700 |
commit | 2628e9cddc43d57a3346e240c8f7e58722bc61f1 (patch) | |
tree | 03f8ea7ef3bdef40b1354b670c2ec135ee8feb69 /gr-noaa/apps | |
parent | e2216220f85d3e9d93db3946aa0e68e59309d1c2 (diff) |
Add HRPT word output to deframer
Put in half bit width matched filter
Change default sync_alpha to 0.05
Diffstat (limited to 'gr-noaa/apps')
-rw-r--r-- | gr-noaa/apps/usrp_rx_hrpt.grc | 545 | ||||
-rwxr-xr-x | gr-noaa/apps/usrp_rx_hrpt.py | 46 |
2 files changed, 210 insertions, 381 deletions
diff --git a/gr-noaa/apps/usrp_rx_hrpt.grc b/gr-noaa/apps/usrp_rx_hrpt.grc index 715846743e..c8e099611e 100644 --- a/gr-noaa/apps/usrp_rx_hrpt.grc +++ b/gr-noaa/apps/usrp_rx_hrpt.grc @@ -1,6 +1,6 @@ <?xml version='1.0' encoding='ASCII'?> <flow_graph> - <timestamp>Tue Sep 8 21:03:12 2009</timestamp> + <timestamp>Sun Sep 20 12:45:30 2009</timestamp> <block> <key>options</key> <param> @@ -76,37 +76,6 @@ </param> </block> <block> - <key>gr_throttle</key> - <param> - <key>id</key> - <value>throttle</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>sample_rate</value> - </param> - <param> - <key>vlen</key> - <value>1</value> - </param> - <param> - <key>_coordinate</key> - <value>(79, 518)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - </block> - <block> <key>variable</key> <param> <key>id</key> @@ -277,61 +246,6 @@ </param> </block> <block> - <key>variable_slider</key> - <param> - <key>id</key> - <value>sync_alpha</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> - </param> - <param> - <key>label</key> - <value>SYNC Alpha</value> - </param> - <param> - <key>value</key> - <value>0.001</value> - </param> - <param> - <key>min</key> - <value>0.0</value> - </param> - <param> - <key>max</key> - <value>0.5</value> - </param> - <param> - <key>num_steps</key> - <value>500</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>0, 1, 1, 1</value> - </param> - <param> - <key>notebook</key> - <value></value> - </param> - <param> - <key>_coordinate</key> - <value>(344, 101)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - </block> - <block> <key>variable</key> <param> <key>id</key> @@ -378,38 +292,34 @@ </param> </block> <block> - <key>gr_agc_xx</key> + <key>notebook</key> <param> <key>id</key> - <value>agr</value> + <value>displays</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>type</key> - <value>complex</value> - </param> - <param> - <key>rate</key> - <value>1e-6</value> + <key>style</key> + <value>wx.NB_TOP</value> </param> <param> - <key>reference</key> - <value>1.0</value> + <key>labels</key> + <value>['RX','PLL/SYNC']</value> </param> <param> - <key>gain</key> - <value>1.0</value> + <key>grid_pos</key> + <value>1, 0, 1, 2</value> </param> <param> - <key>max_gain</key> - <value>1.0</value> + <key>notebook</key> + <value></value> </param> <param> <key>_coordinate</key> - <value>(261, 494)</value> + <value>(9, 99)</value> </param> <param> <key>_rotation</key> @@ -417,22 +327,18 @@ </param> </block> <block> - <key>virtual_source</key> + <key>noaa_hrpt_deframer</key> <param> <key>id</key> - <value>virtual_source_0</value> + <value>noaa_hrpt_deframer_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>stream_id</key> - <value>bits</value> - </param> - <param> <key>_coordinate</key> - <value>(283, 919)</value> + <value>(1112, 649)</value> </param> <param> <key>_rotation</key> @@ -440,88 +346,89 @@ </param> </block> <block> - <key>notebook</key> + <key>wxgui_scopesink2</key> <param> <key>id</key> - <value>displays</value> + <value>wxgui_scopesink2_0_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>style</key> - <value>wx.NB_TOP</value> - </param> - <param> - <key>labels</key> - <value>['RX','PLL/SYNC']</value> + <key>type</key> + <value>float</value> </param> <param> - <key>grid_pos</key> - <value>1, 0, 1, 2</value> + <key>title</key> + <value>Post-PLL</value> </param> <param> - <key>notebook</key> - <value></value> + <key>samp_rate</key> + <value>sample_rate</value> </param> <param> - <key>_coordinate</key> - <value>(9, 99)</value> + <key>v_scale</key> + <value>0.5</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>t_scale</key> + <value>20.0/sample_rate</value> </param> - </block> - <block> - <key>noaa_hrpt_pll_cf</key> <param> - <key>id</key> - <value>noaa_hrpt_pll_cf_0</value> + <key>ac_couple</key> + <value>False</value> </param> <param> - <key>_enabled</key> - <value>True</value> + <key>xy_mode</key> + <value>False</value> </param> <param> - <key>alpha</key> - <value>pll_alpha</value> + <key>num_inputs</key> + <value>1</value> </param> <param> - <key>beta</key> - <value>pll_alpha**2/4.0</value> + <key>grid_pos</key> + <value>0, 0, 1, 1</value> </param> <param> - <key>max_offset</key> - <value>max_carrier_offset</value> + <key>notebook</key> + <value>displays, 1</value> </param> <param> <key>_coordinate</key> - <value>(639, 502)</value> + <value>(624, 462)</value> </param> <param> <key>_rotation</key> - <value>0</value> + <value>180</value> </param> </block> <block> - <key>virtual_sink</key> + <key>gr_throttle</key> <param> <key>id</key> - <value>virtual_sink_1</value> + <value>throttle</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>stream_id</key> - <value>bits</value> + <key>type</key> + <value>complex</value> + </param> + <param> + <key>samples_per_second</key> + <value>sample_rate</value> + </param> + <param> + <key>vlen</key> + <value>1</value> </param> <param> <key>_coordinate</key> - <value>(1126, 518)</value> + <value>(85, 645)</value> </param> <param> <key>_rotation</key> @@ -529,81 +436,82 @@ </param> </block> <block> - <key>gr_char_to_float</key> + <key>wxgui_fftsink2</key> <param> <key>id</key> - <value>gr_char_to_float_0</value> + <value>rx_fftsink</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>_coordinate</key> - <value>(477, 923)</value> + <key>type</key> + <value>complex</value> </param> <param> - <key>_rotation</key> - <value>0</value> + <key>title</key> + <value>RX Spectrum</value> </param> - </block> - <block> - <key>wxgui_scopesink2</key> <param> - <key>id</key> - <value>wxgui_scopesink2_0_0_0_0</value> + <key>samp_rate</key> + <value>sample_rate</value> </param> <param> - <key>_enabled</key> - <value>True</value> + <key>baseband_freq</key> + <value>1698e6</value> </param> <param> - <key>type</key> - <value>float</value> + <key>y_per_div</key> + <value>5</value> </param> <param> - <key>title</key> - <value>Post-SYNC</value> + <key>y_divs</key> + <value>8</value> </param> <param> - <key>samp_rate</key> - <value>sym_rate</value> + <key>ref_level</key> + <value>-5</value> </param> <param> - <key>v_scale</key> - <value>0.5</value> + <key>ref_scale</key> + <value>2.0</value> </param> <param> - <key>t_scale</key> - <value>20.0/sym_rate</value> + <key>fft_size</key> + <value>1024</value> </param> <param> - <key>ac_couple</key> - <value>False</value> + <key>fft_rate</key> + <value>30</value> </param> <param> - <key>xy_mode</key> + <key>peak_hold</key> <value>False</value> </param> <param> - <key>num_inputs</key> - <value>1</value> + <key>average</key> + <value>True</value> + </param> + <param> + <key>avg_alpha</key> + <value>0.1</value> </param> <param> <key>grid_pos</key> - <value>1, 0, 1, 1</value> + <value>0, 0, 1, 1</value> </param> <param> <key>notebook</key> - <value>displays, 1</value> + <value>displays, 0</value> </param> <param> <key>_coordinate</key> - <value>(452, 990)</value> + <value>(439, 309)</value> </param> <param> <key>_rotation</key> - <value>180</value> + <value>0</value> </param> </block> <block> @@ -658,7 +566,7 @@ </param> <param> <key>_coordinate</key> - <value>(433, 570)</value> + <value>(440, 783)</value> </param> <param> <key>_rotation</key> @@ -666,10 +574,10 @@ </param> </block> <block> - <key>wxgui_scopesink2</key> + <key>gr_agc_xx</key> <param> <key>id</key> - <value>wxgui_scopesink2_0_0</value> + <value>agr</value> </param> <param> <key>_enabled</key> @@ -677,58 +585,38 @@ </param> <param> <key>type</key> - <value>float</value> - </param> - <param> - <key>title</key> - <value>Post-PLL</value> - </param> - <param> - <key>samp_rate</key> - <value>sample_rate</value> - </param> - <param> - <key>v_scale</key> - <value>0.5</value> - </param> - <param> - <key>t_scale</key> - <value>20.0/sample_rate</value> - </param> - <param> - <key>ac_couple</key> - <value>False</value> + <value>complex</value> </param> <param> - <key>xy_mode</key> - <value>False</value> + <key>rate</key> + <value>1e-6</value> </param> <param> - <key>num_inputs</key> - <value>1</value> + <key>reference</key> + <value>1.0</value> </param> <param> - <key>grid_pos</key> - <value>0, 0, 1, 1</value> + <key>gain</key> + <value>1.0</value> </param> <param> - <key>notebook</key> - <value>displays, 1</value> + <key>max_gain</key> + <value>1.0</value> </param> <param> <key>_coordinate</key> - <value>(618, 335)</value> + <value>(267, 621)</value> </param> <param> <key>_rotation</key> - <value>180</value> + <value>0</value> </param> </block> <block> - <key>noaa_hrpt_sync_fb</key> + <key>noaa_hrpt_pll_cf</key> <param> <key>id</key> - <value>noaa_hrpt_sync_fb_0</value> + <value>noaa_hrpt_pll_cf_0</value> </param> <param> <key>_enabled</key> @@ -736,42 +624,19 @@ </param> <param> <key>alpha</key> - <value>0.001</value> + <value>pll_alpha</value> </param> <param> <key>beta</key> - <value>0.001**2/4.0</value> - </param> - <param> - <key>sps</key> - <value>sps</value> + <value>pll_alpha**2/4.0</value> </param> <param> <key>max_offset</key> - <value>max_sync_offset</value> - </param> - <param> - <key>_coordinate</key> - <value>(856, 494)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - </block> - <block> - <key>noaa_hrpt_deframer</key> - <param> - <key>id</key> - <value>noaa_hrpt_deframer_0</value> - </param> - <param> - <key>_enabled</key> - <value>True</value> + <value>max_carrier_offset</value> </param> <param> <key>_coordinate</key> - <value>(1110, 631)</value> + <value>(645, 629)</value> </param> <param> <key>_rotation</key> @@ -779,10 +644,10 @@ </param> </block> <block> - <key>gr_file_source</key> + <key>gr_file_sink</key> <param> <key>id</key> - <value>src</value> + <value>gr_file_sink_1</value> </param> <param> <key>_enabled</key> @@ -790,15 +655,11 @@ </param> <param> <key>file</key> - <value>poes-d16.dat</value> + <value>frames.dat</value> </param> <param> <key>type</key> - <value>complex</value> - </param> - <param> - <key>repeat</key> - <value>True</value> + <value>short</value> </param> <param> <key>vlen</key> @@ -806,7 +667,7 @@ </param> <param> <key>_coordinate</key> - <value>(34, 423)</value> + <value>(1125, 758)</value> </param> <param> <key>_rotation</key> @@ -814,49 +675,34 @@ </param> </block> <block> - <key>gr_add_const_vxx</key> + <key>gr_moving_average_xx</key> <param> <key>id</key> - <value>gr_add_const_vxx_0</value> + <value>matched_filter</value> </param> <param> <key>_enabled</key> - <value>False</value> + <value>True</value> </param> <param> <key>type</key> - <value>float</value> + <value>complex</value> </param> <param> - <key>const</key> - <value>48.0</value> + <key>length</key> + <value>hs</value> </param> <param> - <key>vlen</key> - <value>1</value> + <key>scale</key> + <value>1.0/hs</value> </param> <param> - <key>_coordinate</key> - <value>(692, 919)</value> - </param> - <param> - <key>_rotation</key> - <value>0</value> - </param> - </block> - <block> - <key>gr_float_to_char</key> - <param> - <key>id</key> - <value>gr_float_to_char_0</value> - </param> - <param> - <key>_enabled</key> - <value>False</value> + <key>max_iter</key> + <value>4000</value> </param> <param> <key>_coordinate</key> - <value>(848, 923)</value> + <value>(444, 629)</value> </param> <param> <key>_rotation</key> @@ -864,22 +710,26 @@ </param> </block> <block> - <key>gr_file_sink</key> + <key>gr_file_source</key> <param> <key>id</key> - <value>gr_file_sink_0</value> + <value>src</value> </param> <param> <key>_enabled</key> - <value>False</value> + <value>True</value> </param> <param> <key>file</key> - <value>bits.dat</value> + <value>poes-d16.dat</value> </param> <param> <key>type</key> - <value>byte</value> + <value>complex</value> + </param> + <param> + <key>repeat</key> + <value>False</value> </param> <param> <key>vlen</key> @@ -887,7 +737,7 @@ </param> <param> <key>_coordinate</key> - <value>(1020, 919)</value> + <value>(79, 541)</value> </param> <param> <key>_rotation</key> @@ -895,78 +745,89 @@ </param> </block> <block> - <key>wxgui_fftsink2</key> + <key>noaa_hrpt_sync_fb</key> <param> <key>id</key> - <value>rx_fftsink</value> + <value>noaa_hrpt_sync_fb_0</value> </param> <param> <key>_enabled</key> <value>True</value> </param> <param> - <key>type</key> - <value>complex</value> + <key>alpha</key> + <value>sync_alpha</value> </param> <param> - <key>title</key> - <value>RX Spectrum</value> + <key>beta</key> + <value>sync_alpha**2/4.0</value> </param> <param> - <key>samp_rate</key> - <value>sample_rate</value> + <key>sps</key> + <value>sps</value> </param> <param> - <key>baseband_freq</key> - <value>1698e6</value> + <key>max_offset</key> + <value>max_sync_offset</value> </param> <param> - <key>y_per_div</key> - <value>5</value> + <key>_coordinate</key> + <value>(862, 621)</value> </param> <param> - <key>y_divs</key> - <value>8</value> + <key>_rotation</key> + <value>0</value> </param> + </block> + <block> + <key>variable_slider</key> <param> - <key>ref_level</key> - <value>-5</value> + <key>id</key> + <value>sync_alpha</value> </param> <param> - <key>ref_scale</key> - <value>2.0</value> + <key>_enabled</key> + <value>True</value> </param> <param> - <key>fft_size</key> - <value>1024</value> + <key>label</key> + <value>SYNC Alpha</value> </param> <param> - <key>fft_rate</key> - <value>30</value> + <key>value</key> + <value>0.005</value> </param> <param> - <key>peak_hold</key> - <value>False</value> + <key>min</key> + <value>0.0</value> </param> <param> - <key>average</key> - <value>True</value> + <key>max</key> + <value>0.5</value> </param> <param> - <key>avg_alpha</key> - <value>0.1</value> + <key>num_steps</key> + <value>500</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>0, 0, 1, 1</value> + <value>0, 1, 1, 1</value> </param> <param> <key>notebook</key> - <value>displays, 0</value> + <value></value> </param> <param> <key>_coordinate</key> - <value>(434, 269)</value> + <value>(344, 101)</value> </param> <param> <key>_rotation</key> @@ -974,86 +835,62 @@ </param> </block> <connection> - <source_block_id>src</source_block_id> - <sink_block_id>throttle</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>throttle</source_block_id> - <sink_block_id>agr</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>agr</source_block_id> - <sink_block_id>rx_fftsink</sink_block_id> - <source_key>0</source_key> - <sink_key>0</sink_key> - </connection> - <connection> - <source_block_id>agr</source_block_id> - <sink_block_id>wxgui_scopesink2_0</sink_block_id> + <source_block_id>noaa_hrpt_deframer_0</source_block_id> + <sink_block_id>gr_file_sink_1</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>agr</source_block_id> - <sink_block_id>noaa_hrpt_pll_cf_0</sink_block_id> + <source_block_id>noaa_hrpt_sync_fb_0</source_block_id> + <sink_block_id>noaa_hrpt_deframer_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>noaa_hrpt_pll_cf_0</source_block_id> - <sink_block_id>wxgui_scopesink2_0_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>gr_char_to_float_0</sink_block_id> + <sink_block_id>noaa_hrpt_sync_fb_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> <source_block_id>noaa_hrpt_pll_cf_0</source_block_id> - <sink_block_id>noaa_hrpt_sync_fb_0</sink_block_id> + <sink_block_id>wxgui_scopesink2_0_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>noaa_hrpt_sync_fb_0</source_block_id> - <sink_block_id>virtual_sink_1</sink_block_id> + <source_block_id>agr</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>gr_char_to_float_0</source_block_id> - <sink_block_id>wxgui_scopesink2_0_0_0_0</sink_block_id> + <source_block_id>agr</source_block_id> + <sink_block_id>rx_fftsink</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>gr_char_to_float_0</source_block_id> - <sink_block_id>gr_add_const_vxx_0</sink_block_id> + <source_block_id>throttle</source_block_id> + <sink_block_id>agr</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>gr_add_const_vxx_0</source_block_id> - <sink_block_id>gr_float_to_char_0</sink_block_id> + <source_block_id>src</source_block_id> + <sink_block_id>throttle</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>gr_float_to_char_0</source_block_id> - <sink_block_id>gr_file_sink_0</sink_block_id> + <source_block_id>agr</source_block_id> + <sink_block_id>matched_filter</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> <connection> - <source_block_id>noaa_hrpt_sync_fb_0</source_block_id> - <sink_block_id>noaa_hrpt_deframer_0</sink_block_id> + <source_block_id>matched_filter</source_block_id> + <sink_block_id>noaa_hrpt_pll_cf_0</sink_block_id> <source_key>0</source_key> <sink_key>0</sink_key> </connection> diff --git a/gr-noaa/apps/usrp_rx_hrpt.py b/gr-noaa/apps/usrp_rx_hrpt.py index 40cc517fc1..032db315d6 100755 --- a/gr-noaa/apps/usrp_rx_hrpt.py +++ b/gr-noaa/apps/usrp_rx_hrpt.py @@ -2,7 +2,7 @@ ################################################## # Gnuradio Python Flow Graph # Title: USRP HRPT Receiver -# Generated: Tue Sep 8 21:03:12 2009 +# Generated: Sun Sep 20 12:45:30 2009 ################################################## from gnuradio import eng_notation @@ -30,7 +30,7 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): self.sym_rate = sym_rate = 600*1109 self.sample_rate = sample_rate = 64e6/decim self.sps = sps = sample_rate/sym_rate - self.sync_alpha = sync_alpha = 0.001 + self.sync_alpha = sync_alpha = 0.005 self.pll_alpha = pll_alpha = 0.001 self.max_sync_offset = max_sync_offset = 0.01 self.max_carrier_offset = max_carrier_offset = 2*math.pi*100e3/sample_rate @@ -98,10 +98,11 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): # Blocks ################################################## self.agr = gr.agc_cc(1e-6, 1.0, 1.0, 1.0) - self.gr_char_to_float_0 = gr.char_to_float() + self.gr_file_sink_1 = gr.file_sink(gr.sizeof_short*1, "frames.dat") + self.matched_filter = gr.moving_average_cc(hs, 1.0/hs, 4000) self.noaa_hrpt_deframer_0 = noaa.hrpt_deframer() self.noaa_hrpt_pll_cf_0 = noaa.hrpt_pll_cf(pll_alpha, pll_alpha**2/4.0, max_carrier_offset) - self.noaa_hrpt_sync_fb_0 = noaa.hrpt_sync_fb(0.001, 0.001**2/4.0, sps, max_sync_offset) + self.noaa_hrpt_sync_fb_0 = noaa.hrpt_sync_fb(sync_alpha, sync_alpha**2/4.0, sps, max_sync_offset) self.rx_fftsink = fftsink2.fft_sink_c( self.displays.GetPage(0).GetWin(), baseband_freq=1698e6, @@ -118,7 +119,7 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): peak_hold=False, ) self.displays.GetPage(0).GridAdd(self.rx_fftsink.win, 0, 0, 1, 1) - self.src = gr.file_source(gr.sizeof_gr_complex*1, "poes-d16.dat", True) + self.src = gr.file_source(gr.sizeof_gr_complex*1, "poes-d16.dat", False) self.throttle = gr.throttle(gr.sizeof_gr_complex*1, sample_rate) self.wxgui_scopesink2_0 = scopesink2.scope_sink_c( self.displays.GetPage(0).GetWin(), @@ -142,31 +143,20 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): num_inputs=1, ) self.displays.GetPage(1).GridAdd(self.wxgui_scopesink2_0_0.win, 0, 0, 1, 1) - self.wxgui_scopesink2_0_0_0_0 = scopesink2.scope_sink_f( - self.displays.GetPage(1).GetWin(), - title="Post-SYNC", - sample_rate=sym_rate, - v_scale=0.5, - t_scale=20.0/sym_rate, - ac_couple=False, - xy_mode=False, - num_inputs=1, - ) - self.displays.GetPage(1).GridAdd(self.wxgui_scopesink2_0_0_0_0.win, 1, 0, 1, 1) ################################################## # Connections ################################################## - self.connect((self.src, 0), (self.throttle, 0)) - self.connect((self.throttle, 0), (self.agr, 0)) - self.connect((self.agr, 0), (self.rx_fftsink, 0)) - self.connect((self.agr, 0), (self.wxgui_scopesink2_0, 0)) - self.connect((self.agr, 0), (self.noaa_hrpt_pll_cf_0, 0)) - self.connect((self.noaa_hrpt_pll_cf_0, 0), (self.wxgui_scopesink2_0_0, 0)) - self.connect((self.noaa_hrpt_sync_fb_0, 0), (self.gr_char_to_float_0, 0)) - self.connect((self.noaa_hrpt_pll_cf_0, 0), (self.noaa_hrpt_sync_fb_0, 0)) - self.connect((self.gr_char_to_float_0, 0), (self.wxgui_scopesink2_0_0_0_0, 0)) + self.connect((self.noaa_hrpt_deframer_0, 0), (self.gr_file_sink_1, 0)) self.connect((self.noaa_hrpt_sync_fb_0, 0), (self.noaa_hrpt_deframer_0, 0)) + self.connect((self.noaa_hrpt_pll_cf_0, 0), (self.noaa_hrpt_sync_fb_0, 0)) + self.connect((self.noaa_hrpt_pll_cf_0, 0), (self.wxgui_scopesink2_0_0, 0)) + self.connect((self.agr, 0), (self.wxgui_scopesink2_0, 0)) + self.connect((self.agr, 0), (self.rx_fftsink, 0)) + self.connect((self.throttle, 0), (self.agr, 0)) + self.connect((self.src, 0), (self.throttle, 0)) + self.connect((self.agr, 0), (self.matched_filter, 0)) + self.connect((self.matched_filter, 0), (self.noaa_hrpt_pll_cf_0, 0)) def set_decim(self, decim): self.decim = decim @@ -175,15 +165,14 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): def set_sym_rate(self, sym_rate): self.sym_rate = sym_rate self.set_sps(self.sample_rate/self.sym_rate) - self.wxgui_scopesink2_0_0_0_0.set_sample_rate(self.sym_rate) def set_sample_rate(self, sample_rate): self.sample_rate = sample_rate self.set_sps(self.sample_rate/self.sym_rate) self.set_max_carrier_offset(2*math.pi*100e3/self.sample_rate) - self.wxgui_scopesink2_0.set_sample_rate(self.sample_rate) self.wxgui_scopesink2_0_0.set_sample_rate(self.sample_rate) self.rx_fftsink.set_sample_rate(self.sample_rate) + self.wxgui_scopesink2_0.set_sample_rate(self.sample_rate) def set_sps(self, sps): self.sps = sps @@ -191,6 +180,8 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): def set_sync_alpha(self, sync_alpha): self.sync_alpha = sync_alpha + self.noaa_hrpt_sync_fb_0.set_alpha(self.sync_alpha) + self.noaa_hrpt_sync_fb_0.set_beta(self.sync_alpha**2/4.0) self._sync_alpha_slider.set_value(self.sync_alpha) self._sync_alpha_text_box.set_value(self.sync_alpha) @@ -211,6 +202,7 @@ class usrp_rx_hrpt(grc_wxgui.top_block_gui): def set_hs(self, hs): self.hs = hs + self.matched_filter.set_length_and_scale(self.hs, 1.0/self.hs) if __name__ == '__main__': parser = OptionParser(option_class=eng_option, usage="%prog: [options]") |