Is there a method for accessing a ddc_block_control object from a multi_usrp 
object? I have been skimming the various RFNoC examples, and it seems the 
preferred method of accessing RFNoC objects is via the graph API. The problem 
is I can’t create an RFNoC graph for an existing multi_usrp object without 
getting a runtime exception.

It looks like in UHD 3.X there was a method get_device3() which gave access to 
the underlying RFNoC structure. I am using UHD 4.2 with an x310. 

Perhaps there is a reason that multi_usrp and RFNoC APIs appear mostly 
orthogonal. The reason I want access to this block directly is it has a 
set_freq() method that takes a frequency and a timestamp. Currently in my 
application I use the timed command API to digitally retune at a specified 
time. The issue that I encounter is I have to ensure that my channels are 
serialized in time, because if the freq hop timed command for channel A is t0, 
and channel B is t1, but the packet commanding channel B arrives first, I have 
to ensure my application holds the B command, waits for the A command to 
arrive, and issues the A command first. I would really like to be able to issue 
freq shifts independent of channel, but maintain the proper timestamping.

On top of that, I find the set_timed_command API cumbersome. I occasionally 
crash from longer runs with my application. I don’t have the exact runtime 
exception name, but it has something to do with a buffer being full and 
crashing when too many timed commands are issued.
_______________________________________________
USRP-users mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to