I have developed a transceiver application to run with XCVR2450 on USRP
N210. My transceiver class has been created as follows:

class my_trans(gr.top_block):

    def __init__(self, mod_class, demod_class, rx_callback, rx_callback2,
options):

        gr.top_block.__init__(self)

        # Get the modulation's bits_per_symbol
        args = mod_class.extract_kwargs_from_options(options)
        symbol_rate = options.bitrate / mod_class(**args).bits_per_symbol()

        self.sink = uhd_transmitter(options.args, symbol_rate,
                                    options.samples_per_symbol,
                                    options.tx_freq, options.tx_gain,
                                    options.spec, options.antenna,
                                    options.verbose)

        self.txpath = transmit_path(mod_class, options)
        self.connect(self.txpath, self.sink)

        # Get the demodulation's bits_per_symbol
        args = demod_class.extract_kwargs_from_options(options)
        symbol_rate = options.bitrate /
demod_class(**args).bits_per_symbol()

        self.source = uhd_receiver(options.args, symbol_rate,
                                   options.samples_per_symbol,
                                   options.rx_freq, options.rx_gain,
                                   options.spec, options.rx_antenna,
                                   options.verbose)

        options.samples_per_symbol = self.source._sps

        self.rxpath = receive_path(demod_class, rx_callback, rx_callback2,
options)
        self.connect(self.source, self.rxpath)

For testing, I set up one transceiver as a pure transmitter and another as
a pure receiver. The invocations were:

./transmitter.py -f 2.4G -A J1 --rx-freq=5G --rx-antenna=J2
./receiver.py -f 5G -A J1 --rx-freq=2.4G --rx-antenna=J2

where f and A refer to the transmit frequency and antenna respectively.
However, even though the transmitter reports transmission of packets (code
pattern similar to benchmark programs), the receiver is unable to receive
any packets. Strangely, if I run a pure transmitter without a receiver
component as in the original benchmark programs, the packets are received
correctly by the receiver program. I find this baffling, since I have used
separate frequencies and antennae for transmission and reception. I had
previously run a similar program on WBX daughterboard successfully. Could
someone please explain what's going on here?

-- 
Dhrubojyoti Roy
1655, North 4th Street, Apt-D
Columbus, OH-43201
Contact no.: +1-740-417-5890
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to