Commit b2105b12 authored by Manolis Surligas's avatar Manolis Surligas

Use both scrambled and non-scrambled AX.25 decoders in AFSK1200 mode

There are cases where in AFSK1200 mode, the transmit source uses the
G3RUH scrambling. Now the flowgraph implements both scrambled and
unscrambled decoders, so there is no need to descriminate between
scrambled and unscrambled satellites.
parent b0bac698
......@@ -3112,10 +3112,6 @@ max_modulation_freq = 3000</value>
</block>
<block>
<key>satnogs_ax25_decoder_bm</key>
<param>
<key>n_sync_flags</key>
<value>1</value>
</param>
<param>
<key>alias</key>
<value></value>
......@@ -3173,6 +3169,65 @@ max_modulation_freq = 3000</value>
<value>0</value>
</param>
</block>
<block>
<key>satnogs_ax25_decoder_bm</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>descrambling</key>
<value>True</value>
</param>
<param>
<key>_coordinate</key>
<value>(1563, 785)</value>
</param>
<param>
<key>_rotation</key>
<value>180</value>
</param>
<param>
<key>id</key>
<value>satnogs_ax25_decoder_bm_0_0</value>
</param>
<param>
<key>maxoutbuf</key>
<value>0</value>
</param>
<param>
<key>max_frame_len</key>
<value>1024</value>
</param>
<param>
<key>minoutbuf</key>
<value>0</value>
</param>
<param>
<key>promisc</key>
<value>True</value>
</param>
<param>
<key>addr</key>
<value>'GND'</value>
</param>
<param>
<key>ssid</key>
<value>0</value>
</param>
</block>
<block>
<key>satnogs_coarse_doppler_correction_cc</key>
<param>
......@@ -3240,7 +3295,7 @@ max_modulation_freq = 3000</value>
</param>
<param>
<key>_coordinate</key>
<value>(1332, 706)</value>
<value>(1292, 881)</value>
</param>
<param>
<key>_rotation</key>
......@@ -3428,7 +3483,7 @@ max_modulation_freq = 3000</value>
</param>
<param>
<key>_coordinate</key>
<value>(1364, 801)</value>
<value>(1268, 666)</value>
</param>
<param>
<key>_rotation</key>
......@@ -3744,6 +3799,12 @@ max_modulation_freq = 3000</value>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>digital_binary_slicer_fb_0</source_block_id>
<sink_block_id>satnogs_ax25_decoder_bm_0_0</sink_block_id>
<source_key>0</source_key>
<sink_key>0</sink_key>
</connection>
<connection>
<source_block_id>digital_clock_recovery_mm_xx_0</source_block_id>
<sink_block_id>digital_binary_slicer_fb_0</sink_block_id>
......@@ -3786,6 +3847,18 @@ max_modulation_freq = 3000</value>
<source_key>pdu</source_key>
<sink_key>in</sink_key>
</connection>
<connection>
<source_block_id>satnogs_ax25_decoder_bm_0_0</source_block_id>
<sink_block_id>satnogs_frame_file_sink_0_1_0</sink_block_id>
<source_key>pdu</source_key>
<sink_key>frame</sink_key>
</connection>
<connection>
<source_block_id>satnogs_ax25_decoder_bm_0_0</source_block_id>
<sink_block_id>satnogs_udp_msg_sink_0_0</sink_block_id>
<source_key>pdu</source_key>
<sink_key>in</sink_key>
</connection>
<connection>
<source_block_id>satnogs_coarse_doppler_correction_cc_0</source_block_id>
<sink_block_id>freq_xlating_fir_filter_xxx_0</sink_block_id>
......
......@@ -5,7 +5,7 @@
# Title: AFSK1200 AX.25 decoder
# Author: Manolis Surligas (surligas@gmail.com), Vardakis Giorgos (vardakis.grg@gmail.com)
# Description: AFSK1200 AX.25 decoder
# Generated: Fri Feb 23 21:34:11 2018
# Generated: Sun Mar 25 16:42:48 2018
##################################################
from gnuradio import analog
......@@ -77,7 +77,8 @@ class satnogs_afsk1200_ax25(gr.top_block):
self.satnogs_iq_sink_0 = satnogs.iq_sink(16768, '/tmp/iq.bin', False, enable_iq_dump)
self.satnogs_frame_file_sink_0_1_0 = satnogs.frame_file_sink(decoded_data_file_path, 1)
self.satnogs_coarse_doppler_correction_cc_0 = satnogs.coarse_doppler_correction_cc(rx_freq, samp_rate_rx)
self.satnogs_ax25_decoder_bm_0 = satnogs.ax25_decoder_bm('GND', 0, True, False, 1024, 1)
self.satnogs_ax25_decoder_bm_0_0 = satnogs.ax25_decoder_bm('GND', 0, True, True, 1024)
self.satnogs_ax25_decoder_bm_0 = satnogs.ax25_decoder_bm('GND', 0, True, False, 1024)
self.osmosdr_source_0 = osmosdr.source( args="numchan=" + str(1) + " " + satnogs.handle_rx_dev_args(rx_sdr_device, dev_args) )
self.osmosdr_source_0.set_sample_rate(samp_rate_rx)
self.osmosdr_source_0.set_center_freq(rx_freq - lo_offset, 0)
......@@ -116,6 +117,8 @@ class satnogs_afsk1200_ax25(gr.top_block):
##################################################
self.msg_connect((self.satnogs_ax25_decoder_bm_0, 'pdu'), (self.satnogs_frame_file_sink_0_1_0, 'frame'))
self.msg_connect((self.satnogs_ax25_decoder_bm_0, 'pdu'), (self.satnogs_udp_msg_sink_0_0, 'in'))
self.msg_connect((self.satnogs_ax25_decoder_bm_0_0, 'pdu'), (self.satnogs_frame_file_sink_0_1_0, 'frame'))
self.msg_connect((self.satnogs_ax25_decoder_bm_0_0, 'pdu'), (self.satnogs_udp_msg_sink_0_0, 'in'))
self.msg_connect((self.satnogs_tcp_rigctl_msg_source_0, 'freq'), (self.satnogs_coarse_doppler_correction_cc_0, 'freq'))
self.connect((self.analog_quadrature_demod_cf_0, 0), (self.digital_clock_recovery_mm_xx_0, 0))
self.connect((self.analog_quadrature_demod_cf_0_0, 0), (self.dc_blocker_xx_0, 0))
......@@ -128,6 +131,7 @@ class satnogs_afsk1200_ax25(gr.top_block):
self.connect((self.blocks_multiply_xx_0, 0), (self.low_pass_filter_1, 0))
self.connect((self.dc_blocker_xx_0, 0), (self.blocks_float_to_complex_0, 0))
self.connect((self.digital_binary_slicer_fb_0, 0), (self.satnogs_ax25_decoder_bm_0, 0))
self.connect((self.digital_binary_slicer_fb_0, 0), (self.satnogs_ax25_decoder_bm_0_0, 0))
self.connect((self.digital_clock_recovery_mm_xx_0, 0), (self.digital_binary_slicer_fb_0, 0))
self.connect((self.freq_xlating_fir_filter_xxx_0, 0), (self.blks2_rational_resampler_xxx_1, 0))
self.connect((self.low_pass_filter_0, 0), (self.analog_quadrature_demod_cf_0_0, 0))
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment