Hi usrp users,
I experienced some problem using my X300 + TwinRx over 1 Gb/s link.
The following code example shows that after the iteration number 253, the
program stops
with the following traceback:
terminate called after throwing an instance of 'uhd::io_error'
what(): EnvironmentError: IOError: [0/Radio_0] sr_write() failed:
EnvironmentError:
IOError: Block ctrl (CE_01_Port_40) no response packet - AssertionError:
bool(buff)
in uint64_t ctrl_iface_impl::wait_for_ack(bool)
at /uhd_3.10.3.0-release/lib/rfnoc/ctrl_iface.cpp:204
I have good news: If I move the part of the code which construct the rx_stream,
there is
no errors.
Is someone can explain me ? Is this an uhd bug or not ?
Matis
bool test2() {
std::string args="addr=192.168.10.2";
uhd::usrp::multi_usrp::sptr usrp = uhd::usrp::multi_usrp::make(args);
std::string subdev_spec="A:0";
usrp->set_rx_subdev_spec(subdev_spec);
usrp->set_rx_rate(25e6, 0);
usrp->set_rx_freq(1240e6, 0);
usrp->set_rx_gain(50.0, 0);
usrp->set_rx_antenna("RX1", 0);
while (true) {
uhd::sensor_value_t lo_locked = usrp->get_rx_sensor("lo_locked",0);
if (lo_locked.to_bool()) {
break;
}
usleep(10000);
}
for (int iteration=0; iteration<1000; iteration++) {
// try this block outside the loop and every thing is ok
uhd::stream_args_t stream_args("sc16", "sc16");
stream_args.channels.push_back(0);
uhd::rx_streamer::sptr rx_stream = usrp->get_rx_stream(stream_args);
// end of block
cout << "iteration: "<< iteration << endl;
uhd::stream_cmd_t
stream_cmd(uhd::stream_cmd_t::STREAM_MODE_START_CONTINUOUS);
stream_cmd.num_samps = 0;
stream_cmd.stream_now = true;
stream_cmd.time_spec = uhd::time_spec_t();
rx_stream->issue_stream_cmd(stream_cmd);
std::vector<std::complex<int16_t>> buff_sc16(524288);
uhd::rx_metadata_t md;
int num_rx_samps;
for (int i=0; i<10; i++) {
num_rx_samps = rx_stream->recv(&buff_sc16.front(),
buff_sc16.size(), md, 1.0);
cout << "recv:"<< num_rx_samps<<endl;
}
stream_cmd.stream_mode = uhd::stream_cmd_t::STREAM_MODE_STOP_CONTINUOUS;
rx_stream->issue_stream_cmd(stream_cmd);
}
return true;
}
_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com