コード例 #1
0
    def initialize_hackrf(freq, sample_rate, gain, bw, ctrl_conn):
        ret = hackrf.setup()
        ctrl_conn.send("setup:" + str(ret))
        if ret != 0:
            return False

        ret = hackrf.set_freq(freq)
        ctrl_conn.send("set_freq:" + str(ret))

        ret = hackrf.set_sample_rate(sample_rate)
        ctrl_conn.send("set_sample_rate:" + str(ret))

        ret = hackrf.set_lna_gain(gain)
        ctrl_conn.send("set_lna_gain:" + str(ret))

        ret = hackrf.set_vga_gain(gain)
        ctrl_conn.send("set_vga_gain:" + str(ret))

        ret = hackrf.set_txvga_gain(gain)
        ctrl_conn.send("set_txvga_gain:" + str(ret))

        ret = hackrf.set_baseband_filter_bandwidth(bw)
        ctrl_conn.send("set_bandwidth:" + str(ret))

        return True
コード例 #2
0
    def process_command(command):
        logger.debug("HackRF: {}".format(command))
        if command == "stop":
            return "stop"

        tag, value = command.split(":")
        if tag == "center_freq":
            logger.info("HackRF: Set center freq to {0}".format(int(value)))
            return hackrf.set_freq(int(value))

        elif tag == "gain":
            logger.info("HackRF: Set gain to {0}".format(int(value)))
            hackrf.set_lna_gain(int(value))
            hackrf.set_vga_gain(int(value))
            hackrf.set_txvga_gain(int(value))

        elif tag == "sample_rate":
            logger.info("HackRF: Set sample_rate to {0}".format(int(value)))
            return hackrf.set_sample_rate(int(value))

        elif tag == "bandwidth":
            logger.info("HackRF: Set bandwidth to {0}".format(int(value)))
            return hackrf.set_baseband_filter_bandwidth(int(value))
コード例 #3
0
 def set_device_gain(self, gain):
     if self.is_open:
         hackrf.set_lna_gain(gain)
         hackrf.set_vga_gain(gain)
         hackrf.set_txvga_gain(gain)