Hello,
I am new to the USRP/gnu-radio world, trying to understand the basic
working. I have been trying the following 2 experiments which I’ve not
been
able to successfully debug or find documentation for. Can somebody help
me
out to explain what is going wrong or point to some useful references.
The hardware I am using is the RFX2400 daughterboard with USRP and a
2.4-2.48G antenna. I’m using two separate boards in receive and transmit
configuration.
-
I tried the digital/benchmark_tx/rx.py provided with the examples
(3.2.2
tarball). I tried to read from a simple ascii file containing a
sequence of
numbers repeated 1000 times. I’ve tried different options modulation
schemes
but the problems persist. Two main problems in this example
a) It seems that using the default gmsk modulation, although 179
packets are sent, only 147 are received. Essentially, the last packet is
always received in error and the end 15% of the file is always lost.
b) The transmission seems to be very sensitive to the bit rate
specified. i.e. there are several combination of big-rates at which the
receiver receives nothing. -
I tried so send a simple tone across by hooking a sine wave generator
to
the USRP using the grc. Even that seems the just end up in noise
reception.
I’m attaching a small snippet of the code generated.
I appreciate any help.
Thanks
Shalabh
-------------------------------tx-------------------------------------------
self.gr_float_to_complex_0 = gr.float_to_complex(1)
self.gr_sig_source_x_0 = gr.sig_source_f(500000,
gr.GR_COS_WAVE, 100000, .5, 0)
self.gr_sig_source_x_1 = gr.sig_source_f(500000,
gr.GR_SIN_WAVE, 100000, .5, 0)
self.usrp_simple_sink_x_0 =
grc_usrp.simple_sink_c(which=0,
side=“A”)
self.usrp_simple_sink_x_0.set_interp_rate(256)
self.usrp_simple_sink_x_0.set_frequency(2.44e9,
verbose=True)
self.usrp_simple_sink_x_0.set_gain(80)
self.usrp_simple_sink_x_0.set_enable(True)
self.connect((self.gr_float_to_complex_0, 0),
(self.usrp_simple_sink_x_0, 0))
self.connect((self.gr_sig_source_x_0, 0),
(self.gr_float_to_complex_0, 0))
self.connect((self.gr_sig_source_x_1, 0),
(self.gr_float_to_complex_0, 1))
------------------------------rx-------------------------------------------
self.usrp_simple_source_x_0 =
grc_usrp.simple_source_c(which=0, side=“A”, rx_ant=“TX/RX”)
self.usrp_simple_source_x_0.set_decim_rate(256)
self.usrp_simple_source_x_0.set_frequency(2.44e9,
verbose=True)
self.usrp_simple_source_x_0.set_gain(80)
self.wxgui_fftsink2_2 = fftsink2.fft_sink_c(
self.GetWin(),
baseband_freq=0,
y_per_div=10,
y_divs=10,
ref_level=50,
sample_rate=500000,
fft_size=1024,
fft_rate=30,
average=False,
avg_alpha=None,
title=“FFT Plot”,
peak_hold=False,
)
self.Add(self.wxgui_fftsink2_2.win)
self.connect((self.usrp_simple_source_x_0, 0),
(self.wxgui_fftsink2_2, 0))