Пример #1
0
    def __init__(self):
        grc_wxgui.top_block_gui.__init__(self, title="My Second Msg Block")

        ##################################################
        # Variables
        ##################################################
        self.samp_rate = samp_rate = 25e6

        ##################################################
        # Blocks
        ##################################################
        self.wxgui_fftsink2_0 = fftsink2.fft_sink_c(
            self.GetWin(),
            baseband_freq=0,
            y_per_div=10,
            y_divs=10,
            ref_level=0,
            ref_scale=2.0,
            sample_rate=samp_rate,
            fft_size=1024,
            fft_rate=15,
            average=False,
            avg_alpha=None,
            title="FFT Plot",
            peak_hold=False,
        )
        self.Add(self.wxgui_fftsink2_0.win)
        self.usrp_source = uhd.usrp_source(
            device_addr="",
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.usrp_source.set_samp_rate(samp_rate)
        self.usrp_source.set_center_freq(105e6, 0)
        self.usrp_source.set_gain(15, 0)
        self.usrp_source.set_antenna("RX2", 0)
        self.my_second_msg_block_0 = dt.my_second_msg_block(
            "95e6,605e6,915e6,880e6,1986e6")
        self.heart_beat_0_0 = precog.heart_beat(5, "hello", "world")
        self.heart_beat_0 = precog.heart_beat(1, "hello", "world")
        self.gr_null_sink_0 = gr.null_sink(gr.sizeof_char * 1)
        self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=False)

        ##################################################
        # Connections
        ##################################################
        self.connect((self.heart_beat_0, 0), (self.my_second_msg_block_0, 0))
        self.connect((self.heart_beat_0_0, 0), (self.my_second_msg_block_0, 1))
        self.connect((self.my_second_msg_block_0, 1),
                     (self.extras_pmt_rpc_0, 0))
        self.connect((self.usrp_source, 0), (self.wxgui_fftsink2_0, 0))
        self.connect((self.my_second_msg_block_0, 0), (self.gr_null_sink_0, 0))
Пример #2
0
	def __init__(self):
		grc_wxgui.top_block_gui.__init__(self, title="My Second Msg Block")

		##################################################
		# Variables
		##################################################
		self.samp_rate = samp_rate = 25e6

		##################################################
		# Blocks
		##################################################
		self.wxgui_fftsink2_0 = fftsink2.fft_sink_c(
			self.GetWin(),
			baseband_freq=0,
			y_per_div=10,
			y_divs=10,
			ref_level=0,
			ref_scale=2.0,
			sample_rate=samp_rate,
			fft_size=1024,
			fft_rate=15,
			average=False,
			avg_alpha=None,
			title="FFT Plot",
			peak_hold=False,
		)
		self.Add(self.wxgui_fftsink2_0.win)
		self.usrp_source = uhd.usrp_source(
			device_addr="",
			stream_args=uhd.stream_args(
				cpu_format="fc32",
				channels=range(1),
			),
		)
		self.usrp_source.set_samp_rate(samp_rate)
		self.usrp_source.set_center_freq(105e6, 0)
		self.usrp_source.set_gain(15, 0)
		self.usrp_source.set_antenna("RX2", 0)
		self.my_second_msg_block_0 = dt.my_second_msg_block("95e6,605e6,915e6,880e6,1986e6")
		self.heart_beat_0_0 = precog.heart_beat(5,"hello","world")
		self.heart_beat_0 = precog.heart_beat(1,"hello","world")
		self.gr_null_sink_0 = gr.null_sink(gr.sizeof_char*1)
		self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=False)

		##################################################
		# Connections
		##################################################
		self.connect((self.heart_beat_0, 0), (self.my_second_msg_block_0, 0))
		self.connect((self.heart_beat_0_0, 0), (self.my_second_msg_block_0, 1))
		self.connect((self.my_second_msg_block_0, 1), (self.extras_pmt_rpc_0, 0))
		self.connect((self.usrp_source, 0), (self.wxgui_fftsink2_0, 0))
		self.connect((self.my_second_msg_block_0, 0), (self.gr_null_sink_0, 0))
Пример #3
0
    def __init__(self,
                 lead_limit=0.001,
                 tx_gain=0,
                 samp_per_sym=4,
                 link_speed=200,
                 pre_guard=0.003,
                 rate=1e6,
                 hop_interval=0.02,
                 rx_gain=15,
                 ampl=0.7,
                 freq=425e6,
                 args="",
                 freq_list="4251e5,4261e5,4271e5",
                 post_guard=0.001,
                 dev_addr=1):
        gr.hier_block2.__init__(
            self,
            "FHAH TRANSCEIVER",
            gr.io_signature(1, 1, gr.sizeof_char * 1),
            gr.io_signature(1, 1, gr.sizeof_char * 1),
        )

        ##################################################
        # Parameters
        ##################################################
        self.lead_limit = lead_limit
        self.tx_gain = tx_gain
        self.samp_per_sym = samp_per_sym
        self.link_speed = link_speed
        self.pre_guard = pre_guard
        self.rate = rate
        self.hop_interval = hop_interval
        self.rx_gain = rx_gain
        self.ampl = ampl
        self.freq = freq
        self.args = args
        self.freq_list = freq_list
        self.post_guard = post_guard
        self.dev_addr = dev_addr

        ##################################################
        # Variables
        ##################################################
        self.samp_rate_0 = samp_rate_0 = rate
        self.samp_rate = samp_rate = rate

        ##################################################
        # Blocks
        ##################################################
        self.uhd_source = uhd.usrp_source(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.uhd_source.set_clock_source("mimo", 0)
        self.uhd_source.set_time_source("mimo", 0)
        self.uhd_source.set_samp_rate(samp_rate)
        #self.uhd_source.set_auto_dc_offset(False)
        self.uhd_source.set_center_freq(freq, 0)
        self.uhd_source.set_gain(rx_gain, 0)
        self.uhd_source.set_antenna("RX2", 0)
        self.uhd_sink = uhd.usrp_sink(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.uhd_sink.set_clock_source("mimo", 0)
        self.uhd_sink.set_time_source("mimo", 0)
        self.uhd_sink.set_samp_rate(samp_rate)
        self.uhd_sink.set_center_freq(freq, 0)
        self.uhd_sink.set_gain(tx_gain, 0)
        self.uhd_sink.set_antenna("TX/RX", 0)
        self.precog_packet_framer_0 = fhah.packet_framer(
            samples_per_symbol=samp_per_sym,
            bits_per_symbol=1,
            access_code="",
        )
        self.precog_packet_deframer_0 = fhah.packet_deframer(
            access_code="",
            threshold=2,
        )
        self.gr_multiply_const_vxx_0 = gr.multiply_const_vcc((ampl, ))
        self.gmsk_mod = digital.gmsk_mod(
            samples_per_symbol=samp_per_sym,
            bt=0.35,
            verbose=False,
            log=False,
        )
        self.gmsk_demod = digital.gmsk_demod(
            samples_per_symbol=samp_per_sym,
            gain_mu=0,
            mu=0.5,
            omega_relative_limit=0.005,
            freq_error=0.0,
            verbose=False,
            log=False,
        )
        self.fhah_fhah_engine_tx_0 = fhah.fhah_engine_tx(
            hop_interval, pre_guard, post_guard, dev_addr,
            samp_rate / samp_per_sym, freq_list)
        self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=True)
        self.burst_gate_0 = fhah.burst_gate()

        ##################################################
        # Connections
        ##################################################
        self.connect((self.uhd_source, 0), (self.gmsk_demod, 0))
        self.connect((self.uhd_source, 0), (self.fhah_fhah_engine_tx_0, 0))
        self.connect((self, 0), (self.fhah_fhah_engine_tx_0, 1))
        self.connect((self.burst_gate_0, 0), (self.uhd_sink, 0))
        self.connect((self.gmsk_mod, 0), (self.gr_multiply_const_vxx_0, 0))
        self.connect((self.fhah_fhah_engine_tx_0, 0),
                     (self.precog_packet_framer_0, 0))
        self.connect((self.fhah_fhah_engine_tx_0, 1),
                     (self.extras_pmt_rpc_0, 0))
        self.connect((self.precog_packet_framer_0, 0), (self.gmsk_mod, 0))
        self.connect((self.gr_multiply_const_vxx_0, 0), (self.burst_gate_0, 0))
        self.connect((self.precog_packet_deframer_0, 0),
                     (self.fhah_fhah_engine_tx_0, 2))
        self.connect((self.fhah_fhah_engine_tx_0, 2), (self, 0))
        self.connect((self.gmsk_demod, 0), (self.precog_packet_deframer_0, 0))
Пример #4
0
	def __init__(self, rx_gain=15, rate=1e6, samp_per_sym=4, args="", freq=915e6, ampl=0.7, tx_gain=15, number_of_slots=10, lead_limit=0.025, initial_slot=15, link_speed=15, slot_interval=0.010, guard_interval=15):
		gr.hier_block2.__init__(
			self, "TDMA_HIER",
			gr.io_signaturev(2, 2, [gr.sizeof_char*1, gr.sizeof_char*1]),
			gr.io_signaturev(2, 2, [gr.sizeof_char*1, gr.sizeof_char*1]),
		)

		##################################################
		# Parameters
		##################################################
		self.rx_gain = rx_gain
		self.rate = rate
		self.samp_per_sym = samp_per_sym
		self.args = args
		self.freq = freq
		self.ampl = ampl
		self.tx_gain = tx_gain
		self.number_of_slots = number_of_slots
		self.lead_limit = lead_limit
		self.initial_slot = initial_slot
		self.link_speed = link_speed
		self.slot_interval = slot_interval
		self.guard_interval = guard_interval

		##################################################
		# Variables
		##################################################
		self.samp_rate = samp_rate = rate

		##################################################
		# Blocks
		##################################################
		self.usrp_source = uhd.usrp_source(
			device_addr=args,
			stream_args=uhd.stream_args(
				cpu_format="fc32",
				channels=range(1),
			),
		)
		self.usrp_source.set_time_source("external", 0)
		self.usrp_source.set_time_unknown_pps(uhd.time_spec())
		self.usrp_source.set_samp_rate(samp_rate)
		self.usrp_source.set_center_freq(freq, 0)
		self.usrp_source.set_gain(rx_gain, 0)
		self.usrp_source.set_antenna("TX/RX", 0)
		self.usrp_sink = uhd.usrp_sink(
			device_addr=args,
			stream_args=uhd.stream_args(
				cpu_format="fc32",
				channels=range(1),
			),
		)
		self.usrp_sink.set_time_source("external", 0)
		self.usrp_sink.set_time_unknown_pps(uhd.time_spec())
		self.usrp_sink.set_samp_rate(samp_rate)
		self.usrp_sink.set_center_freq(freq, 0)
		self.usrp_sink.set_gain(tx_gain, 0)
		self.usrp_sink.set_antenna("TX/RX", 0)
		self.tdma_engine = precog.tdma_engine(initial_slot,slot_interval,guard_interval,number_of_slots,lead_limit,link_speed)
		self.gr_multiply_const_vxx_0 = gr.multiply_const_vcc((ampl, ))
		self.gmsk_mod = digital.gmsk_mod(
			samples_per_symbol=samp_per_sym,
			bt=0.35,
			verbose=False,
			log=False,
		)
		self.gmsk_demod = digital.gmsk_demod(
			samples_per_symbol=samp_per_sym,
			gain_mu=0.175,
			mu=0.5,
			omega_relative_limit=0.005,
			freq_error=0.0,
			verbose=False,
			log=False,
		)
		self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=False)
		self.extras_packet_framer_0 = gr_extras.packet_framer(
		    samples_per_symbol=1,
		    bits_per_symbol=1,
		    access_code="",
		)
		self.extras_packet_deframer_0 = gr_extras.packet_deframer(
		    access_code="",
		    threshold=-1,
		)
		self.burst_gate_0 = precog.burst_gate()

		##################################################
		# Connections
		##################################################
		self.connect((self.usrp_source, 0), (self.tdma_engine, 0))
		self.connect((self.tdma_engine, 0), (self.extras_packet_framer_0, 0))
		self.connect((self.usrp_source, 0), (self.gmsk_demod, 0))
		self.connect((self.gmsk_demod, 0), (self.extras_packet_deframer_0, 0))
		self.connect((self.extras_packet_framer_0, 0), (self.gmsk_mod, 0))
		self.connect((self, 1), (self.tdma_engine, 1))
		self.connect((self, 0), (self.tdma_engine, 3))
		self.connect((self.extras_packet_deframer_0, 0), (self, 1))
		self.connect((self.gmsk_mod, 0), (self.gr_multiply_const_vxx_0, 0))
		self.connect((self.gr_multiply_const_vxx_0, 0), (self.burst_gate_0, 0))
		self.connect((self.burst_gate_0, 0), (self.usrp_sink, 0))
		self.connect((self.extras_packet_deframer_0, 0), (self.tdma_engine, 2))
		self.connect((self, 0), (self.extras_pmt_rpc_0, 0))
		self.connect((self.tdma_engine, 1), (self, 0))
Пример #5
0
    def __init__(self, lead_limit=0.001, tx_gain=0, samp_per_sym=4, link_speed=200, pre_guard=0.003, rate=1e6, hop_interval=0.02, rx_gain=15, ampl=0.7, freq=425e6, args="", freq_list="4251e5,4261e5,4271e5", post_guard=0.001, dev_addr=1):
        gr.hier_block2.__init__(
            self, "FHAH TRANSCEIVER",
            gr.io_signature(1, 1, gr.sizeof_char*1),
            gr.io_signature(1, 1, gr.sizeof_char*1),
        )

        ##################################################
        # Parameters
        ##################################################
        self.lead_limit = lead_limit
        self.tx_gain = tx_gain
        self.samp_per_sym = samp_per_sym
        self.link_speed = link_speed
        self.pre_guard = pre_guard
        self.rate = rate
        self.hop_interval = hop_interval
        self.rx_gain = rx_gain
        self.ampl = ampl
        self.freq = freq
        self.args = args
        self.freq_list = freq_list
        self.post_guard = post_guard
        self.dev_addr = dev_addr

        ##################################################
        # Variables
        ##################################################
        self.samp_rate_0 = samp_rate_0 = rate
        self.samp_rate = samp_rate = rate

        ##################################################
        # Blocks
        ##################################################
        self.uhd_source = uhd.usrp_source(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.uhd_source.set_clock_source("mimo", 0)
        self.uhd_source.set_time_source("mimo", 0)
        self.uhd_source.set_samp_rate(samp_rate)
        #self.uhd_source.set_auto_dc_offset(False)
        self.uhd_source.set_center_freq(freq, 0)
        self.uhd_source.set_gain(rx_gain, 0)
        self.uhd_source.set_antenna("RX2", 0)
        self.uhd_sink = uhd.usrp_sink(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.uhd_sink.set_clock_source("mimo", 0)
        self.uhd_sink.set_time_source("mimo", 0)
        self.uhd_sink.set_samp_rate(samp_rate)
        self.uhd_sink.set_center_freq(freq, 0)
        self.uhd_sink.set_gain(tx_gain, 0)
        self.uhd_sink.set_antenna("TX/RX", 0)
        self.precog_packet_framer_0 = fhah.packet_framer(
            samples_per_symbol=samp_per_sym,
            bits_per_symbol=1,
            access_code="",
        )
        self.precog_packet_deframer_0 = fhah.packet_deframer(
            access_code="",
            threshold=2,
        )
        self.gr_multiply_const_vxx_0 = gr.multiply_const_vcc((ampl, ))
        self.gmsk_mod = digital.gmsk_mod(
            samples_per_symbol=samp_per_sym,
            bt=0.35,
            verbose=False,
            log=False,
        )
        self.gmsk_demod = digital.gmsk_demod(
            samples_per_symbol=samp_per_sym,
            gain_mu=0,
            mu=0.5,
            omega_relative_limit=0.005,
            freq_error=0.0,
            verbose=False,
            log=False,
        )
        self.fhah_fhah_engine_tx_0 = fhah.fhah_engine_tx(hop_interval, pre_guard, post_guard, dev_addr, samp_rate/samp_per_sym, freq_list)
        self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=True)
        self.burst_gate_0 = fhah.burst_gate()

        ##################################################
        # Connections
        ##################################################
        self.connect((self.uhd_source, 0), (self.gmsk_demod, 0))
        self.connect((self.uhd_source, 0), (self.fhah_fhah_engine_tx_0, 0))
        self.connect((self, 0), (self.fhah_fhah_engine_tx_0, 1))
        self.connect((self.burst_gate_0, 0), (self.uhd_sink, 0))
        self.connect((self.gmsk_mod, 0), (self.gr_multiply_const_vxx_0, 0))
        self.connect((self.fhah_fhah_engine_tx_0, 0), (self.precog_packet_framer_0, 0))
        self.connect((self.fhah_fhah_engine_tx_0, 1), (self.extras_pmt_rpc_0, 0))
        self.connect((self.precog_packet_framer_0, 0), (self.gmsk_mod, 0))
        self.connect((self.gr_multiply_const_vxx_0, 0), (self.burst_gate_0, 0))
        self.connect((self.precog_packet_deframer_0, 0), (self.fhah_fhah_engine_tx_0, 2))
        self.connect((self.fhah_fhah_engine_tx_0, 2), (self, 0))
        self.connect((self.gmsk_demod, 0), (self.precog_packet_deframer_0, 0))
Пример #6
0
    def __init__(self,
                 rx_gain=15,
                 rate=1e6,
                 samp_per_sym=4,
                 args="",
                 freq=915e6,
                 ampl=0.7,
                 tx_gain=15,
                 number_of_slots=10,
                 lead_limit=0.025,
                 initial_slot=15,
                 link_speed=15,
                 slot_interval=0.010,
                 guard_interval=15):
        gr.hier_block2.__init__(
            self,
            "TDMA_HIER",
            gr.io_signaturev(2, 2, [gr.sizeof_char * 1, gr.sizeof_char * 1]),
            gr.io_signaturev(2, 2, [gr.sizeof_char * 1, gr.sizeof_char * 1]),
        )

        ##################################################
        # Parameters
        ##################################################
        self.rx_gain = rx_gain
        self.rate = rate
        self.samp_per_sym = samp_per_sym
        self.args = args
        self.freq = freq
        self.ampl = ampl
        self.tx_gain = tx_gain
        self.number_of_slots = number_of_slots
        self.lead_limit = lead_limit
        self.initial_slot = initial_slot
        self.link_speed = link_speed
        self.slot_interval = slot_interval
        self.guard_interval = guard_interval

        ##################################################
        # Variables
        ##################################################
        self.samp_rate = samp_rate = rate

        ##################################################
        # Blocks
        ##################################################
        self.usrp_source = uhd.usrp_source(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.usrp_source.set_time_source("external", 0)
        self.usrp_source.set_time_unknown_pps(uhd.time_spec())
        self.usrp_source.set_samp_rate(samp_rate)
        self.usrp_source.set_center_freq(freq, 0)
        self.usrp_source.set_gain(rx_gain, 0)
        self.usrp_source.set_antenna("TX/RX", 0)
        self.usrp_sink = uhd.usrp_sink(
            device_addr=args,
            stream_args=uhd.stream_args(
                cpu_format="fc32",
                channels=range(1),
            ),
        )
        self.usrp_sink.set_time_source("external", 0)
        self.usrp_sink.set_time_unknown_pps(uhd.time_spec())
        self.usrp_sink.set_samp_rate(samp_rate)
        self.usrp_sink.set_center_freq(freq, 0)
        self.usrp_sink.set_gain(tx_gain, 0)
        self.usrp_sink.set_antenna("TX/RX", 0)
        self.tdma_engine = precog.tdma_engine(initial_slot, slot_interval,
                                              guard_interval, number_of_slots,
                                              lead_limit, link_speed)
        self.gr_multiply_const_vxx_0 = gr.multiply_const_vcc((ampl, ))
        self.gmsk_mod = digital.gmsk_mod(
            samples_per_symbol=samp_per_sym,
            bt=0.35,
            verbose=False,
            log=False,
        )
        self.gmsk_demod = digital.gmsk_demod(
            samples_per_symbol=samp_per_sym,
            gain_mu=0.175,
            mu=0.5,
            omega_relative_limit=0.005,
            freq_error=0.0,
            verbose=False,
            log=False,
        )
        self.extras_pmt_rpc_0 = gr_extras.pmt_rpc(obj=self, result_msg=False)
        self.extras_packet_framer_0 = gr_extras.packet_framer(
            samples_per_symbol=1,
            bits_per_symbol=1,
            access_code="",
        )
        self.extras_packet_deframer_0 = gr_extras.packet_deframer(
            access_code="",
            threshold=-1,
        )
        self.burst_gate_0 = precog.burst_gate()

        ##################################################
        # Connections
        ##################################################
        self.connect((self.usrp_source, 0), (self.tdma_engine, 0))
        self.connect((self.tdma_engine, 0), (self.extras_packet_framer_0, 0))
        self.connect((self.usrp_source, 0), (self.gmsk_demod, 0))
        self.connect((self.gmsk_demod, 0), (self.extras_packet_deframer_0, 0))
        self.connect((self.extras_packet_framer_0, 0), (self.gmsk_mod, 0))
        self.connect((self, 1), (self.tdma_engine, 1))
        self.connect((self, 0), (self.tdma_engine, 3))
        self.connect((self.extras_packet_deframer_0, 0), (self, 1))
        self.connect((self.gmsk_mod, 0), (self.gr_multiply_const_vxx_0, 0))
        self.connect((self.gr_multiply_const_vxx_0, 0), (self.burst_gate_0, 0))
        self.connect((self.burst_gate_0, 0), (self.usrp_sink, 0))
        self.connect((self.extras_packet_deframer_0, 0), (self.tdma_engine, 2))
        self.connect((self, 0), (self.extras_pmt_rpc_0, 0))
        self.connect((self.tdma_engine, 1), (self, 0))