On 02/25/2020 08:43 AM, Paolo Palana via USRP-users wrote:
Hello to all the mailing list.
I've a little problem in setting the rx frequency on my n310 when I need
to acquire from all 4 channels.
I use the n310 directly in my program using libuhd. The code I use in
order to set the rx_frequency is:
First of all set the subdevs:
if(vm.count("subdev")){
mUsrp->set_rx_subdev_spec(mSubDev);
}
............
for(size_t i=0; i<mFreqs.size(); i++)
{
cout << boost::format("Setting chan %d Freq: %f MHx") % (i)
% (mFreqs[i]/1e6) << endl;
uhd::tune_request_t tune_request(mFreqs[i]);
tune_request.args = uhd::device_addr_t("mode_n=integer");
mUsrp->set_rx_freq(tune_request, i);
cout << boost::format("New RX Freq chan %d: %f MHz...") % i
% (mUsrp->get_rx_freq(i)/1e6) << endl << endl;
}
The output I can see on my console confirm that every channel should
have the rigth frequency.
Of course this is not the case.
Suppose I wont acquire from A:0 RX2 (if I use TX/RX is the same) and A:1
RX2 tuning the first device at 654.0 MHZ
and the second to 896.8 MHZ. What happen is that both channels are tuned
to the last frequency (I'm sure of it because I tested it with a signal
generator).
I'm unable to understand why this happen. Any help is apreciated.
Thank you
The N310 is based on the AD9371 RF Front-end chip. There are two of
them in an N310. Those chips use a *SHARED* LO between the two channels,
so you cannot set independent frequencies within the same chip (A:0
A:1 or B:0 B:1).
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com