From 8d0dad6dd077ba07cc4356fa0e8e7260f12a8b5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ji=C5=99=C3=AD=20Pinkava?= Date: Fri, 10 Oct 2014 01:09:28 +0200 Subject: [PATCH] shit --- src/demod/python/osmosdr-tetra-multidemod.py | 33 +++++++------------- src/demod/python/osmosdr-tetra_demod_fft.py | 3 +- src/startme.sh | 2 +- 3 files changed, 15 insertions(+), 23 deletions(-) diff --git a/src/demod/python/osmosdr-tetra-multidemod.py b/src/demod/python/osmosdr-tetra-multidemod.py index 22bfd1b..a2b484e 100755 --- a/src/demod/python/osmosdr-tetra-multidemod.py +++ b/src/demod/python/osmosdr-tetra-multidemod.py @@ -7,6 +7,7 @@ from gnuradio import gr from gnuradio.eng_option import eng_option from gnuradio.filter import firdes from gnuradio.filter import pfb +from os.path import expanduser import osmosdr import tetra_demod @@ -21,16 +22,15 @@ class top_block(gr.top_block): self.symbol_rate = symbol_rate = 18000 self.samp_per_sym = samp_per_sym = 2 self.channel_width = channel_width = 25e3 - self.chans = chans = 36*2 # must be multiple of 36 + self.chans = chans = 36*2 # must be multiple of 36, bacause of resampling self.sample_rate = sample_rate = chans * channel_width self.out_samp_rate = out_samp_rate = symbol_rate*samp_per_sym - self.offset = offset = -73e3 - self.lowpass = lowpass = 17.5e3 - self.fnames = '/home/test/tetra-tmp/fifo' + self.fnames = expanduser('~/tetra-tmp/fifo') #### LIST OF DEMODULATED CHANNELS # numbered from leftmost to rightmost - self.selected = [ 6,7,8,9,12,13,14,16,17,19,20,21,23,24,26,31,32,33,34,35,38,42,43,44,45,46,47,50,52,53,55,56,61,62,69,70] + # self.selected = [ 6,7,8,9,12,13,14,16,17,19,20,21,23,24,26,31,32,33,34,35,38,42,43,44,45,46,47,50,52,53,55,56,61,62,69,70] + self.selected = [ 3, 9, 10, 11, 13, 14, 17, 20, 22, 28, ] ################################################## # Blocks @@ -40,12 +40,12 @@ class top_block(gr.top_block): #self.source = osmosdr.source( args="rtl_tcp=radio-tetra.brm:1234") self.source = osmosdr.source() self.source.set_sample_rate(sample_rate) - self.source.set_center_freq(424.065e6, 0) - self.source.set_freq_corr(0, 0) + self.source.set_center_freq(424.000e6, 0) + self.source.set_freq_corr(37, 0) self.source.set_dc_offset_mode(0, 0) self.source.set_iq_balance_mode(0, 0) self.source.set_gain_mode(0, 0) - self.source.set_gain(31, 0) + self.source.set_gain(35, 0) self.source.set_if_gain(20, 0) self.source.set_bb_gain(20, 0) self.source.set_antenna("", 0) @@ -54,33 +54,24 @@ class top_block(gr.top_block): self.channelizer = pfb.channelizer_ccf( chans, (), - 1.0, + 36./25, 100) - self.channelizer.set_channel_map((range(chans/2, chans)+range(0,chans/2))) + #self.channelizer.set_channel_map((range(chans/2, chans)+range(0,chans/2))) # Generate per-target blocks self.sinks = list() self.demods = list() - self.resamplers = list() - sel = 1 + sel = 0 for i in range(chans): if i in self.selected: - self.resamplers.append(filter.rational_resampler_ccc( - interpolation=36, - decimation=25, - taps=None, - fractional_bw=None, - )) self.demods.append(tetra_demod.demod()) self.sinks.append(blocks.file_sink(gr.sizeof_float, "%s/floats%d" % (self.fnames, sel))) - self.connect((self.channelizer, i), (self.resamplers[i], 0)) - self.connect((self.resamplers[i], 0), (self.demods[i], 0), (self.sinks[i], 0)) + self.connect((self.channelizer, i), (self.demods[i], 0), (self.sinks[i], 0)) sel = sel + 1 print "Enabled channel %d" % i else: - self.resamplers.append(None) self.demods.append(None) self.sinks.append(blocks.null_sink(gr.sizeof_gr_complex*1)) self.connect((self.channelizer, i), (self.sinks[i], 0)) diff --git a/src/demod/python/osmosdr-tetra_demod_fft.py b/src/demod/python/osmosdr-tetra_demod_fft.py index 6bdd35c..7fa1329 100755 --- a/src/demod/python/osmosdr-tetra_demod_fft.py +++ b/src/demod/python/osmosdr-tetra_demod_fft.py @@ -45,6 +45,7 @@ class top_block(grc_wxgui.top_block_gui): self.src = osmosdr.source(options.args) self.src.set_center_freq(self.ifreq) self.src.set_sample_rate(int(options.sample_rate)) + self.src.set_freq_corr(36, 0) if self.rfgain is None: self.src.set_gain_mode(1) @@ -160,7 +161,7 @@ class top_block(grc_wxgui.top_block_gui): callback=set_rfgain, minimum=0, maximum=50, - num_steps=200, + num_steps=1000, style=wx.SL_HORIZONTAL, cast=float, proportion=1, diff --git a/src/startme.sh b/src/startme.sh index 9ea2583..626465a 100755 --- a/src/startme.sh +++ b/src/startme.sh @@ -1,3 +1,3 @@ #!/bin/bash - ./demod/python/osmosdr-tetra_demod_fft.py -f 393.0880M -g 10 -o /dev/stdout | ./float_to_bits /dev/stdin /dev/stdout | ./tetra-rx /dev/stdin +python2 ./demod/python/osmosdr-tetra_demod_fft.py -f 423.750M -g 32 -L 27e3 -o /dev/stdout | ./float_to_bits /dev/stdin /dev/stdout | ./tetra-rx /dev/stdin ../tmp 2>&1 > tetra-rx.log