diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt new file mode 100644 index 0000000..c837d77 --- /dev/null +++ b/apps/CMakeLists.txt @@ -0,0 +1,25 @@ +# Copyright 2011 Free Software Foundation, Inc. +# +# This file is part of GNU Radio +# +# GNU Radio is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GNU Radio is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU Radio; see the file COPYING. If not, write to +# the Free Software Foundation, Inc., 51 Franklin Street, +# Boston, MA 02110-1301, USA. + +include(GrPython) + +GR_PYTHON_INSTALL( + PROGRAMS + DESTINATION bin +) diff --git a/apps/fft-multi-decoder_fixed_freqs.grc b/apps/fft-multi-decoder_fixed_freqs.grc new file mode 100644 index 0000000..e2632db --- /dev/null +++ b/apps/fft-multi-decoder_fixed_freqs.grc @@ -0,0 +1,6600 @@ + + + + Wed Feb 1 13:42:21 2017 + + options + + author + + + + window_size + 3000,2000 + + + category + [GRC Hier Blocks] + + + comment + + + + description + + + + _enabled + True + + + _coordinate + (8, 8) + + + _rotation + 0 + + + generate_options + qt_gui + + + hier_block_src_path + .: + + + id + top_block + + + max_nouts + 0 + + + qt_qss_theme + + + + realtime_scheduling + + + + run_command + {python} -u {filename} + + + run_options + prompt + + + run + True + + + thread_safe_setters + + + + title + + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (1134, 3) + + + _rotation + 0 + + + id + audio_decim + + + value + 5 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (950, 3) + + + _rotation + 0 + + + id + audio_rate + + + value + 48000 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (872, 76) + + + _rotation + 0 + + + id + baseband_rate + + + value + audio_rate*audio_decim + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (1046, 3) + + + _rotation + 0 + + + id + bb_decim + + + value + 2 + + + + variable_qtgui_range + + comment + + + + value + 26 + + + _enabled + 0 + + + _coordinate + (311, 758) + + + gui_hint + + + + _rotation + 0 + + + id + bbgain + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + 62 + + + rangeType + float + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + 1 + + + _coordinate + (439, 754) + + + _rotation + 0 + + + id + bbgain + + + value + 26 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (766, 3) + + + _rotation + 0 + + + id + chan_fft_len + + + value + 512*2 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (768, 164) + + + _rotation + 0 + + + id + chan_rate + + + value + audio_rate*audio_decim*bb_decim + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (854, 3) + + + _rotation + 0 + + + id + fft_len + + + value + 1024*4 + + + + variable_qtgui_range + + comment + SWR3 + + + value + 1007e5 + + + _enabled + 1 + + + _coordinate + (311, 0) + + + gui_hint + 1,1,1,1 + + + _rotation + 0 + + + id + freq1 + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 102300000 + + + _enabled + 1 + + + _coordinate + (311, 95) + + + gui_hint + 1,2,1,1 + + + _rotation + 0 + + + id + freq2 + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 101300000 + + + _enabled + 1 + + + _coordinate + (311, 191) + + + gui_hint + 1,3,1,1 + + + _rotation + 0 + + + id + freq3 + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 101400000 + + + _enabled + True + + + _coordinate + (175, 39) + + + gui_hint + 0,1,1,1 + + + _rotation + 0 + + + id + freq_tune + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + samp_rate/1.7 + + + _enabled + 0 + + + _coordinate + (423, 838) + + + gui_hint + + + + _rotation + 0 + + + id + hackrf_bw + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 1e6 + + + step + 1e5 + + + stop + 20e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 33 + + + _enabled + 0 + + + _coordinate + (319, 638) + + + gui_hint + + + + _rotation + 0 + + + id + ifgain + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + 40 + + + rangeType + float + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + 1 + + + _coordinate + (439, 674) + + + _rotation + 0 + + + id + ifgain + + + value + 33 + + + + variable_qtgui_range + + comment + + + + value + 470 + + + _enabled + True + + + _coordinate + (15, 87) + + + gui_hint + + + + _rotation + 0 + + + id + loop_bw + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 10 + + + stop + 700 + + + rangeType + int + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 0 + + + _enabled + 1 + + + _coordinate + (15, 239) + + + gui_hint + + + + _rotation + 0 + + + id + num_zeros + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + chan_fft_len/2 + + + rangeType + int + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + 0 + + + _coordinate + (23, 171) + + + _rotation + 0 + + + id + num_zeros + + + value + 0 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (744, 92) + + + _rotation + 0 + + + id + samp_rate + + + value + chan_rate*fft_len/chan_fft_len + + + + variable_qtgui_range + + comment + + + + value + 0.1 + + + _enabled + True + + + _coordinate + (1373, 271) + + + gui_hint + 0,2,1,1 + + + _rotation + 0 + + + id + volume + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 0.01 + + + stop + 1 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 0.1 + + + _enabled + True + + + _coordinate + (1557, 263) + + + gui_hint + 0,3,1,1 + + + _rotation + 0 + + + id + volume2 + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 0.01 + + + stop + 1 + + + rangeType + float + + + widget + counter_slider + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 27) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 83) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 139) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + audio_sink + + alias + + + + comment + + + + affinity + + + + device_name + + + + _enabled + True + + + _coordinate + (1837, 39) + + + _rotation + 0 + + + id + audio_sink_0 + + + num_inputs + 2 + + + ok_to_block + True + + + samp_rate + audio_rate + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1725, 87) + + + _rotation + 0 + + + id + blocks_add_xx_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1701, 15) + + + _rotation + 0 + + + id + blocks_add_xx_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_ctrlport_monitor_performance + + alias + + + + comment + + + + _enabled + 0 + + + en + True + + + _coordinate + (1272, 380) + + + _rotation + 0 + + + id + blocks_ctrlport_monitor_performance_0 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume + + + affinity + + + + _enabled + 1 + + + _coordinate + (1493, 35) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume + + + affinity + + + + _enabled + 1 + + + _coordinate + (1517, 99) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume2/2 + + + affinity + + + + _enabled + 1 + + + _coordinate + (1517, 155) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_stream_to_vector + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (299, 487) + + + _rotation + 270 + + + id + blocks_stream_to_vector_0 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_items + fft_len + + + vlen + 1 + + + + crfa_decoder_compare + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1757, 231) + + + _rotation + 0 + + + id + crfa_decoder_compare_0 + + + nPorts + 3 + + + + crfa_rds_parser_table_qt + + alias + + + + comment + + + + affinity + + + + debug + False + + + _enabled + 1 + + + _coordinate + (1589, 423) + + + gui_hint + 7,1,5,3 + + + _rotation + 0 + + + id + crfa_rds_parser_table_qt_0_0 + + + label + + + + log + False + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + nPorts + 3 + + + showTMC + False + + + freq_tune + freq_tune + + + workdir + /home/clemens/forschungsarbeit/data/ + + + writeDB + False + + + + epy_block + + alias + + + + _io_cache + ('freq-setter', 'blk', [('freqlist', '[92200000, 94700000, 101300000, 102300000, 105700000, 107700000]')], [], [('out', 'message', None)], 'Embedded Python Block example - a simple multiply const', ['freqlist']) + + + _source_code + """ +Embedded Python Blocks: + +Each time this file is saved, GRC will instantiate the first class it finds +to get ports and parameters of your block. The arguments to __init__ will +be the parameters. All of them are required to have default values! +""" + +import numpy as np +from gnuradio import gr +import pmt +from threading import Timer +#import time +class blk(gr.sync_block): # other base classes are basic_block, decim_block, interp_block + """Embedded Python Block example - a simple multiply const""" + + def __init__(self, freqlist=[92200000,94700000,101300000,102300000,105700000,107700000]): # only default arguments here + """arguments to this function show up as parameters in GRC""" + gr.sync_block.__init__( + self, + name='freq-setter', # will show up in GRC + in_sig=None, + out_sig=None + ) + # if an attribute with the same name as a parameter is found, + # a callback is registered (properties work, too). + self._freqlist=freqlist + self.message_port_register_out(pmt.intern('out')) + self.send_msg() + Timer(3, self.send_msg).start() #after 3 seconds (when table initialized) + #self.time=time.time() + @property + def freqlist(self): + """I'm the 'freqlist' property.""" + return self._freqlist + + @freqlist.setter + def freqlist(self, value): + self._freqlist = value + self.send_msg() + + @freqlist.deleter + def freqlist(self): + del self._freqlist + def send_msg(self): + #print(self.freqlist) + for i,freq in enumerate(self.freqlist): + send_string=str(i+1)+" "+str(freq) + send_pmt = pmt.string_to_symbol(send_string) + self.message_port_pub(pmt.intern('out'), send_pmt) + #def work(self, input_items, output_items): + #print("work") + #now=time.time() + #if now-self.time >2: + #self.time=now + #self.send_msg() + #return len(input_items[0]) + + + comment + + + + _enabled + True + + + freqlist + [freq1,freq2,freq3] + + + _coordinate + (1504, 636) + + + _rotation + 0 + + + id + epy_block_0 + + + + fft_vxx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + fft_size + fft_len + + + forward + True + + + _coordinate + (423, 487) + + + _rotation + 0 + + + id + fft_vxx_0 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + nthreads + 2 + + + shift + True + + + window + [] + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 67) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 123) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 179) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (702, 271) + + + _rotation + 0 + + + id + hier_ifft_decoder_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq1-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + False + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (702, 391) + + + _rotation + 0 + + + id + hier_ifft_decoder_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq2-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + False + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (704, 521) + + + _rotation + 0 + + + id + hier_ifft_decoder_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq3-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + True + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + osmosdr_source + + alias + + + + ant0 + + + + bb_gain0 + bbgain + + + bw0 + hackrf_bw + + + dc_offset_mode0 + 2 + + + corr0 + 0 + + + freq0 + freq_tune + + + gain_mode0 + False + + + if_gain0 + ifgain + + + iq_balance_mode0 + 2 + + + gain0 + 16 + + + ant10 + + + + bb_gain10 + 20 + + + bw10 + 0 + + + dc_offset_mode10 + 0 + + + corr10 + 0 + + + freq10 + 100e6 + + + gain_mode10 + False + + + if_gain10 + 20 + + + iq_balance_mode10 + 0 + + + gain10 + 10 + + + ant11 + + + + bb_gain11 + 20 + + + bw11 + 0 + + + dc_offset_mode11 + 0 + + + corr11 + 0 + + + freq11 + 100e6 + + + gain_mode11 + False + + + if_gain11 + 20 + + + iq_balance_mode11 + 0 + + + gain11 + 10 + + + ant12 + + + + bb_gain12 + 20 + + + bw12 + 0 + + + dc_offset_mode12 + 0 + + + corr12 + 0 + + + freq12 + 100e6 + + + gain_mode12 + False + + + if_gain12 + 20 + + + iq_balance_mode12 + 0 + + + gain12 + 10 + + + ant13 + + + + bb_gain13 + 20 + + + bw13 + 0 + + + dc_offset_mode13 + 0 + + + corr13 + 0 + + + freq13 + 100e6 + + + gain_mode13 + False + + + if_gain13 + 20 + + + iq_balance_mode13 + 0 + + + gain13 + 10 + + + ant14 + + + + bb_gain14 + 20 + + + bw14 + 0 + + + dc_offset_mode14 + 0 + + + corr14 + 0 + + + freq14 + 100e6 + + + gain_mode14 + False + + + if_gain14 + 20 + + + iq_balance_mode14 + 0 + + + gain14 + 10 + + + ant15 + + + + bb_gain15 + 20 + + + bw15 + 0 + + + dc_offset_mode15 + 0 + + + corr15 + 0 + + + freq15 + 100e6 + + + gain_mode15 + False + + + if_gain15 + 20 + + + iq_balance_mode15 + 0 + + + gain15 + 10 + + + ant16 + + + + bb_gain16 + 20 + + + bw16 + 0 + + + dc_offset_mode16 + 0 + + + corr16 + 0 + + + freq16 + 100e6 + + + gain_mode16 + False + + + if_gain16 + 20 + + + iq_balance_mode16 + 0 + + + gain16 + 10 + + + ant17 + + + + bb_gain17 + 20 + + + bw17 + 0 + + + dc_offset_mode17 + 0 + + + corr17 + 0 + + + freq17 + 100e6 + + + gain_mode17 + False + + + if_gain17 + 20 + + + iq_balance_mode17 + 0 + + + gain17 + 10 + + + ant18 + + + + bb_gain18 + 20 + + + bw18 + 0 + + + dc_offset_mode18 + 0 + + + corr18 + 0 + + + freq18 + 100e6 + + + gain_mode18 + False + + + if_gain18 + 20 + + + iq_balance_mode18 + 0 + + + gain18 + 10 + + + ant19 + + + + bb_gain19 + 20 + + + bw19 + 0 + + + dc_offset_mode19 + 0 + + + corr19 + 0 + + + freq19 + 100e6 + + + gain_mode19 + False + + + if_gain19 + 20 + + + iq_balance_mode19 + 0 + + + gain19 + 10 + + + ant1 + + + + bb_gain1 + 20 + + + bw1 + 0 + + + dc_offset_mode1 + 0 + + + corr1 + 0 + + + freq1 + 100e6 + + + gain_mode1 + False + + + if_gain1 + 20 + + + iq_balance_mode1 + 0 + + + gain1 + 10 + + + ant20 + + + + bb_gain20 + 20 + + + bw20 + 0 + + + dc_offset_mode20 + 0 + + + corr20 + 0 + + + freq20 + 100e6 + + + gain_mode20 + False + + + if_gain20 + 20 + + + iq_balance_mode20 + 0 + + + gain20 + 10 + + + ant21 + + + + bb_gain21 + 20 + + + bw21 + 0 + + + dc_offset_mode21 + 0 + + + corr21 + 0 + + + freq21 + 100e6 + + + gain_mode21 + False + + + if_gain21 + 20 + + + iq_balance_mode21 + 0 + + + gain21 + 10 + + + ant22 + + + + bb_gain22 + 20 + + + bw22 + 0 + + + dc_offset_mode22 + 0 + + + corr22 + 0 + + + freq22 + 100e6 + + + gain_mode22 + False + + + if_gain22 + 20 + + + iq_balance_mode22 + 0 + + + gain22 + 10 + + + ant23 + + + + bb_gain23 + 20 + + + bw23 + 0 + + + dc_offset_mode23 + 0 + + + corr23 + 0 + + + freq23 + 100e6 + + + gain_mode23 + False + + + if_gain23 + 20 + + + iq_balance_mode23 + 0 + + + gain23 + 10 + + + ant24 + + + + bb_gain24 + 20 + + + bw24 + 0 + + + dc_offset_mode24 + 0 + + + corr24 + 0 + + + freq24 + 100e6 + + + gain_mode24 + False + + + if_gain24 + 20 + + + iq_balance_mode24 + 0 + + + gain24 + 10 + + + ant25 + + + + bb_gain25 + 20 + + + bw25 + 0 + + + dc_offset_mode25 + 0 + + + corr25 + 0 + + + freq25 + 100e6 + + + gain_mode25 + False + + + if_gain25 + 20 + + + iq_balance_mode25 + 0 + + + gain25 + 10 + + + ant26 + + + + bb_gain26 + 20 + + + bw26 + 0 + + + dc_offset_mode26 + 0 + + + corr26 + 0 + + + freq26 + 100e6 + + + gain_mode26 + False + + + if_gain26 + 20 + + + iq_balance_mode26 + 0 + + + gain26 + 10 + + + ant27 + + + + bb_gain27 + 20 + + + bw27 + 0 + + + dc_offset_mode27 + 0 + + + corr27 + 0 + + + freq27 + 100e6 + + + gain_mode27 + False + + + if_gain27 + 20 + + + iq_balance_mode27 + 0 + + + gain27 + 10 + + + ant28 + + + + bb_gain28 + 20 + + + bw28 + 0 + + + dc_offset_mode28 + 0 + + + corr28 + 0 + + + freq28 + 100e6 + + + gain_mode28 + False + + + if_gain28 + 20 + + + iq_balance_mode28 + 0 + + + gain28 + 10 + + + ant29 + + + + bb_gain29 + 20 + + + bw29 + 0 + + + dc_offset_mode29 + 0 + + + corr29 + 0 + + + freq29 + 100e6 + + + gain_mode29 + False + + + if_gain29 + 20 + + + iq_balance_mode29 + 0 + + + gain29 + 10 + + + ant2 + + + + bb_gain2 + 20 + + + bw2 + 0 + + + dc_offset_mode2 + 0 + + + corr2 + 0 + + + freq2 + 100e6 + + + gain_mode2 + False + + + if_gain2 + 20 + + + iq_balance_mode2 + 0 + + + gain2 + 10 + + + ant30 + + + + bb_gain30 + 20 + + + bw30 + 0 + + + dc_offset_mode30 + 0 + + + corr30 + 0 + + + freq30 + 100e6 + + + gain_mode30 + False + + + if_gain30 + 20 + + + iq_balance_mode30 + 0 + + + gain30 + 10 + + + ant31 + + + + bb_gain31 + 20 + + + bw31 + 0 + + + dc_offset_mode31 + 0 + + + corr31 + 0 + + + freq31 + 100e6 + + + gain_mode31 + False + + + if_gain31 + 20 + + + iq_balance_mode31 + 0 + + + gain31 + 10 + + + ant3 + + + + bb_gain3 + 20 + + + bw3 + 0 + + + dc_offset_mode3 + 0 + + + corr3 + 0 + + + freq3 + 100e6 + + + gain_mode3 + False + + + if_gain3 + 20 + + + iq_balance_mode3 + 0 + + + gain3 + 10 + + + ant4 + + + + bb_gain4 + 20 + + + bw4 + 0 + + + dc_offset_mode4 + 0 + + + corr4 + 0 + + + freq4 + 100e6 + + + gain_mode4 + False + + + if_gain4 + 20 + + + iq_balance_mode4 + 0 + + + gain4 + 10 + + + ant5 + + + + bb_gain5 + 20 + + + bw5 + 0 + + + dc_offset_mode5 + 0 + + + corr5 + 0 + + + freq5 + 100e6 + + + gain_mode5 + False + + + if_gain5 + 20 + + + iq_balance_mode5 + 0 + + + gain5 + 10 + + + ant6 + + + + bb_gain6 + 20 + + + bw6 + 0 + + + dc_offset_mode6 + 0 + + + corr6 + 0 + + + freq6 + 100e6 + + + gain_mode6 + False + + + if_gain6 + 20 + + + iq_balance_mode6 + 0 + + + gain6 + 10 + + + ant7 + + + + bb_gain7 + 20 + + + bw7 + 0 + + + dc_offset_mode7 + 0 + + + corr7 + 0 + + + freq7 + 100e6 + + + gain_mode7 + False + + + if_gain7 + 20 + + + iq_balance_mode7 + 0 + + + gain7 + 10 + + + ant8 + + + + bb_gain8 + 20 + + + bw8 + 0 + + + dc_offset_mode8 + 0 + + + corr8 + 0 + + + freq8 + 100e6 + + + gain_mode8 + False + + + if_gain8 + 20 + + + iq_balance_mode8 + 0 + + + gain8 + 10 + + + ant9 + + + + bb_gain9 + 20 + + + bw9 + 0 + + + dc_offset_mode9 + 0 + + + corr9 + 0 + + + freq9 + 100e6 + + + gain_mode9 + False + + + if_gain9 + 20 + + + iq_balance_mode9 + 0 + + + gain9 + 10 + + + comment + RF gain 0 = amp off + + + affinity + + + + args + + + + _enabled + 0 + + + _coordinate + (104, 276) + + + _rotation + 0 + + + id + osmosdr_source_0 + + + maxoutbuf + 0 + + + clock_source0 + + + + time_source0 + + + + clock_source1 + + + + time_source1 + + + + clock_source2 + + + + time_source2 + + + + clock_source3 + + + + time_source3 + + + + clock_source4 + + + + time_source4 + + + + clock_source5 + + + + time_source5 + + + + clock_source6 + + + + time_source6 + + + + clock_source7 + + + + time_source7 + + + + minoutbuf + 0 + + + nchan + 1 + + + num_mboards + 1 + + + type + fc32 + + + sample_rate + samp_rate + + + sync + + + + + qtgui_const_sink_x + + autoscale + False + + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1166, 283) + + + gui_hint + 5,3,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_const_sink_x_0 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + marker1 + 0 + + + style1 + 0 + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "red" + + + label10 + + + + marker10 + 0 + + + style10 + 0 + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + marker2 + 0 + + + style2 + 0 + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + marker3 + 0 + + + style3 + 0 + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + marker4 + 0 + + + style4 + 0 + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + marker5 + 0 + + + style5 + 0 + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + marker6 + 0 + + + style6 + 0 + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "red" + + + label7 + + + + marker7 + 0 + + + style7 + 0 + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "red" + + + label8 + + + + marker8 + 0 + + + style8 + 0 + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "red" + + + label9 + + + + marker9 + 0 + + + style9 + 0 + + + width9 + 1 + + + name + "" + + + nconnections + 3 + + + size + 1024 + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_slope + qtgui.TRIG_SLOPE_POS + + + tr_tag + "" + + + type + complex + + + update_time + 0.01 + + + xmax + 2 + + + xmin + -2 + + + ymax + 2 + + + ymin + -2 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + chan_rate + + + alias + + + + fc + 0 + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + 1 + + + fftsize + chan_fft_len + + + _coordinate + (1126, 479) + + + gui_hint + 5,1,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + "" + + + nconnections + 3 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + complex + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 70 + + + ymin + -60 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + samp_rate + + + alias + + + + fc + freq_tune + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + True + + + fftsize + 2048*2 + + + _coordinate + (399, 387) + + + gui_hint + 4,1,1,3 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1_0 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + "" + + + nconnections + 1 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + complex + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 10 + + + ymin + -100 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + baseband_rate + + + alias + + + + fc + 0 + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + 1 + + + fftsize + chan_fft_len + + + _coordinate + (1285, 615) + + + gui_hint + 5,2,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1_2 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + + + + nconnections + 3 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + float + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 0 + + + ymin + -120 + + + + qtgui_tab_widget + + alias + + + + comment + + + + _enabled + 0 + + + _coordinate + (79, 563) + + + gui_hint + 0,0,6,3 + + + _rotation + 0 + + + id + qtgui_tab_widget_0 + + + label0 + Tab 0 + + + label1 + Tab 1 + + + label10 + Tab 10 + + + label11 + Tab 11 + + + label12 + Tab 12 + + + label13 + Tab 13 + + + label14 + Tab 14 + + + label15 + Tab 15 + + + label16 + Tab 16 + + + label17 + Tab 17 + + + label18 + Tab 18 + + + label19 + Tab 19 + + + label2 + Tab 2 + + + label3 + Tab 3 + + + label4 + Tab 4 + + + label5 + Tab 5 + + + label6 + Tab 6 + + + label7 + Tab 7 + + + label8 + Tab 8 + + + label9 + Tab 9 + + + num_tabs + 3 + + + + rtlsdr_source + + alias + + + + ant0 + + + + bb_gain0 + 0 + + + bw0 + 0 + + + dc_offset_mode0 + 0 + + + corr0 + 0 + + + freq0 + freq_tune + + + gain_mode0 + False + + + if_gain0 + 0 + + + iq_balance_mode0 + 0 + + + gain0 + 28 + + + ant10 + + + + bb_gain10 + 20 + + + bw10 + 0 + + + dc_offset_mode10 + 0 + + + corr10 + 0 + + + freq10 + 100e6 + + + gain_mode10 + False + + + if_gain10 + 20 + + + iq_balance_mode10 + 0 + + + gain10 + 10 + + + ant11 + + + + bb_gain11 + 20 + + + bw11 + 0 + + + dc_offset_mode11 + 0 + + + corr11 + 0 + + + freq11 + 100e6 + + + gain_mode11 + False + + + if_gain11 + 20 + + + iq_balance_mode11 + 0 + + + gain11 + 10 + + + ant12 + + + + bb_gain12 + 20 + + + bw12 + 0 + + + dc_offset_mode12 + 0 + + + corr12 + 0 + + + freq12 + 100e6 + + + gain_mode12 + False + + + if_gain12 + 20 + + + iq_balance_mode12 + 0 + + + gain12 + 10 + + + ant13 + + + + bb_gain13 + 20 + + + bw13 + 0 + + + dc_offset_mode13 + 0 + + + corr13 + 0 + + + freq13 + 100e6 + + + gain_mode13 + False + + + if_gain13 + 20 + + + iq_balance_mode13 + 0 + + + gain13 + 10 + + + ant14 + + + + bb_gain14 + 20 + + + bw14 + 0 + + + dc_offset_mode14 + 0 + + + corr14 + 0 + + + freq14 + 100e6 + + + gain_mode14 + False + + + if_gain14 + 20 + + + iq_balance_mode14 + 0 + + + gain14 + 10 + + + ant15 + + + + bb_gain15 + 20 + + + bw15 + 0 + + + dc_offset_mode15 + 0 + + + corr15 + 0 + + + freq15 + 100e6 + + + gain_mode15 + False + + + if_gain15 + 20 + + + iq_balance_mode15 + 0 + + + gain15 + 10 + + + ant16 + + + + bb_gain16 + 20 + + + bw16 + 0 + + + dc_offset_mode16 + 0 + + + corr16 + 0 + + + freq16 + 100e6 + + + gain_mode16 + False + + + if_gain16 + 20 + + + iq_balance_mode16 + 0 + + + gain16 + 10 + + + ant17 + + + + bb_gain17 + 20 + + + bw17 + 0 + + + dc_offset_mode17 + 0 + + + corr17 + 0 + + + freq17 + 100e6 + + + gain_mode17 + False + + + if_gain17 + 20 + + + iq_balance_mode17 + 0 + + + gain17 + 10 + + + ant18 + + + + bb_gain18 + 20 + + + bw18 + 0 + + + dc_offset_mode18 + 0 + + + corr18 + 0 + + + freq18 + 100e6 + + + gain_mode18 + False + + + if_gain18 + 20 + + + iq_balance_mode18 + 0 + + + gain18 + 10 + + + ant19 + + + + bb_gain19 + 20 + + + bw19 + 0 + + + dc_offset_mode19 + 0 + + + corr19 + 0 + + + freq19 + 100e6 + + + gain_mode19 + False + + + if_gain19 + 20 + + + iq_balance_mode19 + 0 + + + gain19 + 10 + + + ant1 + + + + bb_gain1 + 20 + + + bw1 + 0 + + + dc_offset_mode1 + 0 + + + corr1 + 0 + + + freq1 + 100e6 + + + gain_mode1 + False + + + if_gain1 + 20 + + + iq_balance_mode1 + 0 + + + gain1 + 10 + + + ant20 + + + + bb_gain20 + 20 + + + bw20 + 0 + + + dc_offset_mode20 + 0 + + + corr20 + 0 + + + freq20 + 100e6 + + + gain_mode20 + False + + + if_gain20 + 20 + + + iq_balance_mode20 + 0 + + + gain20 + 10 + + + ant21 + + + + bb_gain21 + 20 + + + bw21 + 0 + + + dc_offset_mode21 + 0 + + + corr21 + 0 + + + freq21 + 100e6 + + + gain_mode21 + False + + + if_gain21 + 20 + + + iq_balance_mode21 + 0 + + + gain21 + 10 + + + ant22 + + + + bb_gain22 + 20 + + + bw22 + 0 + + + dc_offset_mode22 + 0 + + + corr22 + 0 + + + freq22 + 100e6 + + + gain_mode22 + False + + + if_gain22 + 20 + + + iq_balance_mode22 + 0 + + + gain22 + 10 + + + ant23 + + + + bb_gain23 + 20 + + + bw23 + 0 + + + dc_offset_mode23 + 0 + + + corr23 + 0 + + + freq23 + 100e6 + + + gain_mode23 + False + + + if_gain23 + 20 + + + iq_balance_mode23 + 0 + + + gain23 + 10 + + + ant24 + + + + bb_gain24 + 20 + + + bw24 + 0 + + + dc_offset_mode24 + 0 + + + corr24 + 0 + + + freq24 + 100e6 + + + gain_mode24 + False + + + if_gain24 + 20 + + + iq_balance_mode24 + 0 + + + gain24 + 10 + + + ant25 + + + + bb_gain25 + 20 + + + bw25 + 0 + + + dc_offset_mode25 + 0 + + + corr25 + 0 + + + freq25 + 100e6 + + + gain_mode25 + False + + + if_gain25 + 20 + + + iq_balance_mode25 + 0 + + + gain25 + 10 + + + ant26 + + + + bb_gain26 + 20 + + + bw26 + 0 + + + dc_offset_mode26 + 0 + + + corr26 + 0 + + + freq26 + 100e6 + + + gain_mode26 + False + + + if_gain26 + 20 + + + iq_balance_mode26 + 0 + + + gain26 + 10 + + + ant27 + + + + bb_gain27 + 20 + + + bw27 + 0 + + + dc_offset_mode27 + 0 + + + corr27 + 0 + + + freq27 + 100e6 + + + gain_mode27 + False + + + if_gain27 + 20 + + + iq_balance_mode27 + 0 + + + gain27 + 10 + + + ant28 + + + + bb_gain28 + 20 + + + bw28 + 0 + + + dc_offset_mode28 + 0 + + + corr28 + 0 + + + freq28 + 100e6 + + + gain_mode28 + False + + + if_gain28 + 20 + + + iq_balance_mode28 + 0 + + + gain28 + 10 + + + ant29 + + + + bb_gain29 + 20 + + + bw29 + 0 + + + dc_offset_mode29 + 0 + + + corr29 + 0 + + + freq29 + 100e6 + + + gain_mode29 + False + + + if_gain29 + 20 + + + iq_balance_mode29 + 0 + + + gain29 + 10 + + + ant2 + + + + bb_gain2 + 20 + + + bw2 + 0 + + + dc_offset_mode2 + 0 + + + corr2 + 0 + + + freq2 + 100e6 + + + gain_mode2 + False + + + if_gain2 + 20 + + + iq_balance_mode2 + 0 + + + gain2 + 10 + + + ant30 + + + + bb_gain30 + 20 + + + bw30 + 0 + + + dc_offset_mode30 + 0 + + + corr30 + 0 + + + freq30 + 100e6 + + + gain_mode30 + False + + + if_gain30 + 20 + + + iq_balance_mode30 + 0 + + + gain30 + 10 + + + ant31 + + + + bb_gain31 + 20 + + + bw31 + 0 + + + dc_offset_mode31 + 0 + + + corr31 + 0 + + + freq31 + 100e6 + + + gain_mode31 + False + + + if_gain31 + 20 + + + iq_balance_mode31 + 0 + + + gain31 + 10 + + + ant3 + + + + bb_gain3 + 20 + + + bw3 + 0 + + + dc_offset_mode3 + 0 + + + corr3 + 0 + + + freq3 + 100e6 + + + gain_mode3 + False + + + if_gain3 + 20 + + + iq_balance_mode3 + 0 + + + gain3 + 10 + + + ant4 + + + + bb_gain4 + 20 + + + bw4 + 0 + + + dc_offset_mode4 + 0 + + + corr4 + 0 + + + freq4 + 100e6 + + + gain_mode4 + False + + + if_gain4 + 20 + + + iq_balance_mode4 + 0 + + + gain4 + 10 + + + ant5 + + + + bb_gain5 + 20 + + + bw5 + 0 + + + dc_offset_mode5 + 0 + + + corr5 + 0 + + + freq5 + 100e6 + + + gain_mode5 + False + + + if_gain5 + 20 + + + iq_balance_mode5 + 0 + + + gain5 + 10 + + + ant6 + + + + bb_gain6 + 20 + + + bw6 + 0 + + + dc_offset_mode6 + 0 + + + corr6 + 0 + + + freq6 + 100e6 + + + gain_mode6 + False + + + if_gain6 + 20 + + + iq_balance_mode6 + 0 + + + gain6 + 10 + + + ant7 + + + + bb_gain7 + 20 + + + bw7 + 0 + + + dc_offset_mode7 + 0 + + + corr7 + 0 + + + freq7 + 100e6 + + + gain_mode7 + False + + + if_gain7 + 20 + + + iq_balance_mode7 + 0 + + + gain7 + 10 + + + ant8 + + + + bb_gain8 + 20 + + + bw8 + 0 + + + dc_offset_mode8 + 0 + + + corr8 + 0 + + + freq8 + 100e6 + + + gain_mode8 + False + + + if_gain8 + 20 + + + iq_balance_mode8 + 0 + + + gain8 + 10 + + + ant9 + + + + bb_gain9 + 20 + + + bw9 + 0 + + + dc_offset_mode9 + 0 + + + corr9 + 0 + + + freq9 + 100e6 + + + gain_mode9 + False + + + if_gain9 + 20 + + + iq_balance_mode9 + 0 + + + gain9 + 10 + + + comment + + + + affinity + + + + args + + + + _enabled + 1 + + + _coordinate + (80, 396) + + + _rotation + 0 + + + id + rtlsdr_source_0 + + + maxoutbuf + 0 + + + clock_source0 + + + + time_source0 + + + + clock_source1 + + + + time_source1 + + + + clock_source2 + + + + time_source2 + + + + clock_source3 + + + + time_source3 + + + + clock_source4 + + + + time_source4 + + + + clock_source5 + + + + time_source5 + + + + clock_source6 + + + + time_source6 + + + + clock_source7 + + + + time_source7 + + + + minoutbuf + 0 + + + nchan + 1 + + + num_mboards + 1 + + + type + fc32 + + + sample_rate + samp_rate + + + sync + + + + + analog_fm_deemph_0_0 + blocks_multiply_const_vxx_0 + 0 + 0 + + + analog_fm_deemph_0_0_0 + blocks_multiply_const_vxx_0_0 + 0 + 0 + + + analog_fm_deemph_0_0_0_0 + blocks_multiply_const_vxx_0_0_0 + 0 + 0 + + + blocks_add_xx_0 + audio_sink_0 + 0 + 1 + + + blocks_add_xx_0_0 + audio_sink_0 + 0 + 0 + + + blocks_multiply_const_vxx_0 + blocks_add_xx_0_0 + 0 + 0 + + + blocks_multiply_const_vxx_0_0 + blocks_add_xx_0 + 0 + 1 + + + blocks_multiply_const_vxx_0_0_0 + blocks_add_xx_0 + 0 + 0 + + + blocks_multiply_const_vxx_0_0_0 + blocks_add_xx_0_0 + 0 + 1 + + + blocks_stream_to_vector_0 + fft_vxx_0 + 0 + 0 + + + epy_block_0 + crfa_rds_parser_table_qt_0_0 + out + freq + + + fft_vxx_0 + hier_ifft_decoder_0 + 0 + 0 + + + fft_vxx_0 + hier_ifft_decoder_0_0 + 0 + 0 + + + fft_vxx_0 + hier_ifft_decoder_0_1 + 0 + 0 + + + fir_filter_xxx_0_0 + analog_fm_deemph_0_0 + 0 + 0 + + + fir_filter_xxx_0_0_0 + analog_fm_deemph_0_0_0 + 0 + 0 + + + fir_filter_xxx_0_0_0_0 + analog_fm_deemph_0_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0 + fir_filter_xxx_0_0 + 0 + 0 + + + hier_ifft_decoder_0 + qtgui_freq_sink_x_0_0_1_2 + 0 + 0 + + + hier_ifft_decoder_0 + qtgui_freq_sink_x_0_0_1 + 1 + 0 + + + hier_ifft_decoder_0 + qtgui_const_sink_x_0 + 2 + 0 + + + hier_ifft_decoder_0 + crfa_decoder_compare_0 + rds + in0 + + + hier_ifft_decoder_0 + crfa_rds_parser_table_qt_0_0 + rds + in0 + + + hier_ifft_decoder_0_0 + fir_filter_xxx_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0_0 + qtgui_freq_sink_x_0_0_1_2 + 0 + 1 + + + hier_ifft_decoder_0_0 + qtgui_freq_sink_x_0_0_1 + 1 + 1 + + + hier_ifft_decoder_0_0 + qtgui_const_sink_x_0 + 2 + 1 + + + hier_ifft_decoder_0_0 + crfa_decoder_compare_0 + rds + in1 + + + hier_ifft_decoder_0_0 + crfa_rds_parser_table_qt_0_0 + rds + in1 + + + hier_ifft_decoder_0_1 + fir_filter_xxx_0_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0_1 + qtgui_freq_sink_x_0_0_1_2 + 0 + 2 + + + hier_ifft_decoder_0_1 + qtgui_freq_sink_x_0_0_1 + 1 + 2 + + + hier_ifft_decoder_0_1 + qtgui_const_sink_x_0 + 2 + 2 + + + hier_ifft_decoder_0_1 + crfa_decoder_compare_0 + rds + in2 + + + hier_ifft_decoder_0_1 + crfa_rds_parser_table_qt_0_0 + rds + in2 + + + osmosdr_source_0 + blocks_stream_to_vector_0 + 0 + 0 + + + osmosdr_source_0 + qtgui_freq_sink_x_0_0_1_0 + 0 + 0 + + + rtlsdr_source_0 + blocks_stream_to_vector_0 + 0 + 0 + + + rtlsdr_source_0 + qtgui_freq_sink_x_0_0_1_0 + 0 + 0 + + diff --git a/apps/fft-multi-decoder_fixed_freqs_manlap.grc b/apps/fft-multi-decoder_fixed_freqs_manlap.grc new file mode 100644 index 0000000..c4c4fcc --- /dev/null +++ b/apps/fft-multi-decoder_fixed_freqs_manlap.grc @@ -0,0 +1,6661 @@ + + + + Wed Feb 1 13:42:21 2017 + + options + + author + + + + window_size + 3000,2000 + + + category + [GRC Hier Blocks] + + + comment + + + + description + + + + _enabled + True + + + _coordinate + (8, 8) + + + _rotation + 0 + + + generate_options + qt_gui + + + hier_block_src_path + .: + + + id + top_block + + + max_nouts + 0 + + + qt_qss_theme + + + + realtime_scheduling + + + + run_command + {python} -u {filename} + + + run_options + prompt + + + run + True + + + thread_safe_setters + + + + title + + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (1134, 3) + + + _rotation + 0 + + + id + audio_decim + + + value + 5 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (950, 3) + + + _rotation + 0 + + + id + audio_rate + + + value + 48000 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (872, 76) + + + _rotation + 0 + + + id + baseband_rate + + + value + audio_rate*audio_decim + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (1046, 3) + + + _rotation + 0 + + + id + bb_decim + + + value + 2 + + + + variable_qtgui_range + + comment + + + + value + 26 + + + _enabled + 0 + + + _coordinate + (311, 758) + + + gui_hint + + + + _rotation + 0 + + + id + bbgain + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + 62 + + + rangeType + float + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + 1 + + + _coordinate + (439, 754) + + + _rotation + 0 + + + id + bbgain + + + value + 26 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (766, 3) + + + _rotation + 0 + + + id + chan_fft_len + + + value + 512*2 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (768, 164) + + + _rotation + 0 + + + id + chan_rate + + + value + audio_rate*audio_decim*bb_decim + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (854, 3) + + + _rotation + 0 + + + id + fft_len + + + value + 1024*4 + + + + variable_qtgui_range + + comment + SWR3 + + + value + 1007e5 + + + _enabled + 1 + + + _coordinate + (311, 0) + + + gui_hint + tabs@0:1,1,1,1 + + + _rotation + 0 + + + id + freq1 + + + label + + + + min_len + 150 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 102300000 + + + _enabled + 1 + + + _coordinate + (311, 95) + + + gui_hint + tabs@0:1,2,1,1 + + + _rotation + 0 + + + id + freq2 + + + label + + + + min_len + 150 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 101300000 + + + _enabled + 1 + + + _coordinate + (311, 191) + + + gui_hint + tabs@0:1,3,1,1 + + + _rotation + 0 + + + id + freq3 + + + label + + + + min_len + 150 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 101900000 + + + _enabled + True + + + _coordinate + (175, 39) + + + gui_hint + tabs@0:0,1,1,1 + + + _rotation + 0 + + + id + freq_tune + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 86e6 + + + step + 1e5 + + + stop + 108e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + samp_rate/1.7 + + + _enabled + 0 + + + _coordinate + (423, 838) + + + gui_hint + + + + _rotation + 0 + + + id + hackrf_bw + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 1e6 + + + step + 1e5 + + + stop + 20e6 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 33 + + + _enabled + 0 + + + _coordinate + (319, 638) + + + gui_hint + + + + _rotation + 0 + + + id + ifgain + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + 40 + + + rangeType + float + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + 1 + + + _coordinate + (439, 674) + + + _rotation + 0 + + + id + ifgain + + + value + 33 + + + + variable_qtgui_range + + comment + + + + value + 470 + + + _enabled + True + + + _coordinate + (15, 87) + + + gui_hint + + + + _rotation + 0 + + + id + loop_bw + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 10 + + + stop + 700 + + + rangeType + int + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 0 + + + _enabled + 0 + + + _coordinate + (15, 239) + + + gui_hint + + + + _rotation + 0 + + + id + num_zeros + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 1 + + + stop + chan_fft_len/2 + + + rangeType + int + + + widget + counter_slider + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (24, 181) + + + _rotation + 0 + + + id + num_zeros + + + value + 200 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (744, 92) + + + _rotation + 0 + + + id + samp_rate + + + value + chan_rate*fft_len/chan_fft_len + + + + variable_qtgui_range + + comment + + + + value + 0.1 + + + _enabled + True + + + _coordinate + (1344, 280) + + + gui_hint + tabs@0:0,2,1,1 + + + _rotation + 0 + + + id + volume + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 0.01 + + + stop + 1 + + + rangeType + float + + + widget + counter_slider + + + + variable_qtgui_range + + comment + + + + value + 0.1 + + + _enabled + True + + + _coordinate + (1557, 263) + + + gui_hint + tabs@0:0,3,1,1 + + + _rotation + 0 + + + id + volume2 + + + label + + + + min_len + 200 + + + orient + Qt.Horizontal + + + start + 0 + + + step + 0.01 + + + stop + 1 + + + rangeType + float + + + widget + counter_slider + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 27) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 83) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1333, 139) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + audio_sink + + alias + + + + comment + + + + affinity + + + + device_name + + + + _enabled + True + + + _coordinate + (1837, 39) + + + _rotation + 0 + + + id + audio_sink_0 + + + num_inputs + 2 + + + ok_to_block + True + + + samp_rate + audio_rate + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1725, 87) + + + _rotation + 0 + + + id + blocks_add_xx_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1701, 15) + + + _rotation + 0 + + + id + blocks_add_xx_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_ctrlport_monitor_performance + + alias + + + + comment + + + + _enabled + 0 + + + en + True + + + _coordinate + (1168, 388) + + + _rotation + 0 + + + id + blocks_ctrlport_monitor_performance_0 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume + + + affinity + + + + _enabled + 1 + + + _coordinate + (1493, 35) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume + + + affinity + + + + _enabled + 1 + + + _coordinate + (1517, 99) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + volume2/2 + + + affinity + + + + _enabled + 1 + + + _coordinate + (1517, 155) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_0_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_stream_to_vector + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (299, 487) + + + _rotation + 270 + + + id + blocks_stream_to_vector_0 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_items + fft_len + + + vlen + 1 + + + + crfa_decoder_compare + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1757, 231) + + + _rotation + 0 + + + id + crfa_decoder_compare_0 + + + nPorts + 3 + + + + crfa_rds_parser_table_qt + + alias + + + + comment + + + + affinity + + + + debug + False + + + _enabled + 1 + + + _coordinate + (1589, 423) + + + gui_hint + tabs@1 + + + _rotation + 0 + + + id + crfa_rds_parser_table_qt_0_0 + + + label + + + + log + False + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + nPorts + 3 + + + freq_tune + freq_tune + + + workdir + /home/clemens/forschungsarbeit/data/ + + + writeDB + False + + + + crfa_tmc_parser + + alias + + + + comment + + + + affinity + + + + debug + True + + + _enabled + True + + + _coordinate + (1840, 470) + + + gui_hint + tabs@1 + + + _rotation + 0 + + + id + crfa_tmc_parser_0 + + + label + + + + log + False + + + maxheight + 160 + + + workdir + /home/clemens/forschungsarbeit/data/ + + + writeDB + True + + + + epy_block + + alias + + + + _io_cache + ('freq-setter', 'blk', [('freqlist', '[92200000, 94700000, 101300000, 102300000, 105700000, 107700000]')], [], [('out', 'message', None)], 'Embedded Python Block example - a simple multiply const', ['freqlist']) + + + _source_code + """ +Embedded Python Blocks: + +Each time this file is saved, GRC will instantiate the first class it finds +to get ports and parameters of your block. The arguments to __init__ will +be the parameters. All of them are required to have default values! +""" + +import numpy as np +from gnuradio import gr +import pmt +from threading import Timer +#import time +class blk(gr.sync_block): # other base classes are basic_block, decim_block, interp_block + """Embedded Python Block example - a simple multiply const""" + + def __init__(self, freqlist=[92200000,94700000,101300000,102300000,105700000,107700000]): # only default arguments here + """arguments to this function show up as parameters in GRC""" + gr.sync_block.__init__( + self, + name='freq-setter', # will show up in GRC + in_sig=None, + out_sig=None + ) + # if an attribute with the same name as a parameter is found, + # a callback is registered (properties work, too). + self._freqlist=freqlist + self.message_port_register_out(pmt.intern('out')) + self.send_msg() + Timer(3, self.send_msg).start() #after 3 seconds (when table initialized) + #self.time=time.time() + @property + def freqlist(self): + """I'm the 'freqlist' property.""" + return self._freqlist + + @freqlist.setter + def freqlist(self, value): + self._freqlist = value + self.send_msg() + + @freqlist.deleter + def freqlist(self): + del self._freqlist + def send_msg(self): + #print(self.freqlist) + for i,freq in enumerate(self.freqlist): + send_string=str(i+1)+" "+str(freq) + send_pmt = pmt.string_to_symbol(send_string) + self.message_port_pub(pmt.intern('out'), send_pmt) + #def work(self, input_items, output_items): + #print("work") + #now=time.time() + #if now-self.time >2: + #self.time=now + #self.send_msg() + #return len(input_items[0]) + + + comment + + + + _enabled + True + + + freqlist + [freq1,freq2,freq3] + + + _coordinate + (1504, 636) + + + _rotation + 0 + + + id + epy_block_0 + + + + fft_vxx + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + fft_size + fft_len + + + forward + True + + + _coordinate + (423, 487) + + + _rotation + 0 + + + id + fft_vxx_0 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + nthreads + 2 + + + shift + True + + + window + [] + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 67) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 123) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (1094, 179) + + + _rotation + 0 + + + id + fir_filter_xxx_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (702, 271) + + + _rotation + 0 + + + id + hier_ifft_decoder_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq1-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + False + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (702, 391) + + + _rotation + 0 + + + id + hier_ifft_decoder_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq2-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + False + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + hier_ifft_decoder + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (704, 529) + + + _rotation + 0 + + + id + hier_ifft_decoder_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + chan_fft_len + chan_fft_len + + + cutpoint + (freq3-freq_tune)*fft_len/samp_rate-chan_fft_len/2+fft_len/2 + + + fft_len + fft_len + + + log + True + + + loop_bw + 3.14/loop_bw + + + num_zeros + num_zeros + + + samp_rate + samp_rate + + + + osmosdr_source + + alias + + + + ant0 + + + + bb_gain0 + bbgain + + + bw0 + hackrf_bw + + + dc_offset_mode0 + 2 + + + corr0 + 0 + + + freq0 + freq_tune + + + gain_mode0 + False + + + if_gain0 + ifgain + + + iq_balance_mode0 + 2 + + + gain0 + 16 + + + ant10 + + + + bb_gain10 + 20 + + + bw10 + 0 + + + dc_offset_mode10 + 0 + + + corr10 + 0 + + + freq10 + 100e6 + + + gain_mode10 + False + + + if_gain10 + 20 + + + iq_balance_mode10 + 0 + + + gain10 + 10 + + + ant11 + + + + bb_gain11 + 20 + + + bw11 + 0 + + + dc_offset_mode11 + 0 + + + corr11 + 0 + + + freq11 + 100e6 + + + gain_mode11 + False + + + if_gain11 + 20 + + + iq_balance_mode11 + 0 + + + gain11 + 10 + + + ant12 + + + + bb_gain12 + 20 + + + bw12 + 0 + + + dc_offset_mode12 + 0 + + + corr12 + 0 + + + freq12 + 100e6 + + + gain_mode12 + False + + + if_gain12 + 20 + + + iq_balance_mode12 + 0 + + + gain12 + 10 + + + ant13 + + + + bb_gain13 + 20 + + + bw13 + 0 + + + dc_offset_mode13 + 0 + + + corr13 + 0 + + + freq13 + 100e6 + + + gain_mode13 + False + + + if_gain13 + 20 + + + iq_balance_mode13 + 0 + + + gain13 + 10 + + + ant14 + + + + bb_gain14 + 20 + + + bw14 + 0 + + + dc_offset_mode14 + 0 + + + corr14 + 0 + + + freq14 + 100e6 + + + gain_mode14 + False + + + if_gain14 + 20 + + + iq_balance_mode14 + 0 + + + gain14 + 10 + + + ant15 + + + + bb_gain15 + 20 + + + bw15 + 0 + + + dc_offset_mode15 + 0 + + + corr15 + 0 + + + freq15 + 100e6 + + + gain_mode15 + False + + + if_gain15 + 20 + + + iq_balance_mode15 + 0 + + + gain15 + 10 + + + ant16 + + + + bb_gain16 + 20 + + + bw16 + 0 + + + dc_offset_mode16 + 0 + + + corr16 + 0 + + + freq16 + 100e6 + + + gain_mode16 + False + + + if_gain16 + 20 + + + iq_balance_mode16 + 0 + + + gain16 + 10 + + + ant17 + + + + bb_gain17 + 20 + + + bw17 + 0 + + + dc_offset_mode17 + 0 + + + corr17 + 0 + + + freq17 + 100e6 + + + gain_mode17 + False + + + if_gain17 + 20 + + + iq_balance_mode17 + 0 + + + gain17 + 10 + + + ant18 + + + + bb_gain18 + 20 + + + bw18 + 0 + + + dc_offset_mode18 + 0 + + + corr18 + 0 + + + freq18 + 100e6 + + + gain_mode18 + False + + + if_gain18 + 20 + + + iq_balance_mode18 + 0 + + + gain18 + 10 + + + ant19 + + + + bb_gain19 + 20 + + + bw19 + 0 + + + dc_offset_mode19 + 0 + + + corr19 + 0 + + + freq19 + 100e6 + + + gain_mode19 + False + + + if_gain19 + 20 + + + iq_balance_mode19 + 0 + + + gain19 + 10 + + + ant1 + + + + bb_gain1 + 20 + + + bw1 + 0 + + + dc_offset_mode1 + 0 + + + corr1 + 0 + + + freq1 + 100e6 + + + gain_mode1 + False + + + if_gain1 + 20 + + + iq_balance_mode1 + 0 + + + gain1 + 10 + + + ant20 + + + + bb_gain20 + 20 + + + bw20 + 0 + + + dc_offset_mode20 + 0 + + + corr20 + 0 + + + freq20 + 100e6 + + + gain_mode20 + False + + + if_gain20 + 20 + + + iq_balance_mode20 + 0 + + + gain20 + 10 + + + ant21 + + + + bb_gain21 + 20 + + + bw21 + 0 + + + dc_offset_mode21 + 0 + + + corr21 + 0 + + + freq21 + 100e6 + + + gain_mode21 + False + + + if_gain21 + 20 + + + iq_balance_mode21 + 0 + + + gain21 + 10 + + + ant22 + + + + bb_gain22 + 20 + + + bw22 + 0 + + + dc_offset_mode22 + 0 + + + corr22 + 0 + + + freq22 + 100e6 + + + gain_mode22 + False + + + if_gain22 + 20 + + + iq_balance_mode22 + 0 + + + gain22 + 10 + + + ant23 + + + + bb_gain23 + 20 + + + bw23 + 0 + + + dc_offset_mode23 + 0 + + + corr23 + 0 + + + freq23 + 100e6 + + + gain_mode23 + False + + + if_gain23 + 20 + + + iq_balance_mode23 + 0 + + + gain23 + 10 + + + ant24 + + + + bb_gain24 + 20 + + + bw24 + 0 + + + dc_offset_mode24 + 0 + + + corr24 + 0 + + + freq24 + 100e6 + + + gain_mode24 + False + + + if_gain24 + 20 + + + iq_balance_mode24 + 0 + + + gain24 + 10 + + + ant25 + + + + bb_gain25 + 20 + + + bw25 + 0 + + + dc_offset_mode25 + 0 + + + corr25 + 0 + + + freq25 + 100e6 + + + gain_mode25 + False + + + if_gain25 + 20 + + + iq_balance_mode25 + 0 + + + gain25 + 10 + + + ant26 + + + + bb_gain26 + 20 + + + bw26 + 0 + + + dc_offset_mode26 + 0 + + + corr26 + 0 + + + freq26 + 100e6 + + + gain_mode26 + False + + + if_gain26 + 20 + + + iq_balance_mode26 + 0 + + + gain26 + 10 + + + ant27 + + + + bb_gain27 + 20 + + + bw27 + 0 + + + dc_offset_mode27 + 0 + + + corr27 + 0 + + + freq27 + 100e6 + + + gain_mode27 + False + + + if_gain27 + 20 + + + iq_balance_mode27 + 0 + + + gain27 + 10 + + + ant28 + + + + bb_gain28 + 20 + + + bw28 + 0 + + + dc_offset_mode28 + 0 + + + corr28 + 0 + + + freq28 + 100e6 + + + gain_mode28 + False + + + if_gain28 + 20 + + + iq_balance_mode28 + 0 + + + gain28 + 10 + + + ant29 + + + + bb_gain29 + 20 + + + bw29 + 0 + + + dc_offset_mode29 + 0 + + + corr29 + 0 + + + freq29 + 100e6 + + + gain_mode29 + False + + + if_gain29 + 20 + + + iq_balance_mode29 + 0 + + + gain29 + 10 + + + ant2 + + + + bb_gain2 + 20 + + + bw2 + 0 + + + dc_offset_mode2 + 0 + + + corr2 + 0 + + + freq2 + 100e6 + + + gain_mode2 + False + + + if_gain2 + 20 + + + iq_balance_mode2 + 0 + + + gain2 + 10 + + + ant30 + + + + bb_gain30 + 20 + + + bw30 + 0 + + + dc_offset_mode30 + 0 + + + corr30 + 0 + + + freq30 + 100e6 + + + gain_mode30 + False + + + if_gain30 + 20 + + + iq_balance_mode30 + 0 + + + gain30 + 10 + + + ant31 + + + + bb_gain31 + 20 + + + bw31 + 0 + + + dc_offset_mode31 + 0 + + + corr31 + 0 + + + freq31 + 100e6 + + + gain_mode31 + False + + + if_gain31 + 20 + + + iq_balance_mode31 + 0 + + + gain31 + 10 + + + ant3 + + + + bb_gain3 + 20 + + + bw3 + 0 + + + dc_offset_mode3 + 0 + + + corr3 + 0 + + + freq3 + 100e6 + + + gain_mode3 + False + + + if_gain3 + 20 + + + iq_balance_mode3 + 0 + + + gain3 + 10 + + + ant4 + + + + bb_gain4 + 20 + + + bw4 + 0 + + + dc_offset_mode4 + 0 + + + corr4 + 0 + + + freq4 + 100e6 + + + gain_mode4 + False + + + if_gain4 + 20 + + + iq_balance_mode4 + 0 + + + gain4 + 10 + + + ant5 + + + + bb_gain5 + 20 + + + bw5 + 0 + + + dc_offset_mode5 + 0 + + + corr5 + 0 + + + freq5 + 100e6 + + + gain_mode5 + False + + + if_gain5 + 20 + + + iq_balance_mode5 + 0 + + + gain5 + 10 + + + ant6 + + + + bb_gain6 + 20 + + + bw6 + 0 + + + dc_offset_mode6 + 0 + + + corr6 + 0 + + + freq6 + 100e6 + + + gain_mode6 + False + + + if_gain6 + 20 + + + iq_balance_mode6 + 0 + + + gain6 + 10 + + + ant7 + + + + bb_gain7 + 20 + + + bw7 + 0 + + + dc_offset_mode7 + 0 + + + corr7 + 0 + + + freq7 + 100e6 + + + gain_mode7 + False + + + if_gain7 + 20 + + + iq_balance_mode7 + 0 + + + gain7 + 10 + + + ant8 + + + + bb_gain8 + 20 + + + bw8 + 0 + + + dc_offset_mode8 + 0 + + + corr8 + 0 + + + freq8 + 100e6 + + + gain_mode8 + False + + + if_gain8 + 20 + + + iq_balance_mode8 + 0 + + + gain8 + 10 + + + ant9 + + + + bb_gain9 + 20 + + + bw9 + 0 + + + dc_offset_mode9 + 0 + + + corr9 + 0 + + + freq9 + 100e6 + + + gain_mode9 + False + + + if_gain9 + 20 + + + iq_balance_mode9 + 0 + + + gain9 + 10 + + + comment + RF gain 0 = amp off + + + affinity + + + + args + + + + _enabled + 0 + + + _coordinate + (103, 339) + + + _rotation + 0 + + + id + osmosdr_source_0 + + + maxoutbuf + 0 + + + clock_source0 + + + + time_source0 + + + + clock_source1 + + + + time_source1 + + + + clock_source2 + + + + time_source2 + + + + clock_source3 + + + + time_source3 + + + + clock_source4 + + + + time_source4 + + + + clock_source5 + + + + time_source5 + + + + clock_source6 + + + + time_source6 + + + + clock_source7 + + + + time_source7 + + + + minoutbuf + 0 + + + nchan + 1 + + + num_mboards + 1 + + + type + fc32 + + + sample_rate + samp_rate + + + sync + + + + + qtgui_const_sink_x + + autoscale + False + + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1166, 283) + + + gui_hint + tabs@0:5,3,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_const_sink_x_0 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + marker1 + 0 + + + style1 + 0 + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "red" + + + label10 + + + + marker10 + 0 + + + style10 + 0 + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + marker2 + 0 + + + style2 + 0 + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + marker3 + 0 + + + style3 + 0 + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + marker4 + 0 + + + style4 + 0 + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + marker5 + 0 + + + style5 + 0 + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + marker6 + 0 + + + style6 + 0 + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "red" + + + label7 + + + + marker7 + 0 + + + style7 + 0 + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "red" + + + label8 + + + + marker8 + 0 + + + style8 + 0 + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "red" + + + label9 + + + + marker9 + 0 + + + style9 + 0 + + + width9 + 1 + + + name + "" + + + nconnections + 3 + + + size + 1024 + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_slope + qtgui.TRIG_SLOPE_POS + + + tr_tag + "" + + + type + complex + + + update_time + 0.01 + + + xmax + 2 + + + xmin + -2 + + + ymax + 2 + + + ymin + -2 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + baseband_rate + + + alias + + + + fc + 0 + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + 1 + + + fftsize + chan_fft_len + + + _coordinate + (1126, 479) + + + gui_hint + tabs@0:5,1,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + "" + + + nconnections + 3 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + complex + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 70 + + + ymin + -60 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + samp_rate + + + alias + + + + fc + freq_tune + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + True + + + fftsize + 2048*2 + + + _coordinate + (399, 387) + + + gui_hint + tabs@0:4,1,1,3 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1_0 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + "" + + + nconnections + 1 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + complex + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 10 + + + ymin + -100 + + + + qtgui_freq_sink_x + + autoscale + False + + + average + 1.0 + + + bw + baseband_rate/bb_decim + + + alias + + + + fc + 0 + + + comment + + + + ctrlpanel + False + + + affinity + + + + _enabled + 1 + + + fftsize + chan_fft_len + + + _coordinate + (1285, 615) + + + gui_hint + tabs@0:5,2,1,1 + + + _rotation + 0 + + + grid + False + + + id + qtgui_freq_sink_x_0_0_1_2 + + + legend + True + + + alpha1 + 1.0 + + + color1 + "blue" + + + label1 + + + + width1 + 1 + + + alpha10 + 1.0 + + + color10 + "dark blue" + + + label10 + + + + width10 + 1 + + + alpha2 + 1.0 + + + color2 + "red" + + + label2 + + + + width2 + 1 + + + alpha3 + 1.0 + + + color3 + "green" + + + label3 + + + + width3 + 1 + + + alpha4 + 1.0 + + + color4 + "black" + + + label4 + + + + width4 + 1 + + + alpha5 + 1.0 + + + color5 + "cyan" + + + label5 + + + + width5 + 1 + + + alpha6 + 1.0 + + + color6 + "magenta" + + + label6 + + + + width6 + 1 + + + alpha7 + 1.0 + + + color7 + "yellow" + + + label7 + + + + width7 + 1 + + + alpha8 + 1.0 + + + color8 + "dark red" + + + label8 + + + + width8 + 1 + + + alpha9 + 1.0 + + + color9 + "dark green" + + + label9 + + + + width9 + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + name + + + + nconnections + 3 + + + showports + True + + + freqhalf + True + + + tr_chan + 0 + + + tr_level + 0.0 + + + tr_mode + qtgui.TRIG_MODE_FREE + + + tr_tag + "" + + + type + float + + + update_time + 0.10 + + + wintype + firdes.WIN_BLACKMAN_hARRIS + + + ymax + 0 + + + ymin + -120 + + + + rtlsdr_source + + alias + + + + ant0 + + + + bb_gain0 + 0 + + + bw0 + 0 + + + dc_offset_mode0 + 0 + + + corr0 + 0 + + + freq0 + freq_tune + + + gain_mode0 + False + + + if_gain0 + 0 + + + iq_balance_mode0 + 0 + + + gain0 + 28 + + + ant10 + + + + bb_gain10 + 20 + + + bw10 + 0 + + + dc_offset_mode10 + 0 + + + corr10 + 0 + + + freq10 + 100e6 + + + gain_mode10 + False + + + if_gain10 + 20 + + + iq_balance_mode10 + 0 + + + gain10 + 10 + + + ant11 + + + + bb_gain11 + 20 + + + bw11 + 0 + + + dc_offset_mode11 + 0 + + + corr11 + 0 + + + freq11 + 100e6 + + + gain_mode11 + False + + + if_gain11 + 20 + + + iq_balance_mode11 + 0 + + + gain11 + 10 + + + ant12 + + + + bb_gain12 + 20 + + + bw12 + 0 + + + dc_offset_mode12 + 0 + + + corr12 + 0 + + + freq12 + 100e6 + + + gain_mode12 + False + + + if_gain12 + 20 + + + iq_balance_mode12 + 0 + + + gain12 + 10 + + + ant13 + + + + bb_gain13 + 20 + + + bw13 + 0 + + + dc_offset_mode13 + 0 + + + corr13 + 0 + + + freq13 + 100e6 + + + gain_mode13 + False + + + if_gain13 + 20 + + + iq_balance_mode13 + 0 + + + gain13 + 10 + + + ant14 + + + + bb_gain14 + 20 + + + bw14 + 0 + + + dc_offset_mode14 + 0 + + + corr14 + 0 + + + freq14 + 100e6 + + + gain_mode14 + False + + + if_gain14 + 20 + + + iq_balance_mode14 + 0 + + + gain14 + 10 + + + ant15 + + + + bb_gain15 + 20 + + + bw15 + 0 + + + dc_offset_mode15 + 0 + + + corr15 + 0 + + + freq15 + 100e6 + + + gain_mode15 + False + + + if_gain15 + 20 + + + iq_balance_mode15 + 0 + + + gain15 + 10 + + + ant16 + + + + bb_gain16 + 20 + + + bw16 + 0 + + + dc_offset_mode16 + 0 + + + corr16 + 0 + + + freq16 + 100e6 + + + gain_mode16 + False + + + if_gain16 + 20 + + + iq_balance_mode16 + 0 + + + gain16 + 10 + + + ant17 + + + + bb_gain17 + 20 + + + bw17 + 0 + + + dc_offset_mode17 + 0 + + + corr17 + 0 + + + freq17 + 100e6 + + + gain_mode17 + False + + + if_gain17 + 20 + + + iq_balance_mode17 + 0 + + + gain17 + 10 + + + ant18 + + + + bb_gain18 + 20 + + + bw18 + 0 + + + dc_offset_mode18 + 0 + + + corr18 + 0 + + + freq18 + 100e6 + + + gain_mode18 + False + + + if_gain18 + 20 + + + iq_balance_mode18 + 0 + + + gain18 + 10 + + + ant19 + + + + bb_gain19 + 20 + + + bw19 + 0 + + + dc_offset_mode19 + 0 + + + corr19 + 0 + + + freq19 + 100e6 + + + gain_mode19 + False + + + if_gain19 + 20 + + + iq_balance_mode19 + 0 + + + gain19 + 10 + + + ant1 + + + + bb_gain1 + 20 + + + bw1 + 0 + + + dc_offset_mode1 + 0 + + + corr1 + 0 + + + freq1 + 100e6 + + + gain_mode1 + False + + + if_gain1 + 20 + + + iq_balance_mode1 + 0 + + + gain1 + 10 + + + ant20 + + + + bb_gain20 + 20 + + + bw20 + 0 + + + dc_offset_mode20 + 0 + + + corr20 + 0 + + + freq20 + 100e6 + + + gain_mode20 + False + + + if_gain20 + 20 + + + iq_balance_mode20 + 0 + + + gain20 + 10 + + + ant21 + + + + bb_gain21 + 20 + + + bw21 + 0 + + + dc_offset_mode21 + 0 + + + corr21 + 0 + + + freq21 + 100e6 + + + gain_mode21 + False + + + if_gain21 + 20 + + + iq_balance_mode21 + 0 + + + gain21 + 10 + + + ant22 + + + + bb_gain22 + 20 + + + bw22 + 0 + + + dc_offset_mode22 + 0 + + + corr22 + 0 + + + freq22 + 100e6 + + + gain_mode22 + False + + + if_gain22 + 20 + + + iq_balance_mode22 + 0 + + + gain22 + 10 + + + ant23 + + + + bb_gain23 + 20 + + + bw23 + 0 + + + dc_offset_mode23 + 0 + + + corr23 + 0 + + + freq23 + 100e6 + + + gain_mode23 + False + + + if_gain23 + 20 + + + iq_balance_mode23 + 0 + + + gain23 + 10 + + + ant24 + + + + bb_gain24 + 20 + + + bw24 + 0 + + + dc_offset_mode24 + 0 + + + corr24 + 0 + + + freq24 + 100e6 + + + gain_mode24 + False + + + if_gain24 + 20 + + + iq_balance_mode24 + 0 + + + gain24 + 10 + + + ant25 + + + + bb_gain25 + 20 + + + bw25 + 0 + + + dc_offset_mode25 + 0 + + + corr25 + 0 + + + freq25 + 100e6 + + + gain_mode25 + False + + + if_gain25 + 20 + + + iq_balance_mode25 + 0 + + + gain25 + 10 + + + ant26 + + + + bb_gain26 + 20 + + + bw26 + 0 + + + dc_offset_mode26 + 0 + + + corr26 + 0 + + + freq26 + 100e6 + + + gain_mode26 + False + + + if_gain26 + 20 + + + iq_balance_mode26 + 0 + + + gain26 + 10 + + + ant27 + + + + bb_gain27 + 20 + + + bw27 + 0 + + + dc_offset_mode27 + 0 + + + corr27 + 0 + + + freq27 + 100e6 + + + gain_mode27 + False + + + if_gain27 + 20 + + + iq_balance_mode27 + 0 + + + gain27 + 10 + + + ant28 + + + + bb_gain28 + 20 + + + bw28 + 0 + + + dc_offset_mode28 + 0 + + + corr28 + 0 + + + freq28 + 100e6 + + + gain_mode28 + False + + + if_gain28 + 20 + + + iq_balance_mode28 + 0 + + + gain28 + 10 + + + ant29 + + + + bb_gain29 + 20 + + + bw29 + 0 + + + dc_offset_mode29 + 0 + + + corr29 + 0 + + + freq29 + 100e6 + + + gain_mode29 + False + + + if_gain29 + 20 + + + iq_balance_mode29 + 0 + + + gain29 + 10 + + + ant2 + + + + bb_gain2 + 20 + + + bw2 + 0 + + + dc_offset_mode2 + 0 + + + corr2 + 0 + + + freq2 + 100e6 + + + gain_mode2 + False + + + if_gain2 + 20 + + + iq_balance_mode2 + 0 + + + gain2 + 10 + + + ant30 + + + + bb_gain30 + 20 + + + bw30 + 0 + + + dc_offset_mode30 + 0 + + + corr30 + 0 + + + freq30 + 100e6 + + + gain_mode30 + False + + + if_gain30 + 20 + + + iq_balance_mode30 + 0 + + + gain30 + 10 + + + ant31 + + + + bb_gain31 + 20 + + + bw31 + 0 + + + dc_offset_mode31 + 0 + + + corr31 + 0 + + + freq31 + 100e6 + + + gain_mode31 + False + + + if_gain31 + 20 + + + iq_balance_mode31 + 0 + + + gain31 + 10 + + + ant3 + + + + bb_gain3 + 20 + + + bw3 + 0 + + + dc_offset_mode3 + 0 + + + corr3 + 0 + + + freq3 + 100e6 + + + gain_mode3 + False + + + if_gain3 + 20 + + + iq_balance_mode3 + 0 + + + gain3 + 10 + + + ant4 + + + + bb_gain4 + 20 + + + bw4 + 0 + + + dc_offset_mode4 + 0 + + + corr4 + 0 + + + freq4 + 100e6 + + + gain_mode4 + False + + + if_gain4 + 20 + + + iq_balance_mode4 + 0 + + + gain4 + 10 + + + ant5 + + + + bb_gain5 + 20 + + + bw5 + 0 + + + dc_offset_mode5 + 0 + + + corr5 + 0 + + + freq5 + 100e6 + + + gain_mode5 + False + + + if_gain5 + 20 + + + iq_balance_mode5 + 0 + + + gain5 + 10 + + + ant6 + + + + bb_gain6 + 20 + + + bw6 + 0 + + + dc_offset_mode6 + 0 + + + corr6 + 0 + + + freq6 + 100e6 + + + gain_mode6 + False + + + if_gain6 + 20 + + + iq_balance_mode6 + 0 + + + gain6 + 10 + + + ant7 + + + + bb_gain7 + 20 + + + bw7 + 0 + + + dc_offset_mode7 + 0 + + + corr7 + 0 + + + freq7 + 100e6 + + + gain_mode7 + False + + + if_gain7 + 20 + + + iq_balance_mode7 + 0 + + + gain7 + 10 + + + ant8 + + + + bb_gain8 + 20 + + + bw8 + 0 + + + dc_offset_mode8 + 0 + + + corr8 + 0 + + + freq8 + 100e6 + + + gain_mode8 + False + + + if_gain8 + 20 + + + iq_balance_mode8 + 0 + + + gain8 + 10 + + + ant9 + + + + bb_gain9 + 20 + + + bw9 + 0 + + + dc_offset_mode9 + 0 + + + corr9 + 0 + + + freq9 + 100e6 + + + gain_mode9 + False + + + if_gain9 + 20 + + + iq_balance_mode9 + 0 + + + gain9 + 10 + + + comment + + + + affinity + + + + args + + + + _enabled + 1 + + + _coordinate + (80, 356) + + + _rotation + 0 + + + id + rtlsdr_source_0 + + + maxoutbuf + 0 + + + clock_source0 + + + + time_source0 + + + + clock_source1 + + + + time_source1 + + + + clock_source2 + + + + time_source2 + + + + clock_source3 + + + + time_source3 + + + + clock_source4 + + + + time_source4 + + + + clock_source5 + + + + time_source5 + + + + clock_source6 + + + + time_source6 + + + + clock_source7 + + + + time_source7 + + + + minoutbuf + 0 + + + nchan + 1 + + + num_mboards + 1 + + + type + fc32 + + + sample_rate + samp_rate + + + sync + + + + + qtgui_tab_widget + + alias + + + + comment + + + + _enabled + 1 + + + _coordinate + (79, 563) + + + gui_hint + + + + _rotation + 0 + + + id + tabs + + + label0 + Tab 0 + + + label1 + Tab 1 + + + label10 + Tab 10 + + + label11 + Tab 11 + + + label12 + Tab 12 + + + label13 + Tab 13 + + + label14 + Tab 14 + + + label15 + Tab 15 + + + label16 + Tab 16 + + + label17 + Tab 17 + + + label18 + Tab 18 + + + label19 + Tab 19 + + + label2 + + + + label3 + Tab 3 + + + label4 + Tab 4 + + + label5 + Tab 5 + + + label6 + Tab 6 + + + label7 + Tab 7 + + + label8 + Tab 8 + + + label9 + Tab 9 + + + num_tabs + 2 + + + + analog_fm_deemph_0_0 + blocks_multiply_const_vxx_0 + 0 + 0 + + + analog_fm_deemph_0_0_0 + blocks_multiply_const_vxx_0_0 + 0 + 0 + + + analog_fm_deemph_0_0_0_0 + blocks_multiply_const_vxx_0_0_0 + 0 + 0 + + + blocks_add_xx_0 + audio_sink_0 + 0 + 1 + + + blocks_add_xx_0_0 + audio_sink_0 + 0 + 0 + + + blocks_multiply_const_vxx_0 + blocks_add_xx_0_0 + 0 + 0 + + + blocks_multiply_const_vxx_0_0 + blocks_add_xx_0 + 0 + 1 + + + blocks_multiply_const_vxx_0_0_0 + blocks_add_xx_0 + 0 + 0 + + + blocks_multiply_const_vxx_0_0_0 + blocks_add_xx_0_0 + 0 + 1 + + + blocks_stream_to_vector_0 + fft_vxx_0 + 0 + 0 + + + crfa_rds_parser_table_qt_0_0 + crfa_tmc_parser_0 + tmc_raw + in + + + epy_block_0 + crfa_rds_parser_table_qt_0_0 + out + freq + + + fft_vxx_0 + hier_ifft_decoder_0 + 0 + 0 + + + fft_vxx_0 + hier_ifft_decoder_0_0 + 0 + 0 + + + fft_vxx_0 + hier_ifft_decoder_0_1 + 0 + 0 + + + fir_filter_xxx_0_0 + analog_fm_deemph_0_0 + 0 + 0 + + + fir_filter_xxx_0_0_0 + analog_fm_deemph_0_0_0 + 0 + 0 + + + fir_filter_xxx_0_0_0_0 + analog_fm_deemph_0_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0 + fir_filter_xxx_0_0 + 0 + 0 + + + hier_ifft_decoder_0 + qtgui_freq_sink_x_0_0_1_2 + 0 + 0 + + + hier_ifft_decoder_0 + qtgui_freq_sink_x_0_0_1 + 1 + 0 + + + hier_ifft_decoder_0 + qtgui_const_sink_x_0 + 2 + 0 + + + hier_ifft_decoder_0 + crfa_decoder_compare_0 + rds + in0 + + + hier_ifft_decoder_0 + crfa_rds_parser_table_qt_0_0 + rds + in0 + + + hier_ifft_decoder_0_0 + fir_filter_xxx_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0_0 + qtgui_freq_sink_x_0_0_1_2 + 0 + 1 + + + hier_ifft_decoder_0_0 + qtgui_freq_sink_x_0_0_1 + 1 + 1 + + + hier_ifft_decoder_0_0 + qtgui_const_sink_x_0 + 2 + 1 + + + hier_ifft_decoder_0_0 + crfa_decoder_compare_0 + rds + in1 + + + hier_ifft_decoder_0_0 + crfa_rds_parser_table_qt_0_0 + rds + in1 + + + hier_ifft_decoder_0_1 + fir_filter_xxx_0_0_0_0 + 0 + 0 + + + hier_ifft_decoder_0_1 + qtgui_freq_sink_x_0_0_1_2 + 0 + 2 + + + hier_ifft_decoder_0_1 + qtgui_freq_sink_x_0_0_1 + 1 + 2 + + + hier_ifft_decoder_0_1 + qtgui_const_sink_x_0 + 2 + 2 + + + hier_ifft_decoder_0_1 + crfa_decoder_compare_0 + rds + in2 + + + hier_ifft_decoder_0_1 + crfa_rds_parser_table_qt_0_0 + rds + in2 + + + osmosdr_source_0 + blocks_stream_to_vector_0 + 0 + 0 + + + osmosdr_source_0 + qtgui_freq_sink_x_0_0_1_0 + 0 + 0 + + + rtlsdr_source_0 + blocks_stream_to_vector_0 + 0 + 0 + + + rtlsdr_source_0 + qtgui_freq_sink_x_0_0_1_0 + 0 + 0 + + diff --git a/apps/ifft-RDS-decoder_hier-block.grc b/apps/ifft-RDS-decoder_hier-block.grc new file mode 100644 index 0000000..180f5fe --- /dev/null +++ b/apps/ifft-RDS-decoder_hier-block.grc @@ -0,0 +1,3144 @@ + + + + Fri Feb 3 10:49:49 2017 + + options + + author + + + + window_size + 2000,2000 + + + category + [GRC Hier Blocks] + + + comment + + + + description + + + + _enabled + True + + + _coordinate + (8, 8) + + + _rotation + 0 + + + generate_options + hb + + + hier_block_src_path + .: + + + id + hier_ifft_decoder + + + max_nouts + 0 + + + qt_qss_theme + + + + realtime_scheduling + + + + run_command + {python} -u {filename} + + + run_options + prompt + + + run + True + + + thread_safe_setters + + + + title + + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (646, 3) + + + _rotation + 0 + + + id + audio_decim + + + value + 5 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (870, 3) + + + _rotation + 0 + + + id + audio_rate + + + value + 48000 + + + + variable + + comment + + + + _enabled + 1 + + + _coordinate + (519, 3) + + + _rotation + 0 + + + id + baseband_rate + + + value + 240000 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (766, 3) + + + _rotation + 0 + + + id + bb_decim + + + value + 2 + + + + variable + + comment + + + + _enabled + True + + + _coordinate + (646, 75) + + + _rotation + 0 + + + id + chan_rate + + + value + audio_rate*audio_decim*bb_decim + + + + analog_fm_deemph + + alias + + + + comment + + + + affinity + + + + _enabled + 2 + + + _coordinate + (207, 403) + + + _rotation + 0 + + + id + analog_fm_deemph_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + audio_rate + + + tau + 75e-6 + + + + analog_wfm_rcv + + audio_decimation + bb_decim + + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (335, 155) + + + _rotation + 0 + + + id + analog_wfm_rcv_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + quad_rate + chan_rate + + + + parameter + + alias + + + + comment + + + + _enabled + 0 + + + _coordinate + (527, 67) + + + _rotation + 0 + + + id + baseband_rate + + + label + + + + short_id + + + + type + intx + + + value + 240000*bb_decim + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1094, 271) + + + _rotation + 0 + + + id + blocks_add_xx_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (886, 702) + + + _rotation + 0 + + + id + blocks_add_xx_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_add_xx + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1206, 814) + + + _rotation + 0 + + + id + blocks_add_xx_0_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_inputs + 2 + + + vlen + 1 + + + + blocks_complex_to_real + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (910, 223) + + + _rotation + 0 + + + id + blocks_complex_to_real_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_delay + + alias + + + + comment + + + + affinity + + + + delay + 1 + + + _enabled + 0 + + + _coordinate + (958, 291) + + + _rotation + 0 + + + id + blocks_delay_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_ports + 1 + + + type + float + + + vlen + 1 + + + + blocks_delay + + alias + + + + comment + + + + affinity + + + + delay + 1 + + + _enabled + 0 + + + _coordinate + (750, 770) + + + _rotation + 0 + + + id + blocks_delay_1_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_ports + 1 + + + type + float + + + vlen + 1 + + + + blocks_delay + + alias + + + + comment + + + + affinity + + + + delay + 1 + + + _enabled + 0 + + + _coordinate + (710, 682) + + + _rotation + 0 + + + id + blocks_delay_1_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_ports + 1 + + + type + float + + + vlen + 1 + + + + blocks_delay + + alias + + + + comment + + + + affinity + + + + delay + 1 + + + _enabled + 0 + + + _coordinate + (1070, 882) + + + _rotation + 0 + + + id + blocks_delay_1_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_ports + 1 + + + type + float + + + vlen + 1 + + + + blocks_file_sink + + append + False + + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + file + "/tmp/fm_dec_240k_"+str(cutpoint) + + + _coordinate + (750, 371) + + + _rotation + 0 + + + id + blocks_file_sink_0 + + + type + float + + + unbuffered + False + + + vlen + 1 + + + + blocks_keep_one_in_n + + alias + + + + comment + + + + affinity + + + + _enabled + 2 + + + _coordinate + (862, 443) + + + _rotation + 180 + + + id + blocks_keep_one_in_n_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + n + 2 + + + type + byte + + + vlen + 1 + + + + blocks_keep_one_in_n + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (654, 922) + + + _rotation + 180 + + + id + blocks_keep_one_in_n_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + n + 2 + + + type + byte + + + vlen + 1 + + + + blocks_keep_one_in_n + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (974, 1034) + + + _rotation + 180 + + + id + blocks_keep_one_in_n_0_0_0_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + n + 2 + + + type + byte + + + vlen + 1 + + + + blocks_keep_one_in_n + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (962, 830) + + + _rotation + 270 + + + id + blocks_keep_one_in_n_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + n + 2 + + + type + float + + + vlen + 1 + + + + blocks_keep_one_in_n + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1289, 942) + + + _rotation + 270 + + + id + blocks_keep_one_in_n_0_1_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + n + 2 + + + type + float + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + -1 + + + affinity + + + + _enabled + 0 + + + _coordinate + (1038, 339) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_1 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + -1 + + + affinity + + + + _enabled + 0 + + + _coordinate + (830, 826) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_1_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_multiply_const_vxx + + alias + + + + comment + + + + const + -1 + + + affinity + + + + _enabled + 0 + + + _coordinate + (1150, 938) + + + _rotation + 0 + + + id + blocks_multiply_const_vxx_1_0_0 + + + type + float + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + vlen + 1 + + + + blocks_null_source + + alias + + + + bus_conns + [[0,],] + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (551, 631) + + + _rotation + 0 + + + id + blocks_null_source_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_outputs + 1 + + + type + byte + + + vlen + 1 + + + + blocks_vector_to_stream + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (31, 139) + + + _rotation + 0 + + + id + blocks_vector_to_stream_0_0_1 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + num_items + chan_fft_len + + + vlen + 1 + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (343, 3) + + + _rotation + 0 + + + id + chan_fft_len + + + label + + + + short_id + + + + type + intx + + + value + 512 + + + + crfa_decoder_compare + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1397, 758) + + + _rotation + 0 + + + id + crfa_decoder_compare_0 + + + nPorts + 3 + + + + crfa_diff_add_sync_decim + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1214, 203) + + + _rotation + 0 + + + id + crfa_diff_add_sync_decim_0 + + + log + log + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + threshold + 0.1 + + + max_ratio_below_threshold + 0.8 + + + + crfa_rds_decoder + + alias + + + + comment + + + + affinity + + + + debug + False + + + _enabled + 1 + + + _coordinate + (918, 587) + + + _rotation + 0 + + + id + crfa_rds_decoder_3 + + + log + False + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + crfa_rds_decoder + + alias + + + + comment + + + + affinity + + + + debug + False + + + _enabled + 0 + + + _coordinate + (710, 1074) + + + _rotation + 0 + + + id + crfa_rds_decoder_3_1 + + + log + False + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + crfa_rds_decoder + + alias + + + + comment + + + + affinity + + + + debug + False + + + _enabled + 0 + + + _coordinate + (1030, 1186) + + + _rotation + 0 + + + id + crfa_rds_decoder_3_1_0 + + + log + False + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + crfa_sync_decim + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (1232, 308) + + + _rotation + 0 + + + id + crfa_sync_decim_0 + + + log + log + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + threshold + 0.25 + + + min_diff + 0.2 + + + + crfa_vector_cutter + + alias + + + + comment + + + + affinity + + + + _enabled + True + + + _coordinate + (39, 283) + + + _rotation + 0 + + + id + crfa_vector_cutter_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + cutpoint + cutpoint + + + insize + fft_len + + + zero_len + num_zeros + + + outsize + chan_fft_len + + + pad_out + False + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (375, 67) + + + _rotation + 0 + + + id + cutpoint + + + label + + + + short_id + + + + type + intx + + + value + 0 + + + + digital_binary_slicer_fb + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (1062, 479) + + + _rotation + 180 + + + id + digital_binary_slicer_fb_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + digital_binary_slicer_fb + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (854, 958) + + + _rotation + 180 + + + id + digital_binary_slicer_fb_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + digital_binary_slicer_fb + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (1174, 1070) + + + _rotation + 180 + + + id + digital_binary_slicer_fb_0_1_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + + digital_diff_decoder_bb + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (798, 523) + + + _rotation + 180 + + + id + digital_diff_decoder_bb_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + modulus + 2 + + + + digital_diff_decoder_bb + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (591, 1010) + + + _rotation + 180 + + + id + digital_diff_decoder_bb_0_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + modulus + 2 + + + + digital_diff_decoder_bb + + alias + + + + comment + + + + affinity + + + + _enabled + 0 + + + _coordinate + (910, 1122) + + + _rotation + 180 + + + id + digital_diff_decoder_bb_0_1_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + modulus + 2 + + + + digital_mpsk_receiver_cc + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + _coordinate + (686, 155) + + + _rotation + 0 + + + gain_mu + 0.05 + + + gain_omega + 0.001 + + + id + digital_mpsk_receiver_cc_0 + + + w + loop_bw + + + M + 2 + + + fmax + 0.06 + + + maxoutbuf + 0 + + + fmin + -0.06 + + + minoutbuf + 0 + + + mu + 0.5 + + + omega_relative_limit + 0.005 + + + omega + 48000 / 2375.0 + + + theta + 0 + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (247, 3) + + + _rotation + 0 + + + id + fft_len + + + label + + + + short_id + + + + type + intx + + + value + 1024*10 + + + + fft_vxx + + alias + + + + comment + + + + affinity + + + + _enabled + 1 + + + fft_size + chan_fft_len + + + forward + False + + + _coordinate + (23, 183) + + + _rotation + 180 + + + id + fft_vxx_1_1 + + + type + complex + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + nthreads + 1 + + + shift + True + + + window + [] + + + + fir_filter_xxx + + alias + + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 2 + + + _coordinate + (191, 331) + + + _rotation + 180 + + + id + fir_filter_xxx_0_0 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_delay + 0 + + + taps + firdes.low_pass(1.0,baseband_rate,13e3,3e3,firdes.WIN_HAMMING) + + + type + fff + + + + freq_xlating_fir_filter_xxx + + alias + + + + center_freq + 57e3 + + + comment + + + + affinity + + + + decim + audio_decim + + + _enabled + 1 + + + _coordinate + (463, 231) + + + _rotation + 270 + + + id + freq_xlating_fir_filter_xxx_1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + baseband_rate + + + taps + firdes.low_pass(2500.0,baseband_rate,2.4e3,2e3,firdes.WIN_HAMMING) + + + type + fcc + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (1208, 16) + + + _rotation + 0 + + + id + log + + + label + log + + + short_id + + + + type + + + + value + True + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (742, 71) + + + _rotation + 0 + + + id + loop_bw + + + label + + + + short_id + + + + type + eng_float + + + value + 3.14/150.0 + + + + low_pass_filter + + beta + 6.76 + + + alias + + + + comment + + + + affinity + + + + cutoff_freq + 90e3 + + + decim + 1 + + + _enabled + 2 + + + type + fir_filter_ccf + + + _coordinate + (167, 79) + + + _rotation + 0 + + + gain + 1 + + + id + low_pass_filter_0 + + + interp + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + samp_rate + baseband_rate + + + width + 30e3 + + + win + firdes.WIN_HAMMING + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (271, 519) + + + _rotation + 0 + + + id + num_zeros + + + label + + + + short_id + + + + type + intx + + + value + 128 + + + + pad_sink + + comment + + + + _enabled + True + + + _coordinate + (415, 443) + + + _rotation + 0 + + + id + pad_sink_0 + + + type + float + + + label + audio + + + num_streams + 1 + + + optional + True + + + vlen + 1 + + + + pad_sink + + comment + + + + _enabled + 1 + + + _coordinate + (1150, 682) + + + _rotation + 0 + + + id + pad_sink_0_0 + + + type + message + + + label + rds + + + num_streams + 1 + + + optional + True + + + vlen + 1 + + + + pad_sink + + comment + + + + _enabled + True + + + _coordinate + (319, 243) + + + _rotation + 0 + + + id + pad_sink_0_1 + + + type + complex + + + label + out + + + num_streams + 1 + + + optional + True + + + vlen + 1 + + + + pad_sink + + comment + + + + _enabled + True + + + _coordinate + (894, 111) + + + _rotation + 0 + + + id + pad_sink_1 + + + type + complex + + + label + psk_out + + + num_streams + 1 + + + optional + True + + + vlen + 1 + + + + pad_source + + comment + + + + _enabled + True + + + _coordinate + (15, 427) + + + _rotation + 0 + + + id + pad_source_0 + + + label + in + + + num_streams + 1 + + + optional + False + + + type + complex + + + vlen + fft_len + + + + root_raised_cosine_filter + + alpha + 1 + + + alias + + + + comment + + + + affinity + + + + decim + 1 + + + _enabled + 1 + + + type + fir_filter_ccf + + + _coordinate + (551, 207) + + + _rotation + 90 + + + gain + 1 + + + id + root_raised_cosine_filter_0 + + + interp + 1 + + + maxoutbuf + 0 + + + minoutbuf + 0 + + + ntaps + 100 + + + samp_rate + audio_rate + + + sym_rate + 2375 + + + + parameter + + alias + + + + comment + + + + _enabled + True + + + _coordinate + (239, 83) + + + _rotation + 0 + + + id + samp_rate + + + label + + + + short_id + + + + type + intx + + + value + 19200000 + + + + analog_fm_deemph_0_0 + pad_sink_0 + 0 + 0 + + + analog_wfm_rcv_0_0 + blocks_file_sink_0 + 0 + 0 + + + analog_wfm_rcv_0_0 + fir_filter_xxx_0_0 + 0 + 0 + + + analog_wfm_rcv_0_0 + freq_xlating_fir_filter_xxx_1 + 0 + 0 + + + blocks_add_xx_0_0 + blocks_keep_one_in_n_0_1 + 0 + 0 + + + blocks_add_xx_0_0_0 + blocks_keep_one_in_n_0_1_0 + 0 + 0 + + + blocks_complex_to_real_0 + blocks_add_xx_0 + 0 + 0 + + + blocks_complex_to_real_0 + blocks_delay_1 + 0 + 0 + + + blocks_complex_to_real_0 + blocks_delay_1_0_0 + 0 + 0 + + + blocks_complex_to_real_0 + crfa_diff_add_sync_decim_0 + 0 + 0 + + + blocks_complex_to_real_0 + crfa_sync_decim_0 + 0 + 0 + + + blocks_delay_1 + blocks_multiply_const_vxx_1 + 0 + 0 + + + blocks_delay_1_0 + blocks_add_xx_0_0_0 + 0 + 0 + + + blocks_delay_1_0 + blocks_delay_1_0_1 + 0 + 0 + + + blocks_delay_1_0 + blocks_multiply_const_vxx_1_0 + 0 + 0 + + + blocks_delay_1_0_0 + blocks_add_xx_0_0 + 0 + 0 + + + blocks_delay_1_0_0 + blocks_delay_1_0 + 0 + 0 + + + blocks_delay_1_0_1 + blocks_multiply_const_vxx_1_0_0 + 0 + 0 + + + blocks_keep_one_in_n_0_0_0 + digital_diff_decoder_bb_0 + 0 + 0 + + + blocks_keep_one_in_n_0_0_0_0 + digital_diff_decoder_bb_0_1 + 0 + 0 + + + blocks_keep_one_in_n_0_0_0_0_0 + digital_diff_decoder_bb_0_1_0 + 0 + 0 + + + blocks_keep_one_in_n_0_1 + digital_binary_slicer_fb_0_1 + 0 + 0 + + + blocks_keep_one_in_n_0_1_0 + digital_binary_slicer_fb_0_1_0 + 0 + 0 + + + blocks_multiply_const_vxx_1 + blocks_add_xx_0 + 0 + 1 + + + blocks_multiply_const_vxx_1_0 + blocks_add_xx_0_0 + 0 + 1 + + + blocks_multiply_const_vxx_1_0_0 + blocks_add_xx_0_0_0 + 0 + 1 + + + blocks_null_source_0 + crfa_rds_decoder_3 + 0 + 0 + + + blocks_vector_to_stream_0_0_1 + low_pass_filter_0 + 0 + 0 + + + crfa_diff_add_sync_decim_0 + digital_binary_slicer_fb_0 + 0 + 0 + + + crfa_rds_decoder_3 + crfa_decoder_compare_0 + out + in0 + + + crfa_rds_decoder_3 + crfa_sync_decim_0 + out + ctrl + + + crfa_rds_decoder_3 + pad_sink_0_0 + out + in + + + crfa_rds_decoder_3_1 + crfa_decoder_compare_0 + out + in1 + + + crfa_rds_decoder_3_1_0 + crfa_decoder_compare_0 + out + in2 + + + crfa_sync_decim_0 + digital_binary_slicer_fb_0 + 0 + 0 + + + crfa_vector_cutter_0_0 + fft_vxx_1_1 + 0 + 0 + + + digital_binary_slicer_fb_0 + blocks_keep_one_in_n_0_0_0 + 0 + 0 + + + digital_binary_slicer_fb_0_1 + blocks_keep_one_in_n_0_0_0_0 + 0 + 0 + + + digital_binary_slicer_fb_0_1_0 + blocks_keep_one_in_n_0_0_0_0_0 + 0 + 0 + + + digital_diff_decoder_bb_0 + crfa_rds_decoder_3 + 0 + 0 + + + digital_diff_decoder_bb_0_1 + crfa_rds_decoder_3_1 + 0 + 0 + + + digital_diff_decoder_bb_0_1_0 + crfa_rds_decoder_3_1_0 + 0 + 0 + + + digital_mpsk_receiver_cc_0 + blocks_complex_to_real_0 + 0 + 0 + + + digital_mpsk_receiver_cc_0 + pad_sink_1 + 0 + 0 + + + fft_vxx_1_1 + blocks_vector_to_stream_0_0_1 + 0 + 0 + + + fir_filter_xxx_0_0 + analog_fm_deemph_0_0 + 0 + 0 + + + freq_xlating_fir_filter_xxx_1 + root_raised_cosine_filter_0 + 0 + 0 + + + low_pass_filter_0 + analog_wfm_rcv_0_0 + 0 + 0 + + + low_pass_filter_0 + pad_sink_0_1 + 0 + 0 + + + pad_source_0 + crfa_vector_cutter_0_0 + 0 + 0 + + + root_raised_cosine_filter_0 + digital_mpsk_receiver_cc_0 + 0 + 0 + + diff --git a/data/google_maps.html b/data/google_maps.html new file mode 100644 index 0000000..a78774d --- /dev/null +++ b/data/google_maps.html @@ -0,0 +1,132 @@ + + + + + + + TMC map + + + +
+
+ + + +