Exemplo n.º 1
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_general_timeout")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_general_timeout")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_general_timeout")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.samp_rate = samp_rate = 320000
        self.develop_mode_list = develop_mode_list = [1, 3, 4, 16]

        ##################################################
        # Blocks
        ##################################################
        self.inets_general_timeout_0 = inets.general_timeout(1, 43, 1000, 1000, 1, 1)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1, 1, 1, 2, 1, 318, 2, 524, 2, 2, 1, 1, 0, ([2, 3]), ([1000, 1000]), 2)
        self.inets_frame_probe_0_0 = inets.frame_probe(1, 101, 0, 0, 0.01)
        self.inets_frame_probe_0 = inets.frame_probe(0, 100, 0, 0, 0.01)
        self.inets_frame_index_selector_0 = inets.frame_index_selector(0, 41, ([1,2,3,4,5]), 0)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 100, 1, 1)
        self.blocks_message_strobe_0 = blocks.message_strobe(pmt.intern("TEST"), 1000)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_message_strobe_0, 'strobe'), (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_dummy_source_0, 'output'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'frame_out'), (self.inets_general_timeout_0, 'frame_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_index_selector_0, 'frame_in'))
        self.msg_connect((self.inets_general_timeout_0, 'expired_frame_out'), (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_general_timeout_0, 'killed_frame_out'), (self.inets_frame_probe_0_0, 'info_in'))
Exemplo n.º 2
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_general")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_general")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_general")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 15
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us_0 = system_time_granularity_us_0 = 1000
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 4
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.reserved_field_II = reserved_field_II = 6
        self.reserved_field_I = reserved_field_I = 5
        self.mu = mu = range_mu
        self.len_source_address = len_source_address = 1
        self.len_reserved_field_II = len_reserved_field_II = 2
        self.len_reserved_field_I = len_reserved_field_I = 2
        self.len_payload_length = len_payload_length = 1
        self.len_frame_type = len_frame_type = 1
        self.len_frame_index = len_frame_index = 1
        self.len_destination_address = len_destination_address = 1
        self.increase_index = increase_index = 1
        self.frame_type = frame_type = 1
        self.frame_index = frame_index = 2
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.develop_mode_list = develop_mode_list = [1, 2, 3]
        self.destination_address = destination_address = 3
        self.cs_threshold = cs_threshold = 0.005
        self.cs_duration = cs_duration = 50

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 15, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_receiving_0 = inets.receiving(
            develop_mode=1,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            matched_filter_coeff=rrc,
            mu=mu,
            preamble=diff_preamble_128,
            rx_gain=rx_gain,
            samp_rate=samp_rate,
            sps=sps,
            threshold=cs_threshold,
            usrp_device_address=usrp_device_address
        )
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, frame_index, 1, destination_address, 1, source_address, 1, 0, 2, 0, 2, 1, 1, 0)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost', '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_buffer_0, 'enqueue'))
Exemplo n.º 3
0
    def __init__(self):
        gr.top_block.__init__(self, "theoretical_aloha_slotted")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("theoretical_aloha_slotted")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "theoretical_aloha_slotted")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.20"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 4
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency,
            interframe_interval_s=0,
            t_pretx_interval_s=0,
            file_name_extension_t_control="t1TXs",
            file_name_extension_pending="Tfr",
            record_on=0,
            name_with_timestamp=0,
            tx_gain=0)
        self.inets_run_0 = inets.run(5, 10)
        self.inets_general_timer_0_0 = inets.general_timer(
            1, 1, 0, 2000, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_path_0 = inets.frame_path(0, 39)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 837, 3, 1)
        self.inets_counter_0 = inets.counter(2, 2, 1, "sent")

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_path_0, 'frame_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_general_timer_0_0, 'expire_signal_out'),
                         (self.inets_dummy_source_0, 'stop_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_general_timer_0_0, 'active_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_counter_0, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_frame_path_0, 'frame_in'))
Exemplo n.º 4
0
    def __init__(self):
        gr.top_block.__init__(self, "CogMAC_plus")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("CogMAC_plus")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "CogMAC_plus")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.destination_address = destination_address = 3
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_sending_0 = inets.sending(develop_mode=0, block_id=11, constellation=gnuradio.digital.constellation_qpsk().base(), preamble=diff_preamble_128, samp_rate=samp_rate, sps=sps, system_time_granularity_us=system_time_granularity_us, usrp_device_address=usrp_device_address, center_frequency=tx_center_frequency, interframe_interval_s=0.005, t_pretx_interval_s=0, file_name_extension_t_control="t1TXs", file_name_extension_pending="Tfr", record_on=0, name_with_timestamp=1, tx_gain=0)
        self.inets_run_0 = inets.run(5, 10)
        self.inets_receiving_0 = inets.receiving(1, 21, gnuradio.digital.constellation_qpsk().base(), rrc, mu, diff_preamble_128, rx_gain, samp_rate, sps, 30, usrp_device_address, rx_center_frequency)
        self.inets_general_timer_1 = inets.general_timer(0, 3, 0, 100, 10, 0)
        self.inets_general_timer_0 = inets.general_timer(1, 15, 0, 1000, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 10, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, -1, 1, 0, ([2, 3]), ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_replicate_0 = inets.frame_replicate(0, 37, 4)
        self.inets_frame_probe_0_0 = inets.frame_probe(0, 100, 0, 0, 0.01, 0, "/home/inets/source/gr-inets/results/", "", 1)
        self.inets_frame_probe_0 = inets.frame_probe(2, 100, 0, 1, 0.01, 0, "/home/inets/source/gr-inets/results/", "", 1)
        self.inets_frame_path_0_0_2 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_1_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_1 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_0_2_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_0_2 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_1_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_0 = inets.frame_path(0, 39)
        self.inets_frame_index_selector_1 = inets.frame_index_selector(0, 33, (1, ), 0)
        self.inets_frame_index_selector_0 = inets.frame_index_selector(0, 33, (10, ), 0)
        self.inets_frame_counter_0 = inets.frame_counter(0, 36, 4)
        self.inets_frame_check_0 = inets.frame_check(0, 9)
        self.inets_frame_buffer_0_0 = inets.frame_buffer(0, 16, 100, 0, 0, 0)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10, 0, 0, 1)
        self.inets_frame_and_0 = inets.frame_and(0, 38, 0)
        self.inets_frame_analysis_0 = inets.frame_analysis(0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, source_address)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 300, 3, 100)
        self.inets_cogmac_ch_pool_0 = inets.cogmac_ch_pool(1, 35, 3, 390000000, 0, 10000000)
        self.inets_carrier_sensing_0 = inets.carrier_sensing(1, 11, 2, 1000, 0.005, 1000, 100)
        self.inets_backoff_0 = inets.backoff(0, 11, 3, 10, 1000, 4000, 1, 0.005, 10, 1)
        self.inets_address_check_0 = inets.address_check(0, 17, source_address)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_backoff_0, 'frame_info_out'), (self.inets_frame_buffer_0, 'indicate_empty'))
        self.msg_connect((self.inets_carrier_sensing_0, 'frame_info_pass_out'), (self.inets_frame_path_0_0_1_0, 'frame_in'))
        self.msg_connect((self.inets_carrier_sensing_0, 'frame_info_fail_out'), (self.inets_frame_path_0_0_1_0_2, 'frame_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'next_frequency_out'), (self.inets_frame_path_0_0_1_0_0, 'frame_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'next_frequency_out'), (self.inets_sending_0, 'reconfig_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'), (self.inets_frame_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_and_0, 'frame_out'), (self.inets_frame_counter_0, 'reset_in'))
        self.msg_connect((self.inets_frame_and_0, 'frame_out'), (self.inets_frame_path_0_0_1_1_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'), (self.inets_frame_index_selector_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'buffer_not_full'), (self.inets_frame_path_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'buffer_empty'), (self.inets_frame_path_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'buffer_empty'), (self.inets_frame_path_0_0_1_0_2_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'dequeue_element'), (self.inets_general_timer_0, 'suspend_timer_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'dequeue_element'), (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'), (self.inets_address_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'), (self.inets_general_timer_1, 'active_in'))
        self.msg_connect((self.inets_frame_counter_0, 'select_out'), (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'unselected_frame_out'), (self.inets_frame_index_selector_1, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'frame_out'), (self.inets_frame_path_0, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'unselected_frame_out'), (self.inets_frame_path_0, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'frame_out'), (self.inets_frame_replicate_0, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_1, 'frame_out'), (self.inets_frame_buffer_0_0, 'dequeue'))
        self.msg_connect((self.inets_frame_index_selector_1, 'frame_out'), (self.inets_frame_path_0_0_1_1, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_1, 'unselected_frame_out'), (self.inets_frame_path_0_0_1_1, 'frame_in'))
        self.msg_connect((self.inets_frame_path_0, 'frame_out'), (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_frame_path_0_0, 'frame_out'), (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_frame_path_0_0_0, 'frame_out'), (self.inets_framing_0, 'reset_index'))
        self.msg_connect((self.inets_frame_path_0_0_1_0, 'frame_out'), (self.inets_frame_buffer_0_0, 'dequeue'))
        self.msg_connect((self.inets_frame_path_0_0_1_0, 'frame_out'), (self.inets_general_timer_0, 'suspend_timer_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_0_0, 'frame_out'), (self.inets_receiving_0, 'reconfig_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_0_0_0, 'frame_out'), (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_0_2, 'frame_out'), (self.inets_frame_buffer_0_0, 'flush'))
        self.msg_connect((self.inets_frame_path_0_0_1_0_2, 'frame_out'), (self.inets_general_timer_0, 'suspend_timer_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_0_2_0, 'frame_out'), (self.inets_frame_and_0, 'frame_II_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_1, 'frame_out'), (self.inets_frame_buffer_0_0, 'enqueue'))
        self.msg_connect((self.inets_frame_path_0_0_1_1_0, 'frame_out'), (self.inets_backoff_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_path_0_0_1_1_0, 'frame_out'), (self.inets_general_timer_0, 'resume_timer_in'))
        self.msg_connect((self.inets_frame_path_0_0_2, 'frame_out'), (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_frame_replicate_0, 'replicate_out'), (self.inets_frame_path_0_0_1_1, 'frame_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'), (self.inets_cogmac_ch_pool_0, 'change_in'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'), (self.inets_frame_path_0_0_1_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_general_timer_1, 'expire_signal_out'), (self.inets_general_timer_0, 'resume_timer_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'), (self.inets_carrier_sensing_0, 'power_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'), (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'), (self.inets_frame_buffer_0, 'indicate_empty'))
        self.msg_connect((self.inets_run_0, 'trigger_out'), (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'), (self.inets_frame_and_0, 'frame_I_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'), (self.inets_frame_counter_0, 'counts_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'), (self.inets_frame_path_0_0_1_0, 'frame_in'))
    def __init__(self):
        gr.top_block.__init__(self, "single_frame_transmission_test_tx")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("single_frame_transmission_test_tx")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio",
                                     "single_frame_transmission_test_tx")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 3
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency,
            interframe_interval_s=0.004,
            t_pretx_interval_s=0,
            file_name_extension_t_control="t1TXs",
            file_name_extension_pending="Tfr",
            record_on=1,
            name_with_timestamp=0)
        self.inets_receiving_0 = inets.receiving(
            0, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, rx_center_frequency)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_probe_0_0_1 = inets.frame_probe(
            2, 100, 0, 0, 0.001, 1, "/home/inets/source/gr-inets/results/",
            "t1TXr", 0)
        self.inets_frame_probe_0_0_0 = inets.frame_probe(
            2, 100, 0, 0, 0.001, 1, "/home/inets/source/gr-inets/results/",
            "t1DQ", 0)
        self.inets_frame_probe_0_0 = inets.frame_probe(
            2, 100, 0, 0, 0.001, 1, "/home/inets/source/gr-inets/results/",
            "t1e", 0)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 1, 2, 10)
        self.blocks_message_strobe_0 = blocks.message_strobe(
            pmt.intern("TEST"), 100)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_message_strobe_0, 'strobe'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_frame_probe_0_0_0, 'info_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_receiving_0, 'rx_switch_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_switch_out'),
                         (self.inets_frame_probe_0_0_1, 'info_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_switch_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_frame_probe_0_0, 'info_in'))
        self.msg_connect((self.inets_sending_0, 'rx_control_out'),
                         (self.inets_receiving_0, 'rx_switch_in'))
Exemplo n.º 6
0
    def __init__(self):
        gr.top_block.__init__(self, "csma_rtscts_80211_II")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("csma_rtscts_80211_II")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "csma_rtscts_80211_II")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.20"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 3
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = 0
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.padding = padding = 64
        self.mu = mu = 0.6
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 5
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self.inets_virtual_cs_0 = inets.virtual_cs(1, 20, 10)
        self.inets_timeout_0_0 = inets.timeout(0, 10, 100, 1000, 0)
        self.inets_timeout_0 = inets.timeout(0, 10, 100, 1000, 0)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency,
            interframe_interval_s=0.005,
            t_pretx_interval_s=0,
            file_name_extension_t_control="t1TXs",
            file_name_extension_pending="Tfr",
            record_on=0,
            name_with_timestamp=0,
            tx_gain=0)
        self.inets_run_0 = inets.run(5, 10)
        self.inets_rts_framing_0 = inets.rts_framing(
            0, 30, 1, 1, destination_address, 1, source_address, 1, 318, 2,
            524, 2, 2, 1, 3, padding, diff_preamble_128,
            gnuradio.digital.constellation_qpsk().bits_per_symbol() *
            (samp_rate / sps), 1000, 800)
        self.inets_resend_check_0 = inets.resend_check(0, 24, 6)
        self.inets_receiving_0 = inets.receiving(
            0, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, rx_center_frequency)
        self.inets_general_timer_0_1_0 = inets.general_timer(0, 3, 0, 8, 10, 0)
        self.inets_general_timer_0_1 = inets.general_timer(0, 3, 0, 18, 10, 0)
        self.inets_general_timer_0_0 = inets.general_timer(
            0, 1, 0, 1000000, 10, 0)
        self.inets_general_timer_0 = inets.general_timer(0, 3, 3, 200, 10, 0)
        self.inets_framing_0_0 = inets.framing(0, 17, 2, 1, 0, 1,
                                               destination_address, 1,
                                               source_address, 1, 318, 2, 524,
                                               2, 2, 1, 1, 0, ([2, 3]),
                                               ([1000, 1000]), 2, 0, 300, 1)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_type_check_0_1 = inets.frame_type_check(
            1, 25, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1)
        self.inets_frame_type_check_0_0_0 = inets.frame_type_check(
            0, 25, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1)
        self.inets_frame_type_check_0_0 = inets.frame_type_check(
            0, 25, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1)
        self.inets_frame_type_check_0 = inets.frame_type_check(
            0, 25, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1)
        self.inets_frame_path_1_0_1 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_0_1_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_0_1 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1 = inets.frame_path(0, 39)
        self.inets_frame_check_0 = inets.frame_check(0, 9)
        self.inets_frame_buffer_1 = inets.frame_buffer(0, 16, 10, 1, 1, 1)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 1000, 1, 1, 0)
        self.inets_frame_analysis_0 = inets.frame_analysis(
            0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, source_address)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 837, 3, 1)
        self.inets_cts_framing_0 = inets.cts_framing(
            0, 31, 1, 1, destination_address, 1, source_address, 1, 318, 2,
            524, 2, 2, 1, 3, padding, diff_preamble_128,
            gnuradio.digital.constellation_qpsk().bits_per_symbol() *
            (samp_rate / sps), 1000, 800)
        self.inets_counter_0_1_0_0 = inets.counter(1, 2, 1, "undestined_cts")
        self.inets_counter_0_1_0 = inets.counter(1, 2, 1, "undestined_rts")
        self.inets_counter_0_1 = inets.counter(1, 2, 1, "bad_frame")
        self.inets_counter_0_0_1_1 = inets.counter(1, 1, 1, "tx_ack")
        self.inets_counter_0_0_1_0_0_0_0_0 = inets.counter(1, 1, 1, "rx_data")
        self.inets_counter_0_0_1_0_0_0_0 = inets.counter(1, 1, 1, "rx_ack")
        self.inets_counter_0_0_1_0_0_0 = inets.counter(1, 1, 1, "rx_rts")
        self.inets_counter_0_0_1_0_0 = inets.counter(1, 1, 1, "rx_cts")
        self.inets_counter_0_0_1_0 = inets.counter(1, 1, 1, "tx_cts")
        self.inets_counter_0_0_1 = inets.counter(1, 1, 1, "tx_data")
        self.inets_counter_0_0_0 = inets.counter(1, 10, 1, "acked")
        self.inets_counter_0_0 = inets.counter(1, 1, 1, "tx_rts")
        self.inets_counter_0 = inets.counter(2, 2, 1, "good_frame")
        self.inets_carrier_sensing_0 = inets.carrier_sensing(
            0, 11, 4, 100, 0.005, system_time_granularity_us, 100)
        self.inets_backoff_1 = inets.backoff(0, 11, 3, 10, 50, 100, 1, 0.005,
                                             10, 1)
        self.inets_backoff_0 = inets.backoff(0, 11, 1, 5, 10, 400, 1, 0.005,
                                             10, 1)
        self.inets_address_check_0 = inets.address_check(0, 17, source_address)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect(
            (self.inets_address_check_0, 'address_check_pass_out'),
            (self.inets_frame_type_check_0, 'frame_info_in'))
        self.msg_connect(
            (self.inets_address_check_0, 'address_check_fail_out'),
            (self.inets_frame_type_check_0_1, 'frame_info_in'))
        self.msg_connect((self.inets_backoff_0, 'frame_info_out'),
                         (self.inets_resend_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_backoff_1, 'frame_info_out'),
                         (self.inets_counter_0_0_0, 'message_in'))
        self.msg_connect((self.inets_backoff_1, 'frame_info_out'),
                         (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_carrier_sensing_0, 'frame_info_fail_out'),
                         (self.inets_backoff_0, 'frame_info_in'))
        self.msg_connect((self.inets_carrier_sensing_0, 'frame_info_pass_out'),
                         (self.inets_frame_buffer_1, 'enqueue'))
        self.msg_connect((self.inets_cts_framing_0, 'frame_out'),
                         (self.inets_general_timer_0_1_0, 'active_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'),
                         (self.inets_frame_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_rts_framing_0, 'data_frame_in'))
        self.msg_connect((self.inets_frame_buffer_1, 'dequeue_element'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'),
                         (self.inets_address_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'),
                         (self.inets_counter_0, 'message_in'))
        self.msg_connect((self.inets_frame_check_0, 'bad_frame_info_out'),
                         (self.inets_counter_0_1, 'message_in'))
        self.msg_connect((self.inets_frame_path_1, 'frame_out'),
                         (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_frame_path_1_0, 'frame_out'),
                         (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect((self.inets_frame_path_1_0, 'frame_out'),
                         (self.inets_general_timer_0_1, 'active_in'))
        self.msg_connect((self.inets_frame_path_1_0_0, 'frame_out'),
                         (self.inets_frame_buffer_1, 'enqueue'))
        self.msg_connect((self.inets_frame_path_1_0_0_0, 'frame_out'),
                         (self.inets_frame_buffer_1, 'dequeue'))
        self.msg_connect((self.inets_frame_path_1_0_0_0_0, 'frame_out'),
                         (self.inets_timeout_0, 'ack_frame_info_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_0_1, 'frame_out'),
                         (self.inets_counter_0_0_1_0_0, 'message_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_0_1, 'frame_out'),
                         (self.inets_timeout_0_0, 'cts_frame_info_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_0_1_0, 'frame_out'),
                         (self.inets_rts_framing_0, 'cts_frame_in'))
        self.msg_connect((self.inets_frame_path_1_0_1, 'frame_out'),
                         (self.inets_backoff_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'rts_frame_info_out'),
                         (self.inets_counter_0_0_1_0_0_0, 'message_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'ack_frame_info_out'),
                         (self.inets_counter_0_0_1_0_0_0_0, 'message_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0, 'data_frame_info_out'),
            (self.inets_counter_0_0_1_0_0_0_0_0, 'message_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'rts_frame_info_out'),
                         (self.inets_cts_framing_0, 'rts_frame_info_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'ack_frame_info_out'),
                         (self.inets_frame_path_1_0_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'cts_frame_info_out'),
                         (self.inets_frame_path_1_0_0_0_1, 'frame_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0, 'data_frame_info_out'),
            (self.inets_framing_0_0, 'data_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'rts_frame_info_out'),
                         (self.inets_virtual_cs_0, 'nav_cmd_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0, 'ack_frame_info_out'),
            (self.inets_backoff_1, 'frame_info_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0, 'data_frame_info_out'),
            (self.inets_rts_framing_0, 'data_frame_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0_0, 'cts_frame_info_out'),
            (self.inets_frame_path_1_0_0_0_1_0, 'frame_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0_0, 'rts_frame_info_out'),
            (self.inets_frame_path_1_0_1, 'frame_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_1, 'rts_frame_info_out'),
            (self.inets_counter_0_1_0, 'message_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_1, 'cts_frame_info_out'),
            (self.inets_counter_0_1_0_0, 'message_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_1, 'cts_frame_info_out'),
            (self.inets_virtual_cs_0, 'nav_cmd_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_1, 'rts_frame_info_out'),
            (self.inets_virtual_cs_0, 'nav_cmd_in'))
        self.msg_connect((self.inets_framing_0_0, 'frame_out'),
                         (self.inets_general_timer_0_1_0, 'active_in'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'),
                         (self.inets_frame_path_1, 'frame_in'))
        self.msg_connect((self.inets_general_timer_0_0, 'expire_signal_out'),
                         (self.inets_general_timer_0, 'disable_timer_in'))
        self.msg_connect((self.inets_general_timer_0_1, 'expire_signal_out'),
                         (self.inets_carrier_sensing_0, 'stop_in'))
        self.msg_connect((self.inets_general_timer_0_1_0, 'expire_signal_out'),
                         (self.inets_frame_path_1_0_0, 'frame_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0, 'power_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'),
                         (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_resend_check_0, 'resend_check_fail_out'),
                         (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_resend_check_0, 'resend_check_pass_out'),
                         (self.inets_frame_path_1_0, 'frame_in'))
        self.msg_connect((self.inets_rts_framing_0, 'frame_out'),
                         (self.inets_virtual_cs_0, 'frame_cmd_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_general_timer_0_0, 'active_in'))
        self.msg_connect((self.inets_sending_0, 'rts_frame_out'),
                         (self.inets_counter_0_0, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_counter_0_0_1, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'cts_frame_out'),
                         (self.inets_counter_0_0_1_0, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'ack_frame_out'),
                         (self.inets_counter_0_0_1_1, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'rx_control_out'),
                         (self.inets_frame_path_1_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_timeout_0, 'data_frame_info_in'))
        self.msg_connect((self.inets_sending_0, 'rts_frame_out'),
                         (self.inets_timeout_0_0, 'rts_frame_info_in'))
        self.msg_connect((self.inets_timeout_0, 'frame_info_out'),
                         (self.inets_frame_type_check_0_0, 'frame_info_in'))
        self.msg_connect((self.inets_timeout_0_0, 'frame_info_out'),
                         (self.inets_frame_type_check_0_0_0, 'frame_info_in'))
        self.msg_connect((self.inets_virtual_cs_0, 'frame_cmd_out'),
                         (self.inets_frame_path_1_0, 'frame_in'))
Exemplo n.º 7
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_frame_buffer_operations")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_frame_buffer_operations")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_frame_buffer_operations")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.destination_address = destination_address = 2
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 1, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_framing_0 = inets.framing(0, 17, 8, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0)
        self.inets_frame_probe_0 = inets.frame_probe(0, 100, 0)
        self.inets_frame_buffer_0 = inets.frame_buffer(1, 16, 5, 1, 1)
        self.inets_frame_aggregation_0 = inets.frame_aggregation(0, 18, 4)
        self.inets_IFS_0 = inets.IFS(0, 19, 10000, 8000, 1, 0, 1, cs_threshold, system_time_granularity_us)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost', '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_IFS_0, 'frame_info_pass_out'), (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_IFS_0, 'frame_info_pass_out'), (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_frame_aggregation_0, 'aggregated_frame_out'), (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'), (self.inets_IFS_0, 'frame_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_aggregation_0, 'subframe_in'))
Exemplo n.º 8
0
    def __init__(self,
                 constellation=gnuradio.digital.constellation_qpsk().base()):
        gr.top_block.__init__(self, "Test_slide_window")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_slide_window")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_slide_window")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Parameters
        ##################################################
        self.constellation = constellation

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.tx_center_frequency = tx_center_frequency = 3.8e8
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 2
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 1, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_timeout_0 = inets.timeout(0, 10, 1000, 1000, 1)
        self.inets_slide_window_0 = inets.slide_window(
            1, 22, 5, 1,
            constellation.bits_per_symbol() * (samp_rate / sps), 200, 1)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency)
        self.inets_receiving_0 = inets.receiving(
            1, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, rx_center_frequency)
        self.inets_framing_1 = inets.framing(0, 17, 2, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0)
        self.inets_frame_type_check_0 = inets.frame_type_check(
            0, 25, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1)
        self.inets_frame_probe_0 = inets.frame_probe(1, 100, 0)
        self.inets_frame_index_check_0 = inets.frame_index_check(
            1, 28, 1, 1, 1, 1, 1)
        self.inets_frame_filter_1 = inets.frame_filter(0, 26, 0, 0, 0, 0, 8, 0,
                                                       0, 1)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10, 1, 1)
        self.inets_frame_analysis_0 = inets.frame_analysis(
            0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, source_address)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 100, 2, 20)
        self.inets_address_check_0 = inets.address_check(0, 17, source_address)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost',
                                                     '52001', 10000, False)
        self.blocks_message_strobe_0 = blocks.message_strobe(
            pmt.intern("TEST"), 1000)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_message_strobe_0, 'strobe'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect(
            (self.inets_address_check_0, 'address_check_pass_out'),
            (self.inets_frame_type_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'),
                         (self.inets_address_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_filter_1, 'frame_info_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_frame_index_check_0, 'frame_info_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect(
            (self.inets_frame_type_check_0, 'data_frame_info_out'),
            (self.inets_framing_1, 'data_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'ack_frame_info_out'),
                         (self.inets_timeout_0, 'ack_frame_info_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_slide_window_0, 'frame_info_in'))
        self.msg_connect((self.inets_framing_1, 'frame_out'),
                         (self.inets_frame_index_check_0, 'frame_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'),
                         (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_slide_window_0, 'reload_request'),
                         (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_slide_window_0, 'frame_info_out'),
                         (self.inets_frame_filter_1, 'frame_info_in'))
        self.msg_connect((self.inets_slide_window_0, 'frame_info_out'),
                         (self.inets_timeout_0, 'data_frame_info_in'))
        self.msg_connect((self.inets_timeout_0, 'frame_info_out'),
                         (self.inets_slide_window_0, 'ack_info_in'))
Exemplo n.º 9
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_general_timer")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_general_timer")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_general_timer")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.source_address = source_address = 3
        self.samp_rate = samp_rate = 32000

        ##################################################
        # Blocks
        ##################################################
        self.inets_general_timer_0 = inets.general_timer(1, 3, 2, 1000, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 3, 1, 0, 1, 2, 1, 1, 1,
                                             318, 2, 524, 2, 2, 1, 1, 0,
                                             ([1, 2, 3]), ([200, 400, 600]), 2)
        self.inets_frame_probe_0 = inets.frame_probe(1, 100, 1)
        self.inets_frame_analysis_0 = inets.frame_analysis(
            0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, 2)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 10, 2, 1)
        self.inets_beacon_interpreter_0 = inets.beacon_interpreter(
            0, 29, 1, 2, source_address)
        self.blocks_message_strobe_0_0 = blocks.message_strobe(
            pmt.intern("TEST"), 1000)
        self.blocks_message_strobe_0 = blocks.message_strobe(
            pmt.intern("TEST"), 1000)
        self.blocks_message_debug_0 = blocks.message_debug()

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_message_strobe_0, 'strobe'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_beacon_interpreter_0, 'tx_sequence_out'),
                         (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'),
                         (self.inets_beacon_interpreter_0, 'beacon_frame_in'))
        self.msg_connect((self.inets_framing_0, 'frame_pmt_out'),
                         (self.inets_frame_analysis_0, 'frame_in'))
Exemplo n.º 10
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_standard_tdma_center")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_standard_tdma_center")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_standard_tdma_center")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.timeout_duration_ms = timeout_duration_ms = 500
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.destination_address = destination_address = 2
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_sending_0 = inets.sending(develop_mode=0, block_id=11, constellation=gnuradio.digital.constellation_qpsk().base(), preamble=diff_preamble_128, samp_rate=samp_rate, sps=sps, system_time_granularity_us=system_time_granularity_us, usrp_device_address=usrp_device_address, center_frequency=tx_center_frequency)
        self.inets_framing_0_0 = inets.framing(0, 17, 1, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0, ([2, 3]), ([1000, 1000]), 2)
        self.inets_framing_0 = inets.framing(0, 17, 2, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0, ([2, 3]), ([1000, 1000]), 2)
        self.inets_frame_type_check_0 = inets.frame_type_check(0, 25, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1)
        self.inets_frame_probe_0_0 = inets.frame_probe(1, 101, 0)
        self.inets_frame_probe_0 = inets.frame_probe(0, 100, 0)
        self.inets_frame_analysis_0 = inets.frame_analysis(0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, 2)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost', '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'), (self.inets_framing_0_0, 'data_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'), (self.inets_frame_type_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'data_frame_info_out'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_framing_0_0, 'frame_pmt_out'), (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_sending_0, 'ack_frame_out'), (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'), (self.inets_frame_probe_0_0, 'info_in'))
Exemplo n.º 11
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_dummy")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_dummy")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_dummy")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 4
        self.samp_rate = samp_rate = 32000
        self.reserved_field_II = reserved_field_II = 6
        self.reserved_field_I = reserved_field_I = 5
        self.len_source_address = len_source_address = 1
        self.len_reserved_field_II = len_reserved_field_II = 2
        self.len_reserved_field_I = len_reserved_field_I = 2
        self.len_payload_length = len_payload_length = 1
        self.len_frame_type = len_frame_type = 1
        self.len_frame_index = len_frame_index = 1
        self.len_destination_address = len_destination_address = 1
        self.increase_index = increase_index = 1
        self.frame_type = frame_type = 1
        self.frame_index = frame_index = 2
        self.develop_mode_list = develop_mode_list = [1, 2, 3]
        self.destination_address = destination_address = 3
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self.inets_run_0 = inets.run()
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0, ([2, 3]), ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_probe_0 = inets.frame_probe(0, 100, 1, 0, 0.01, 0, "/home/inets/source/gr-inets/results/", "", 1)
        self.inets_dummy_source_0 = inets.dummy_source(1, 23, 852, 3, 1)
        self.blocks_message_debug_0 = blocks.message_debug()

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_dummy_source_0, 'output'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'), (self.blocks_message_debug_0, 'print'))
Exemplo n.º 12
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_frame_buffer")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_frame_buffer")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_frame_buffer")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 15
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.samp_rate = samp_rate = 32000
        self.rx_gain = rx_gain = range_rx_gain

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 15, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_timeout_0 = inets.timeout(0, 10, 100, 1000)
        self.inets_sending_0 = inets.sending(
            develop_mode=1,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address)
        self.inets_receiving_0 = inets.receiving(
            2, 11,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, cs_threshold,
            usrp_device_address)
        self.inets_framing_0_0 = inets.framing(0, 17, 2, 1, 1, 1, 5, 1, 1, 1,
                                               0, 2, 0, 2, 1, 1, 0, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 1, 1, 5, 1, 1, 1, 0,
                                             2, 0, 2, 1, 1, 0, 0)
        self.inets_frame_type_check_0_0 = inets.frame_type_check(
            0, 0, 1, 1, 1, 1, 1, 1)
        self.inets_frame_type_check_0 = inets.frame_type_check(
            0, 0, 1, 1, 1, 1, 1, 1)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10, 1)
        self.inets_carrier_sensing_0 = inets.carrier_sensing(
            0, 11, 2, 100, 0.005, 1000)
        self.inets_backoff_0 = inets.backoff(0, 11, 3, 1, 10, 6, 100, 400)
        self.inets_address_check_0 = inets.address_check(0, 17, 1)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost',
                                                     '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect(
            (self.inets_address_check_0, 'address_check_pass_out'),
            (self.inets_framing_0_0, 'data_in'))
        self.msg_connect((self.inets_backoff_0, 'resend_frame_info_out'),
                         (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect((self.inets_carrier_sensing_0, 'frame_info_pass_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0, 'data_frame_info_out'),
            (self.inets_address_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_type_check_0, 'ack_frame_info_out'),
                         (self.inets_timeout_0, 'ack_frame_info_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0, 'data_frame_info_out'),
            (self.inets_backoff_0, 'frame_info_trigger_in'))
        self.msg_connect(
            (self.inets_frame_type_check_0_0, 'ack_frame_info_out'),
            (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_framing_0_0, 'frame_out'),
                         (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0, 'info_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'),
                         (self.inets_frame_type_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_sending_0, 'tx_frame_info_out'),
                         (self.inets_timeout_0, 'data_frame_info_in'))
        self.msg_connect((self.inets_timeout_0, 'frame_info_out'),
                         (self.inets_frame_type_check_0_0, 'frame_info_in'))
Exemplo n.º 13
0
class Test_IFS_with_Receiving(gr.top_block, Qt.QWidget):

    def __init__(self):
        gr.top_block.__init__(self, "Test_IFS_with_Receiving")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_IFS_with_Receiving")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_IFS_with_Receiving")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.destination_address = destination_address = 2
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 1, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_slide_window_0 = Template error: inets.slide_window($develop_mode, $block_id, $protocol, $window_size, $timeout_duration_ms, $system_time_granularity_us)
            cannot find 'window_size'
        self.inets_framing_0 = inets.framing(1, 17, 1, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost', '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_slide_window_0, 'data_frame_in'))
Exemplo n.º 14
0
    def __init__(self, phase=0, sweep_mode=0):
        gr.top_block.__init__(self, "theoretical_aloha")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("theoretical_aloha")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "theoretical_aloha")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Parameters
        ##################################################
        self.phase = phase
        self.sweep_mode = sweep_mode

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=192.168.10.4"
        self.tx_gain = tx_gain = 10
        self.tx_center_frequency = tx_center_frequency = 3.76e9
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 3
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = 10
        self.rx_center_frequency = rx_center_frequency = 3.76e9

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11*sps)

        self.range_rx_gain = range_rx_gain = 0
        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0,0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 0, 1, 0,0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1,1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0][0:128]
        self.destination_address = destination_address = 1
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range, self.set_range_rx_gain, 'Rx Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1,0,1,1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range, self.set_range_mu, 'BB Derotation Gain', "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2,0,1,1)
        self.inets_sending_0 = inets.sending(develop_mode=0, block_id=11, constellation=gnuradio.digital.constellation_qpsk().base(), preamble=diff_preamble_128, samp_rate=samp_rate, sps=sps, system_time_granularity_us=system_time_granularity_us, usrp_device_address=usrp_device_address, center_frequency=tx_center_frequency, interframe_interval_s=0, t_pretx_interval_s=0, file_name_extension_t_control="t1TXs", file_name_extension_pending="Tfr", record_on=0, name_with_timestamp=0, tx_gain=0, phase=phase,sweep_mode=sweep_mode)
        self.inets_receiving_0 = inets.receiving(0, 21, gnuradio.digital.constellation_qpsk().base(), rrc, mu, diff_preamble_128, rx_gain, samp_rate, sps, 30, usrp_device_address, rx_center_frequency)
        self.inets_framing_0 = inets.framing(0, 17, 2, 1, 0, 1, destination_address, 1, source_address, 1, 318, 2, 524, 2, 2, 1, 1, 0, ([2, 3]), ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_type_check_0 = inets.frame_type_check(0, 25, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1)
        self.inets_frame_path_1 = inets.frame_path(0, 39)
        self.inets_frame_path_0_0 = inets.frame_path(0, 39)
        self.inets_frame_check_1 = inets.frame_check(0, 9)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10, 1, 1, 1)
        self.inets_frame_analysis_0 = inets.frame_analysis(0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, source_address)
        self.inets_counter_1 = inets.counter(0, 100, 1, "bad_frame", 0, "/home/inets/source/gr-inets/results/", 1)
        self.inets_counter_0 = inets.counter(1, 100, 1, "sent", 0, "/home/inets/source/gr-inets/results/", 1)
        self.inets_address_check_0 = inets.address_check(0, 17, source_address)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_address_check_0, 'address_check_pass_out'), (self.inets_frame_type_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'), (self.inets_counter_1, 'message_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'), (self.inets_frame_check_1, 'frame_info_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'), (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_frame_check_1, 'good_frame_info_out'), (self.inets_address_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_path_0_0, 'frame_out'), (self.inets_framing_0, 'snr_in'))
        self.msg_connect((self.inets_frame_path_1, 'frame_out'), (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_frame_type_check_0, 'beacon_frame_info_out'), (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'), (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'), (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_receiving_0, 'snr_out'), (self.inets_frame_path_0_0, 'frame_in'))
        self.msg_connect((self.inets_sending_0, 'ack_frame_out'), (self.inets_counter_0, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'ack_frame_out'), (self.inets_frame_path_1, 'frame_in'))
Exemplo n.º 15
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_backoff")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_backoff")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_backoff")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.6"
        self.tx_center_frequency = tx_center_frequency = 4e8
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 1
        self.samp_rate = samp_rate = 1000000
        self.rx_gain = rx_gain = range_rx_gain
        self.rx_center_frequency = rx_center_frequency = 4e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.padding = padding = 64
        self.mu = mu = range_mu
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 2

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency)
        self.inets_rts_framing_0 = inets.rts_framing(
            0, 30, 1, 1, destination_address, 1, source_address, 1, 318, 2,
            524, 2, 2, 1, 3, padding, diff_preamble_128,
            gnuradio.digital.constellation_qpsk().bits_per_symbol() *
            (samp_rate / sps), 1000, 800)
        self.inets_resend_check_0 = inets.resend_check(0, 24, 6)
        self.inets_receiving_0 = inets.receiving(
            1, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, rx_center_frequency)
        self.inets_general_timer_0 = inets.general_timer(0, 3, 0, 50, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2)
        self.inets_frame_probe_0 = inets.frame_probe(2, 100, 0, 1, 0.005)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 16, 10, 1, 1)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 300, 2, 1)
        self.inets_backoff_0 = inets.backoff(1, 11, 1, 10, 100, 400, 0, 0.01,
                                             10, 0)
        self.blocks_message_strobe_0 = blocks.message_strobe(
            pmt.intern("TEST"), 1000)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_message_strobe_0, 'strobe'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_backoff_0, 'frame_info_out'),
                         (self.inets_resend_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_rts_framing_0, 'data_frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'),
                         (self.inets_backoff_0, 'virtual_cs_frame_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_backoff_0, 'power_in'))
        self.msg_connect((self.inets_resend_check_0, 'resend_check_pass_out'),
                         (self.inets_rts_framing_0, 'data_frame_in'))
        self.msg_connect((self.inets_resend_check_0, 'resend_check_pass_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_rts_framing_0, 'frame_out'),
                         (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_backoff_0, 'frame_info_in'))
Exemplo n.º 16
0
    def __init__(self):
        gr.top_block.__init__(self, "theoretical_csma")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("theoretical_csma")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "theoretical_csma")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.14"
        self.tx_center_frequency = tx_center_frequency = 3.9e8
        self.timeout_duration_ms = timeout_duration_ms = 1000
        self.system_time_granularity_us = system_time_granularity_us = 10
        self.source_address = source_address = 3
        self.samp_rate = samp_rate = 400000
        self.rx_gain = rx_gain = 0
        self.rx_center_frequency = rx_center_frequency = 3.9e8

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.mu = mu = 0.6
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 2
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self.inets_time_probe_0 = inets.time_probe(1, 200, 0)
        self.inets_standard_timer_0 = inets.standard_timer(0, 51, 4, 10)
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=tx_center_frequency,
            interframe_interval_s=0.004,
            t_pretx_interval_s=0,
            file_name_extension_t_control="t1TXs",
            file_name_extension_pending="Tfr",
            record_on=0,
            name_with_timestamp=0,
            tx_gain=0)
        self.inets_run_0 = inets.run(20, 10)
        self.inets_receiving_0 = inets.receiving(
            0, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, rx_center_frequency)
        self.inets_random_filter_1 = inets.random_filter(0, 3, 0.3694528)
        self.inets_random_filter_0 = inets.random_filter(0, 3, 0.03)
        self.inets_parameter_list_0 = inets.parameter_list(
            0, 49, [
                0.00091578, 0.002489, 0.00676676, 0.018393972, 0.05, 0.135914,
                0.3694528
            ])
        self.inets_general_timer_0_0_0 = inets.general_timer(0, 1, 0, 4, 10, 0)
        self.inets_general_timer_0_0 = inets.general_timer(
            0, 1, 0, 500000, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 0, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_probe_1 = inets.frame_probe(
            2, 100, 0, 0, 0.01, 0, "/home/inets/source/gr-inets/results/", "",
            1)
        self.inets_frame_probe_0 = inets.frame_probe(
            2, 100, 0, 1, 0.0015, 0, "/home/inets/source/gr-inets/results/",
            "", 1)
        self.inets_frame_counter_0 = inets.frame_counter(0, 36, 7, 0)
        self.inets_frame_buffer_0_0 = inets.frame_buffer(0, 16, 1, 1, 1, 0)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, 770, 3, 1)
        self.inets_counter_0_0_0 = inets.counter(
            3, 1, 1, "sent_3", 1, "/home/inets/source/gr-inets/results/", 0)
        self.inets_counter_0 = inets.counter(
            1, 2, 1, "sent", 0, "/home/inets/source/gr-inets/results/", 1)
        self.inets_cmd_path_0_0_0 = inets.cmd_path(0, 44, 1)
        self.inets_carrier_sensing_0 = inets.carrier_sensing(
            0, 11, 3, 3, 0.0015, system_time_granularity_us, -1, 20)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_carrier_sensing_0, 'cmd_pass_out'),
                         (self.inets_random_filter_0, 'cmd_in'))
        self.msg_connect((self.inets_cmd_path_0_0_0, 'cmd_out'),
                         (self.inets_frame_buffer_0_0, 'dequeue'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'dequeue_element'),
                         (self.inets_carrier_sensing_0, 'cmd_in'))
        self.msg_connect((self.inets_frame_counter_0, 'unselect_out'),
                         (self.inets_general_timer_0_0, 'active_in'))
        self.msg_connect((self.inets_frame_counter_0, 'select_out'),
                         (self.inets_standard_timer_0, 'disable_timer_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_frame_buffer_0_0, 'enqueue'))
        self.msg_connect((self.inets_general_timer_0_0, 'expire_signal_out'),
                         (self.inets_counter_0_0_0, 'reset_counter'))
        self.msg_connect((self.inets_general_timer_0_0, 'expire_signal_out'),
                         (self.inets_frame_counter_0, 'counts_in'))
        self.msg_connect((self.inets_general_timer_0_0, 'expire_signal_out'),
                         (self.inets_parameter_list_0, 'trigger_in'))
        self.msg_connect((self.inets_general_timer_0_0_0, 'expire_signal_out'),
                         (self.inets_carrier_sensing_0, 'cmd_in'))
        self.msg_connect((self.inets_parameter_list_0, 'parameter_out'),
                         (self.inets_random_filter_1, 'set_threshold'))
        self.msg_connect((self.inets_random_filter_0, 'lose_cmd_out'),
                         (self.inets_general_timer_0_0_0, 'active_in'))
        self.msg_connect((self.inets_random_filter_0, 'win_cmd_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_random_filter_1, 'win_cmd_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0, 'power_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_general_timer_0_0, 'active_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_parameter_list_0, 'trigger_in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_standard_timer_0, 'active_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_cmd_path_0_0_0, 'cmd_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_counter_0, 'message_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_counter_0_0_0, 'message_in'))
        self.msg_connect((self.inets_standard_timer_0, 'expire_cmd_out'),
                         (self.inets_random_filter_1, 'cmd_in'))
Exemplo n.º 17
0
    def __init__(self,
                 constellation=gnuradio.digital.constellation_qpsk().base()):
        gr.top_block.__init__(self, "CogMAC")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("CogMAC")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "CogMAC")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Parameters
        ##################################################
        self.constellation = constellation

        ##################################################
        # Variables
        ##################################################
        self.sps = sps = 4
        self.range_rx_gain = range_rx_gain = 0
        self.range_mu = range_mu = 0.6
        self.usrp_device_address = usrp_device_address = "addr=10.0.0.20"
        self.tx_mode_ms = tx_mode_ms = 5
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 3
        self.samp_rate = samp_rate = 400000
        self.rx_mode_ms = rx_mode_ms = 5
        self.rx_gain = rx_gain = range_rx_gain

        self.rrc = rrc = firdes.root_raised_cosine(1.0, sps, 1, 0.5, 11 * sps)

        self.padding = padding = 64
        self.mu = mu = range_mu
        self.inter_fr_ms = inter_fr_ms = 5
        self.frame_length = frame_length = 837
        self.diff_preamble_128 = diff_preamble_128 = [
            1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0,
            1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 1, 1, 0, 1,
            1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0,
            1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0,
            1, 1, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
            1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0,
            1, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 1,
            0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0,
            0, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0,
            0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 1,
            0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0, 0, 0, 1, 0, 1,
            1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0
        ][0:128]
        self.destination_address = destination_address = 1
        self.cs_threshold = cs_threshold = 0.005
        self.ch_switch_ms = ch_switch_ms = 5
        self.ch_pool_size = ch_pool_size = 10
        self.center_frequency = center_frequency = 400000000
        self.PU_time_ms = PU_time_ms = 100
        self.N_Mul_Fr = N_Mul_Fr = 10
        self.CCA2_ms = CCA2_ms = 10

        ##################################################
        # Blocks
        ##################################################
        self._range_rx_gain_range = Range(0, 60, 1, 0, 200)
        self._range_rx_gain_win = RangeWidget(self._range_rx_gain_range,
                                              self.set_range_rx_gain,
                                              'Rx Gain', "counter_slider",
                                              float)
        self.top_grid_layout.addWidget(self._range_rx_gain_win, 1, 0, 1, 1)
        self._range_mu_range = Range(0, 1, 0.01, 0.6, 200)
        self._range_mu_win = RangeWidget(self._range_mu_range,
                                         self.set_range_mu,
                                         'BB Derotation Gain',
                                         "counter_slider", float)
        self.top_grid_layout.addWidget(self._range_mu_win, 2, 0, 1, 1)
        self.inets_unbundle_0_0_0_0_0 = inets.unbundle(0, 16, 'N_Mul_Fr')
        self.inets_unbundle_0_0_0_0 = inets.unbundle(0, 16, 'N_Fr')
        self.inets_unbundle_0_0_0 = inets.unbundle(0, 16, 'CCA1_ms')
        self.inets_unbundle_0_0 = inets.unbundle(0, 16, 'N_PU')
        self.inets_unbundle_0 = inets.unbundle(0, 16, 'N_Re_fr')
        self.inets_sending_0 = inets.sending(
            develop_mode=0,
            block_id=11,
            constellation=gnuradio.digital.constellation_qpsk().base(),
            preamble=diff_preamble_128,
            samp_rate=samp_rate,
            sps=sps,
            system_time_granularity_us=system_time_granularity_us,
            usrp_device_address=usrp_device_address,
            center_frequency=center_frequency,
            interframe_interval_s=0.005,
            t_pretx_interval_s=0,
            file_name_extension_t_control="t1TXs",
            file_name_extension_pending="Tfr",
            record_on=0,
            name_with_timestamp=1,
            tx_gain=5)
        self.inets_run_0 = inets.run(1, 10)
        self.inets_receiving_0 = inets.receiving(
            0, 21,
            gnuradio.digital.constellation_qpsk().base(), rrc, mu,
            diff_preamble_128, rx_gain, samp_rate, sps, 30,
            usrp_device_address, center_frequency)
        self.inets_general_timer_3 = inets.general_timer(
            0, 3, 0, CCA2_ms, 10, 0)
        self.inets_general_timer_2_0 = inets.general_timer(0, 3, 0, 100, 10, 0)
        self.inets_general_timer_2 = inets.general_timer(0, 3, 0, 200, 10, 0)
        self.inets_general_timer_1_0 = inets.general_timer(
            0, 3, 0, ch_switch_ms, 10, 0)
        self.inets_general_timer_1 = inets.general_timer(
            0, 3, 0, ch_switch_ms, 10, 0)
        self.inets_general_timer_0 = inets.general_timer(
            0, 3, 0, 100000, 10, 0)
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, 10, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, -1, 1, 0, ([2, 3]),
                                             ([1000, 1000]), 2, 0, 300, 1)
        self.inets_frame_replicate_0 = inets.frame_replicate(1, 39, 4)
        self.inets_frame_probe_0_1 = inets.frame_probe(
            1, 99, 0, 0, 0.001, 0, "/home/inets/source/gr-inets/results/", "",
            1)
        self.inets_frame_probe_0_0 = inets.frame_probe(
            1, 101, 0, 0, 0.01, 0, "/home/inets/source/gr-inets/results/", "",
            1)
        self.inets_frame_probe_0 = inets.frame_probe(
            1, 100, 0, 0, 0.001, 0, "/home/inets/source/gr-inets/results/", "",
            1)
        self.inets_frame_path_2_0 = inets.frame_path(0, 39)
        self.inets_frame_path_2 = inets.frame_path(0, 39)
        self.inets_frame_path_1_1_0_0_1 = inets.frame_path(0, 39)
        self.inets_frame_path_1_1_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_1_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_1 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_1_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_1 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1_0_0 = inets.frame_path(0, 39)
        self.inets_frame_path_1 = inets.frame_path(0, 39)
        self.inets_frame_path_0 = inets.frame_path(0, 39)
        self.inets_frame_index_selector_0_1 = inets.frame_index_selector(
            0, 33, (1, ), 1)
        self.inets_frame_index_selector_0_0_0 = inets.frame_index_selector(
            0, 33, (10, ), 0)
        self.inets_frame_index_selector_0_0 = inets.frame_index_selector(
            0, 33, (1, ), 0)
        self.inets_frame_index_selector_0 = inets.frame_index_selector(
            0, 33, (10, ), 0)
        self.inets_frame_counter_1 = inets.frame_counter(0, 36, 4, 0)
        self.inets_frame_counter_0 = inets.frame_counter(
            1, 36, ch_pool_size, 0)
        self.inets_frame_check_0 = inets.frame_check(0, 9)
        self.inets_frame_buffer_0_0_0 = inets.frame_buffer(0, 16, 20, 1, 1, 0)
        self.inets_frame_buffer_0_0 = inets.frame_buffer(0, 16, 13, 0, 0, 0)
        self.inets_frame_buffer_0 = inets.frame_buffer(0, 15, 10, 0, 0, 1)
        self.inets_frame_and_0_0 = inets.frame_and(0, 38, 0)
        self.inets_frame_analysis_0 = inets.frame_analysis(
            0, 7, 1, 1, 1, 1, 1, 2, 2, 2, 1, source_address)
        self.inets_dummy_source_0 = inets.dummy_source(0, 23, frame_length, 3,
                                                       1)
        self.inets_cogmac_timing_0 = inets.cogmac_timing(
            1, 37, frame_length,
            constellation.bits_per_symbol() * (samp_rate / sps), samp_rate,
            (diff_preamble_128), 64, CCA2_ms, PU_time_ms, tx_mode_ms,
            rx_mode_ms, 15, 148, inter_fr_ms, ch_pool_size, ch_switch_ms,
            N_Mul_Fr)
        self.inets_cogmac_rm_rep_0 = inets.cogmac_rm_rep(0, 37)
        self.inets_cogmac_ch_pool_0 = inets.cogmac_ch_pool(
            0, 35, ch_pool_size, 410000000, 0, 10000000)
        self.inets_carrier_sensing_0_1 = inets.carrier_sensing(
            0, 11, 2, 500, cs_threshold, system_time_granularity_us, 100, 15)
        self.inets_carrier_sensing_0_0 = inets.carrier_sensing(
            0, 13, 2, CCA2_ms, cs_threshold, system_time_granularity_us, 100,
            15)
        self.inets_carrier_sensing_0 = inets.carrier_sensing(
            0, 11, 2, 60, cs_threshold, system_time_granularity_us, 100, 15)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.inets_carrier_sensing_0, 'cmd_pass_out'),
                         (self.inets_frame_counter_0, 'counts_in'))
        self.msg_connect((self.inets_carrier_sensing_0, 'cmd_fail_out'),
                         (self.inets_general_timer_2_0, 'active_in'))
        self.msg_connect((self.inets_carrier_sensing_0_0, 'cmd_fail_out'),
                         (self.inets_frame_path_1_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_carrier_sensing_0_0, 'cmd_pass_out'),
                         (self.inets_frame_path_1_0_0_1_0, 'frame_in'))
        self.msg_connect((self.inets_carrier_sensing_0_0, 'cmd_fail_out'),
                         (self.inets_general_timer_2_0, 'active_in'))
        self.msg_connect((self.inets_carrier_sensing_0_1, 'cmd_pass_out'),
                         (self.inets_frame_and_0_0, 'frame_I_in'))
        self.msg_connect((self.inets_carrier_sensing_0_1, 'cmd_fail_out'),
                         (self.inets_general_timer_2_0, 'active_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'CCA_CH_f_out'),
                         (self.inets_frame_path_1_0_0_1, 'frame_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'CCA_one_f_out'),
                         (self.inets_frame_path_1_0_0_1, 'frame_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'CCA_CH_f_out'),
                         (self.inets_general_timer_1, 'active_in'))
        self.msg_connect((self.inets_cogmac_ch_pool_0, 'CCA_one_f_out'),
                         (self.inets_general_timer_1_0, 'active_in'))
        self.msg_connect((self.inets_cogmac_rm_rep_0, 'new_cmd_out'),
                         (self.inets_frame_probe_0_1, 'info_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cmd_out'),
                         (self.inets_cogmac_ch_pool_0, 'CCA_CH_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cmd_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cmd_out'),
                         (self.inets_general_timer_0, 'active_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cogmac_config_out'),
                         (self.inets_unbundle_0, 'cmd_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cogmac_config_out'),
                         (self.inets_unbundle_0_0, 'cmd_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cogmac_config_out'),
                         (self.inets_unbundle_0_0_0, 'cmd_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cogmac_config_out'),
                         (self.inets_unbundle_0_0_0_0, 'cmd_in'))
        self.msg_connect((self.inets_cogmac_timing_0, 'cogmac_config_out'),
                         (self.inets_unbundle_0_0_0_0_0, 'cmd_in'))
        self.msg_connect((self.inets_dummy_source_0, 'output'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_frame_analysis_0, 'frame_info_out'),
                         (self.inets_frame_check_0, 'frame_info_in'))
        self.msg_connect((self.inets_frame_and_0_0, 'frame_out'),
                         (self.inets_frame_buffer_0_0, 'dequeue'))
        self.msg_connect((self.inets_frame_and_0_0, 'frame_out'),
                         (self.inets_framing_0, 'reset_index'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_frame_index_selector_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'dequeue_element'),
                         (self.inets_frame_index_selector_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0, 'buffer_not_full'),
                         (self.inets_frame_path_0, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'buffer_full'),
                         (self.inets_frame_and_0_0, 'frame_II_in'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'dequeue_element'),
                         (self.inets_frame_buffer_0_0_0, 'enqueue'))
        self.msg_connect((self.inets_frame_buffer_0_0, 'dequeue_element'),
                         (self.inets_frame_path_1_1, 'frame_in'))
        self.msg_connect((self.inets_frame_buffer_0_0_0, 'dequeue_element'),
                         (self.inets_frame_counter_1, 'counts_in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'),
                         (self.inets_cogmac_rm_rep_0, 'frame_cmd_in'))
        self.msg_connect((self.inets_frame_check_0, 'good_frame_info_out'),
                         (self.inets_general_timer_2_0, 'active_in'))
        self.msg_connect((self.inets_frame_counter_0, 'unselect_out'),
                         (self.inets_frame_path_1_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_counter_0, 'select_out'),
                         (self.inets_frame_path_1_1_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_counter_0, 'select_out'),
                         (self.inets_frame_path_1_1_0_0_1, 'frame_in'))
        self.msg_connect((self.inets_frame_counter_1, 'unselect_out'),
                         (self.inets_frame_path_1_0_0_1_0, 'frame_in'))
        self.msg_connect((self.inets_frame_counter_1, 'select_out'),
                         (self.inets_frame_path_1_1_0_0_0, 'frame_in'))
        self.msg_connect((self.inets_frame_counter_1, 'select_out'),
                         (self.inets_general_timer_3, 'active_in'))
        self.msg_connect(
            (self.inets_frame_index_selector_0, 'unselected_frame_out'),
            (self.inets_frame_path_1, 'frame_in'))
        self.msg_connect((self.inets_frame_index_selector_0, 'frame_out'),
                         (self.inets_frame_replicate_0, 'frame_in'))
        self.msg_connect(
            (self.inets_frame_index_selector_0_0, 'unselected_frame_out'),
            (self.inets_frame_index_selector_0_0_0, 'frame_in'))
        self.msg_connect(
            (self.inets_frame_index_selector_0_0_0, 'unselected_frame_out'),
            (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_frame_index_selector_0_1, 'frame_out'),
                         (self.inets_general_timer_2, 'active_in'))
        self.msg_connect((self.inets_frame_path_0, 'frame_out'),
                         (self.inets_dummy_source_0, 'trigger'))
        self.msg_connect((self.inets_frame_path_1, 'frame_out'),
                         (self.inets_frame_buffer_0_0, 'enqueue'))
        self.msg_connect((self.inets_frame_path_1_0_0, 'frame_out'),
                         (self.inets_cogmac_ch_pool_0, 'CCA_CH_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_0, 'frame_out'),
                         (self.inets_frame_buffer_0_0_0, 'flush'))
        self.msg_connect((self.inets_frame_path_1_0_0_1, 'frame_out'),
                         (self.inets_receiving_0, 'reconfig_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_1, 'frame_out'),
                         (self.inets_sending_0, 'reconfig_in'))
        self.msg_connect((self.inets_frame_path_1_0_0_1_0, 'frame_out'),
                         (self.inets_receiving_0, 'rx_switch_in'))
        self.msg_connect((self.inets_frame_path_1_1, 'frame_out'),
                         (self.inets_frame_buffer_0_0, 'dequeue'))
        self.msg_connect((self.inets_frame_path_1_1_0_0, 'frame_out'),
                         (self.inets_frame_counter_0, 'reset_in'))
        self.msg_connect((self.inets_frame_path_1_1_0_0_0, 'frame_out'),
                         (self.inets_frame_counter_1, 'reset_in'))
        self.msg_connect((self.inets_frame_path_1_1_0_0_1, 'frame_out'),
                         (self.inets_cogmac_ch_pool_0, 'CCA_one_in'))
        self.msg_connect((self.inets_frame_path_2, 'frame_out'),
                         (self.inets_frame_buffer_0_0_0, 'dequeue'))
        self.msg_connect((self.inets_frame_path_2_0, 'frame_out'),
                         (self.inets_frame_counter_1, 'reset_in'))
        self.msg_connect((self.inets_frame_replicate_0, 'complete_out'),
                         (self.inets_frame_buffer_0, 'dequeue'))
        self.msg_connect((self.inets_frame_replicate_0, 'replicate_out'),
                         (self.inets_frame_path_1, 'frame_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_frame_buffer_0, 'enqueue'))
        self.msg_connect((self.inets_general_timer_0, 'expire_signal_out'),
                         (self.inets_dummy_source_0, 'stop_in'))
        self.msg_connect((self.inets_general_timer_1, 'expire_signal_out'),
                         (self.inets_carrier_sensing_0, 'cmd_in'))
        self.msg_connect((self.inets_general_timer_1_0, 'expire_signal_out'),
                         (self.inets_carrier_sensing_0_1, 'cmd_in'))
        self.msg_connect((self.inets_general_timer_2, 'expire_signal_out'),
                         (self.inets_cogmac_ch_pool_0, 'CCA_CH_in'))
        self.msg_connect((self.inets_general_timer_2, 'expire_signal_out'),
                         (self.inets_frame_path_0, 'frame_in'))
        self.msg_connect((self.inets_general_timer_2, 'expire_signal_out'),
                         (self.inets_frame_path_2_0, 'frame_in'))
        self.msg_connect((self.inets_general_timer_2_0, 'expire_signal_out'),
                         (self.inets_frame_path_1_0_0, 'frame_in'))
        self.msg_connect((self.inets_general_timer_3, 'expire_signal_out'),
                         (self.inets_carrier_sensing_0_0, 'cmd_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0, 'power_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0_0, 'power_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_power_out'),
                         (self.inets_carrier_sensing_0_1, 'power_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_frame_out'),
                         (self.inets_frame_analysis_0, 'frame_in'))
        self.msg_connect((self.inets_receiving_0, 'rx_switch_out'),
                         (self.inets_sending_0, 'in'))
        self.msg_connect((self.inets_run_0, 'trigger_out'),
                         (self.inets_cogmac_timing_0, 'trigger_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_frame_index_selector_0_1, 'frame_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_frame_path_2, 'frame_in'))
        self.msg_connect((self.inets_sending_0, 'data_frame_out'),
                         (self.inets_frame_probe_0, 'info_in'))
        self.msg_connect((self.inets_sending_0, 'rx_control_out'),
                         (self.inets_receiving_0, 'rx_switch_in'))
        self.msg_connect((self.inets_unbundle_0, 'cmd_out'),
                         (self.inets_frame_replicate_0, 'reset_number_in'))
        self.msg_connect((self.inets_unbundle_0_0, 'cmd_out'),
                         (self.inets_frame_counter_1, 'set_n_counts_in'))
        self.msg_connect((self.inets_unbundle_0_0_0, 'cmd_out'),
                         (self.inets_carrier_sensing_0, 'reset_duration_in'))
        self.msg_connect((self.inets_unbundle_0_0_0, 'cmd_out'),
                         (self.inets_carrier_sensing_0_1, 'reset_duration_in'))
        self.msg_connect((self.inets_unbundle_0_0_0_0, 'cmd_out'),
                         (self.inets_frame_buffer_0_0, 'reset_size_in'))
        self.msg_connect((self.inets_unbundle_0_0_0_0_0, 'cmd_out'),
                         (self.inets_frame_buffer_0, 'reset_size_in'))
Exemplo n.º 18
0
    def __init__(self):
        gr.top_block.__init__(self, "Test_IFS")
        Qt.QWidget.__init__(self)
        self.setWindowTitle("Test_IFS")
        qtgui.util.check_set_qss()
        try:
            self.setWindowIcon(Qt.QIcon.fromTheme('gnuradio-grc'))
        except:
            pass
        self.top_scroll_layout = Qt.QVBoxLayout()
        self.setLayout(self.top_scroll_layout)
        self.top_scroll = Qt.QScrollArea()
        self.top_scroll.setFrameStyle(Qt.QFrame.NoFrame)
        self.top_scroll_layout.addWidget(self.top_scroll)
        self.top_scroll.setWidgetResizable(True)
        self.top_widget = Qt.QWidget()
        self.top_scroll.setWidget(self.top_widget)
        self.top_layout = Qt.QVBoxLayout(self.top_widget)
        self.top_grid_layout = Qt.QGridLayout()
        self.top_layout.addLayout(self.top_grid_layout)

        self.settings = Qt.QSettings("GNU Radio", "Test_IFS")
        self.restoreGeometry(self.settings.value("geometry").toByteArray())

        ##################################################
        # Variables
        ##################################################
        self.system_time_granularity_us = system_time_granularity_us = 1000
        self.source_address = source_address = 4
        self.samp_rate = samp_rate = 32000
        self.reserved_field_II = reserved_field_II = 6
        self.reserved_field_I = reserved_field_I = 5
        self.len_source_address = len_source_address = 1
        self.len_reserved_field_II = len_reserved_field_II = 2
        self.len_reserved_field_I = len_reserved_field_I = 2
        self.len_payload_length = len_payload_length = 1
        self.len_frame_type = len_frame_type = 1
        self.len_frame_index = len_frame_index = 1
        self.len_destination_address = len_destination_address = 1
        self.increase_index = increase_index = 1
        self.frame_type = frame_type = 1
        self.frame_index = frame_index = 2
        self.develop_mode_list = develop_mode_list = [1, 2, 3]
        self.destination_address = destination_address = 3
        self.cs_threshold = cs_threshold = 0.005

        ##################################################
        # Blocks
        ##################################################
        self.inets_framing_0 = inets.framing(0, 17, 1, 1, frame_index, 1,
                                             destination_address, 1,
                                             source_address, 1, 318, 2, 524, 2,
                                             2, 1, 1, 551)
        self.inets_IFS_0 = inets.IFS(1, 19, 10000, 8000, 3, 0, 1, cs_threshold,
                                     system_time_granularity_us)
        self.blocks_socket_pdu_0 = blocks.socket_pdu("UDP_SERVER", 'localhost',
                                                     '52001', 10000, False)

        ##################################################
        # Connections
        ##################################################
        self.msg_connect((self.blocks_socket_pdu_0, 'pdus'),
                         (self.inets_framing_0, 'data_in'))
        self.msg_connect((self.inets_framing_0, 'frame_out'),
                         (self.inets_IFS_0, 'frame_in'))