I'm kind of stumped here. I used to be able to do this with the gnuradio
interface but I can't make it work with the UHD interface.  Don't know if
I'm missing something in my code or there's a bug in UHD.

I have two DBDRX rev2 boards on USRP1.  I want to tune each receiver to
different RF frequencies.  Based on the UHD example code, I did the
following:


uhd::usrp::multi_usrp::make(args)  // works fine most times (see #3 below)
usrp->set_rx_subdev_spec("A:0 B:0")   // Dboard A is ch 0, Dboard B is ch 1
(right?)
usrp->set_rx_rate(rate)  // for all channels.  Works fine
usrp->set_time_now(...)  // okay
for (ch=0; ch < 2; ch++) {
    usrp->set_rx_freq(freq[ch], ch);
    usrp->set_rx_gain(gain[ch], ch);
}
usrp->issue_stream_cmd(cmd);
usrp->get_device()->recv(....)


Now I do get two streams of IQ data at right sampling rate.  But there are
several issues I see:

1. set_rx_gain() seems to apply the gain to the wrong channel sometimes. It
changes from boot to boot.  Based on signal strength I see, it also seems to
use a wrong value on occasion.  Sometimes I even get a signal that's
unrecognizable by my demod until I power cycle the device (this may be more
of issue #2 or #3 below.)

2. set_rx_frq() works okay (i.e. I can demodulate fine) if I set both ch's
to the same frequency, say f0. But as soon as I set them to different
frequencies, say f0 and f1 for ch0 and ch1, respectively, it's as if the f0
setting is lost.

3. General instability.  When I restart my app with a different subdev spec
such as "A:0" or no subdev spec for single channel operation, calls to
set_rx_gain(f0, 0) or usrp::make() sometimes hangs.  I have to power cycle
the device to get going again.

It feels as though the subdev config in general is quite unstable
for my multi-channel setup or my code is missing something very basic.  When
I double check the freq and gain settings with the get functions, they all
look fine though.

Any insights?

Thanks,

Michael
_______________________________________________
Discuss-gnuradio mailing list
Discuss-gnuradio@gnu.org
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio

Reply via email to