[USRP-users] API change in UHD 3.9.1 for MIMO recv?
dario.fertonani at gmail.com
Thu Oct 1 15:15:32 EDT 2015
Thank you Martin for the quick help. That worked right away.
On Thu, Oct 1, 2015 at 11:59 AM, Martin Braun <martin.braun at ettus.com>
> the problem is that VITA times are unsynched. This was indeed something
> that changed in 3.9.0, probably when we updated the RFIC interface. The
> fact that it worked before (in pre-3.9 code) was more of a coincidence
> than a design decision, though.
> If you set VITA times at initialization, your code works fine (and yes,
> it also fails on my end without the initialization). This is the changes
> I had to do:
> 68 //init board and set frequencies
> 69 auto rfBoardPtr = uhd::usrp::multi_usrp::make(
> uhd::device_addr_t( "" ) );
> 70 rfBoardPtr->set_clock_source( "internal" );
> 71 rfBoardPtr->set_master_clock_rate( samplingRate_Hz * 2.0 );
> 72 rfBoardPtr->set_rx_rate( samplingRate_Hz );
> 73 rfBoardPtr->set_rx_freq( uhd::tune_request_t( carrierFreq_Hz ) );
> 74 rfBoardPtr->set_time_unknown_pps(0.0);
> (Only the last line was changed, rest included for reference).
> Setting vita times needs be done at init, and when the master clock rate
> is changed.
> Sorry for the inconvenience, and we may come up with a cleaner way of
> fixing this in 3.10. I hope this'll fix your issues.
> On 01.10.2015 11:05, Dario Fertonani via USRP-users wrote:
> > I'm upgrading to UHD 3.9.1 now that the B210 CODEC loopback bug is under
> > control.
> > Did anything change in the API that initializes a two-antenna receive
> > stream? All our MIMO code stopped working.
> > I'm attaching a toy C++ code that does nothing but streaming and writing
> > if errors occurred while streaming. This code has worked since the 3.8.0
> > days and now all of a sudden doesn't when the stream has two antennas.
> > It dies for ERROR_CODE_LATE_COMMAND even with a full second of margin
> > (attached version). It I raise that margin to 5 seconds, then it dies
> > for ERROR_CODE_TIMEOUT even if the timeout is raised to something
> > unrealistic like 10 seconds.
> > For anyone that can help, the compile/run instructions are in the first
> > few lines of the attached code. This version works on all our PCs that
> > still have UHD 3.8.5:
> > $ ./rxTest 739 4 2 1000 256
> > while it doesn't on the one that I just updated to UHD 3.9.1. On this
> > one though the single antenna version
> > $ ./rxTest 739 4 1 1000 256
> > works.
> > I'm suspecting a subtle change in UHD. Maybe an init command that now is
> > no longer optional?
> > Thanks,
> > Dario
> > _______________________________________________
> > USRP-users mailing list
> > USRP-users at lists.ettus.com
> > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the USRP-users