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

Reply via email to