On 2022-06-06 13:33, Jon Beniston wrote:
Hi Marcus,

The "master_clock_rate" specification is *per session*.   It does NOT set it in 
any persistent way.
In the next session, if you don't specify it, UHD will pick an appropriate
clock value.  If this is NOT happening, then that is a bug or an 
under-documented feature.
Sorry for the basic question, but what is a "session"? How do I end one and 
start a new one within a single execution of a program?

If I just try to re-make the device, I get an exception. Eg:

                 m_dev = uhd::usrp::multi_usrp::make(device_args);
                 m_dev->set_master_clock_rate(61.44e6);
                // How to restart a session here?
                 m_dev = uhd::usrp::multi_usrp::make(device_args);

...
[INFO] [B200] Asking for clock rate 61.440000 MHz...
[INFO] [B200] Actually got clock rate 61.440000 MHz.
[INFO] [B200] Detected Device: B210
[INFO] [B200] Operating over USB 3.
[ERROR] [UHD] Exception caught in safe-call.
   in b200_radio_ctrl_core_impl::~b200_radio_ctrl_core_impl
   at 
C:\Users\buildbot\worker0\Builder_uhdPackage_Windows_x64_vs2019\work\uhd\host\lib\usrp\b200\b200_radio_ctrl_core.cpp:68
this->peek32(0); _async_task.reset(); -> AssertionError: accum_timeout < 
_timeout
   in b200_radio_ctrl_core_impl::wait_for_ack
   at 
C:\Users\buildbot\worker0\Builder_uhdPackage_Windows_x64_vs2019\work\uhd\host\lib\usrp\b200\b200_radio_ctrl_core.cpp:227

Probably something trivial, but I can't see it in the docs. No close/release 
method I can see.

Thanks,
Jon
Ah, that is a different question.

A session is defined by the lifetime of the multi_usrp object.

However, there is a set_master_clock_rate() API call:

https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__usrp.html#a99254abfa5259b70a020e667eee619b9



What the consequences are for changing this within a session is necessarily device dependent.   If I were going to do this, I'd tear down the streamers, set the
  master_clock to the new rate, and then re-create the streamers.


_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to