Improve pulse shaping at the AFSK TX

This commit is contained in:
Manolis Surligas 2016-06-12 22:31:29 +03:00
parent b4900fe21e
commit 13cb10499e
1 changed files with 232 additions and 62 deletions

View File

@ -198,6 +198,60 @@
<value>1.25e3</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>(16, 509)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>gaussian_taps</value>
</param>
<param>
<key>value</key>
<value>filter.firdes.gaussian(1.0, samples_per_symbol_tx, 1.0, 4*samples_per_symbol_tx)</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>(16, 637)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>interp_taps</value>
</param>
<param>
<key>value</key>
<value>numpy.convolve(numpy.array(gaussian_taps), numpy.array(sq_wave))</value>
</param>
</block>
<block>
<key>variable</key>
<param>
@ -283,6 +337,33 @@ is too great and becomes a bottlneck.</value>
<value>40</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>(16, 573)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>sq_wave</value>
</param>
<param>
<key>value</key>
<value>(1.0, ) * samples_per_symbol_tx</value>
</param>
</block>
<block>
<key>variable</key>
<param>
@ -382,7 +463,7 @@ is too great and becomes a bottlneck.</value>
</param>
<param>
<key>_coordinate</key>
<value>(952, 260)</value>
<value>(1064, 260)</value>
</param>
<param>
<key>_rotation</key>
@ -472,6 +553,154 @@ is too great and becomes a bottlneck.</value>
<value>float</value>
</param>
</block>
<block>
<key>import</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(240, 596)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>import_0</value>
</param>
<param>
<key>import</key>
<value>import numpy</value>
</param>
</block>
<block>
<key>import</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(240, 540)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>import_0_0</value>
</param>
<param>
<key>import</key>
<value>import math</value>
</param>
</block>
<block>
<key>import</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>_enabled</key>
<value>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(240, 652)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>import_0_1</value>
</param>
<param>
<key>import</key>
<value>from gnuradio import filter</value>
</param>
</block>
<block>
<key>interp_fir_filter_xxx</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>1</value>
</param>
<param>
<key>_coordinate</key>
<value>(760, 253)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>interp_fir_filter_xxx_0</value>
</param>
<param>
<key>interp</key>
<value>samples_per_symbol_tx</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>samp_delay</key>
<value>0</value>
</param>
<param>
<key>taps</key>
<value>interp_taps</value>
</param>
<param>
<key>type</key>
<value>fff</value>
</param>
</block>
<block>
<key>qtgui_time_sink_x</key>
<param>
@ -1190,65 +1419,6 @@ is too great and becomes a bottlneck.</value>
<value>-1</value>
</param>
</block>
<block>
<key>rational_resampler_xxx</key>
<param>
<key>alias</key>
<value></value>
</param>
<param>
<key>comment</key>
<value></value>
</param>
<param>
<key>affinity</key>
<value></value>
</param>
<param>
<key>decim</key>
<value>1</value>
</param>
<param>
<key>_enabled</key>
<value>True</value>
</param>
<param>
<key>fbw</key>
<value>0</value>
</param>
<param>
<key>_coordinate</key>
<value>(744, 239)</value>
</param>
<param>
<key>_rotation</key>
<value>0</value>
</param>
<param>
<key>id</key>
<value>rational_resampler_xxx_0</value>
</param>
<param>
<key>interp</key>
<value>samples_per_symbol_tx</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>taps</key>
<value></value>
</param>
<param>
<key>type</key>
<value>fff</value>
</param>
</block>
<block>
<key>rational_resampler_xxx</key>
<param>
@ -1628,7 +1798,7 @@ similar to produce dynamic payloads.</value>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>rational_resampler_xxx_0</source_block_id>
<source_block_id>interp_fir_filter_xxx_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>
@ -1659,7 +1829,7 @@ similar to produce dynamic payloads.</value>
</connection>
<connection>
<source_block_id>satnogs_upsat_fsk_frame_encoder_0</source_block_id>
<sink_block_id>rational_resampler_xxx_0</sink_block_id>
<sink_block_id>interp_fir_filter_xxx_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>