On 08/06/2020 01:32 PM, Damon qiu via USRP-users wrote:
Hi all,
I am using two USRP X310s to transmit signals on 2 channels. The two
USRP are synchronized through a octoclock-g.
A multi_usrp object is used to control those two USRP, device address
is set to addr0=192.168.40.2,addr1=192.168.60.2. I want to set two
USRP transmitting signal at RFA at the same time. I tried two ways to
set up the tx channel and subdev spec:
Method 1: The TX frontend specification is set to A:0 for both two mboard.
d_dev->set_tx_subdev_spec("A:0");
or
d_dev->set_tx_subdev_spec("A:0", 0);
d_dev->set_tx_subdev_spec("A:0", 1);
uhd::stream_args_t stream_args(tx_cpu, tx_otw);
stream_args.channels = {0, 1};
uhd::tx_streamer::sptr tx_stream = d_dev->get_tx_stream(stream_args);
Method 2: The TX frontend specification is set to "A:0 B:0"for both
two mboard.
d_dev->set_tx_subdev_spec("A:0 B:0");
or
d_dev->set_tx_subdev_spec("A:0 B:0", 0);
d_dev->set_tx_subdev_spec("A:0 B:0", 1);
uhd::stream_args_t stream_args(tx_cpu, tx_otw);
stream_args.channels = {0, 2};
uhd::tx_streamer::sptr tx_stream = d_dev->get_tx_stream(stream_args);
In the above two methods, there is a certain probability (about 10% to
30%) that the two transmission channels are on the same motherboard. I
guess this is a bug of UHD.
OS: Ubuntu 18.04
UHD: UHD-3.15.LTS
Please CC me as I can only receive the daily digest of the mailing list.
Best regards,
Damon
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
Not sure if this would make a difference, but
try:
stream_args.channels.push_back(0);
stream_args.channels.push_back(1):
Instead of your:
stream_args.channels = {0,1};
I think these should be equivalent, but my C++ fluency is low...
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com