diff --git a/doc/scanna.pdf b/doc/scanna.pdf new file mode 100644 index 0000000..8d410af Binary files /dev/null and b/doc/scanna.pdf differ diff --git a/scanna.grc b/scanna.grc index 1e14d8f..9c46804 100644 --- a/scanna.grc +++ b/scanna.grc @@ -1,7 +1,7 @@ - Tue Nov 8 14:43:44 2016 + Sat Nov 12 11:39:03 2016 options @@ -69,7 +69,7 @@ variable id - transition + samp_rate _enabled @@ -77,7 +77,7 @@ value - 8000 + 2000000 alias @@ -85,61 +85,7 @@ _coordinate - (336, 21) - - - _rotation - 0 - - - - variable - - id - variable_0 - - - _enabled - True - - - value - 0 - - - alias - - - - _coordinate - (560, 21) - - - _rotation - 0 - - - - variable - - id - volume - - - _enabled - True - - - value - 1 - - - alias - - - - _coordinate - (688, 21) + (232, 21) _rotation @@ -177,7 +123,7 @@ variable id - samp_rate + volume _enabled @@ -185,7 +131,7 @@ value - 2000000 + 1 alias @@ -193,7 +139,61 @@ _coordinate - (232, 21) + (688, 21) + + + _rotation + 0 + + + + variable + + id + variable_0 + + + _enabled + True + + + value + 0 + + + alias + + + + _coordinate + (560, 21) + + + _rotation + 0 + + + + variable + + id + transition + + + _enabled + True + + + value + 8000 + + + alias + + + + _coordinate + (336, 21) _rotation @@ -502,112 +502,6 @@ 0 - - analog_nbfm_rx - - id - analog_nbfm_rx_0 - - - _enabled - True - - - audio_rate - 25000 - - - quad_rate - 500000 - - - tau - 75e-6 - - - max_dev - 5e3 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (664, 191) - - - _rotation - 0 - - - - rational_resampler_xxx - - id - rational_resampler_xxx_1 - - - _enabled - True - - - type - fff - - - interp - 24 - - - decim - 25 - - - taps - - - - fbw - 0 - - - alias - - - - affinity - - - - minoutbuf - 0 - - - maxoutbuf - 0 - - - _coordinate - (888, 191) - - - _rotation - 0 - - low_pass_filter @@ -1029,6 +923,112 @@ 0 + + analog_nbfm_rx + + id + analog_nbfm_rx_0 + + + _enabled + True + + + audio_rate + 100000 + + + quad_rate + 500000 + + + tau + 75e-6 + + + max_dev + 5e3 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (664, 191) + + + _rotation + 0 + + + + rational_resampler_xxx + + id + rational_resampler_xxx_1 + + + _enabled + True + + + type + fff + + + interp + 24 + + + decim + 100 + + + taps + + + + fbw + 0 + + + alias + + + + affinity + + + + minoutbuf + 0 + + + maxoutbuf + 0 + + + _coordinate + (888, 191) + + + _rotation + 0 + + analog_pwr_squelch_xx_0 blocks_wavfile_sink_0 diff --git a/scanna.py b/scanna.py index 8a4d5c2..926f10e 100755 --- a/scanna.py +++ b/scanna.py @@ -2,7 +2,7 @@ ################################################## # Gnuradio Python Flow Graph # Title: Scanna -# Generated: Sat Nov 5 18:04:51 2016 +# Generated: Sat Nov 12 11:39:05 2016 ################################################## from gnuradio import analog @@ -105,7 +105,7 @@ class scanna(grc_wxgui.top_block_gui): self.rational_resampler_xxx_1 = filter.rational_resampler_fff( interpolation=24, - decimation=25, + decimation=100, taps=None, fractional_bw=None, ) @@ -116,12 +116,12 @@ class scanna(grc_wxgui.top_block_gui): fractional_bw=None, ) self.low_pass_filter_0 = filter.fir_filter_ccf(1, firdes.low_pass( - 1, 500000, freq_1, transition, firdes.WIN_HAMMING, 6.76)) + 1, 500000, 100000, transition, firdes.WIN_HAMMING, 6.76)) self.blocks_wavfile_sink_0 = blocks.wavfile_sink("./output.wav", 1, 24000, 8) self.audio_sink_0 = audio.sink(24000, "", True) self.analog_pwr_squelch_xx_0 = analog.pwr_squelch_ff(squelch_0, 1, 1, True) self.analog_nbfm_rx_0 = analog.nbfm_rx( - audio_rate=25000, + audio_rate=100000, quad_rate=500000, tau=75e-6, max_dev=5e3, @@ -135,9 +135,9 @@ class scanna(grc_wxgui.top_block_gui): self.connect((self.analog_nbfm_rx_0, 0), (self.rational_resampler_xxx_1, 0)) self.connect((self.low_pass_filter_0, 0), (self.analog_nbfm_rx_0, 0)) self.connect((self.rational_resampler_xxx_0, 0), (self.low_pass_filter_0, 0)) - self.connect((self.rtlsdr_source_0, 0), (self.rational_resampler_xxx_0, 0)) self.connect((self.analog_pwr_squelch_xx_0, 0), (self.audio_sink_0, 0)) self.connect((self.rtlsdr_source_0, 0), (self.wxgui_fftsink2_0, 0)) + self.connect((self.rtlsdr_source_0, 0), (self.rational_resampler_xxx_0, 0)) @@ -158,7 +158,7 @@ class scanna(grc_wxgui.top_block_gui): def set_transition(self, transition): self.transition = transition - self.low_pass_filter_0.set_taps(firdes.low_pass(1, 500000, self.freq_1, self.transition, firdes.WIN_HAMMING, 6.76)) + self.low_pass_filter_0.set_taps(firdes.low_pass(1, 500000, 100000, self.transition, firdes.WIN_HAMMING, 6.76)) def get_squelch_0(self): return self.squelch_0 @@ -173,19 +173,18 @@ class scanna(grc_wxgui.top_block_gui): def set_samp_rate(self, samp_rate): self.samp_rate = samp_rate - self.rtlsdr_source_0.set_sample_rate(self.samp_rate) self.wxgui_fftsink2_0.set_sample_rate(self.samp_rate) + self.rtlsdr_source_0.set_sample_rate(self.samp_rate) def get_freq_1(self): return self.freq_1 def set_freq_1(self, freq_1): self.freq_1 = freq_1 - self.rtlsdr_source_0.set_center_freq(self.freq_1, 0) self._freq_1_slider.set_value(self.freq_1) self._freq_1_text_box.set_value(self.freq_1) self.wxgui_fftsink2_0.set_baseband_freq(self.freq_1) - self.low_pass_filter_0.set_taps(firdes.low_pass(1, 500000, self.freq_1, self.transition, firdes.WIN_HAMMING, 6.76)) + self.rtlsdr_source_0.set_center_freq(self.freq_1, 0) def get_cutoff(self): return self.cutoff