Hi Marcus, I tried to use the set_agc_mode the same way, but I get an error during the build process that says: 'class uhd::usrp::multi_usrp' has no member named 'set_agc_mode.' This API is in the ad9361_ctrl, but it seems to be looking for it in multi_usrp. How would I include the ad9361_ctrl?
Also, is there a way to read what all the AD registers are set to so I know the default values? When I use the getter functions (e.g., self.uhd_usrp_source_0.get_gain()) in the python code, it doesn't seem to do anything. Thank you On Wed, Mar 21, 2018 at 1:26 PM, Marcus D. Leech <[email protected]> wrote: > On 03/21/2018 02:24 PM, Firdavs Pulat wrote: > > Hi Marcus, > > Thank you for your help and patience! > > Following your suggestion, I think I was able to turn the AGC on. Now, I'm > wondering what mode it's running at (e.g., slow, fast, etc). Looking at the > multi_usrp class, I don't see any API's to set the mode. But in the > ad9361_ctrl class, I see an API called set_agc_mode. Can I use that API the > same way I'm using set_rx_agc? I tried the following > command: uhd_usrp_probe --string /mboards/0/dboards/A/rx_ > frontends/A/gain/agc/mode/value, and it returned 'slow', so I assume the > default mode of AGC is slow? > > I know you said AGC isn't used by most applications, but the reason why > I'm asking all of this is because our application was using the AD9361 chip > and we were enabling AGC then, so I'm trying to do the same here with Ettus > B200 since the RFIC is the same. > > Thanks! > > You should be able to use set_agc_mode() in the same way. > > > > > On Tue, Mar 20, 2018 at 3:11 PM, Marcus D. Leech <[email protected]> > wrote: > >> On 03/20/2018 03:27 PM, Firdavs Pulat wrote: >> >> Hi Marcus, >> >> Could you please elaborate on the "extend the Gnu Radio multi_usrp" part? >> Maybe you could point me to some examples one how to set these (I assume >> others must have played around with them since it's so essential), or >> documentation on how that's done? I'm just not sure where/how in the >> usrp_source impl source code I would set them. I have been looking online, >> but haven't found anything of use yet. >> >> Thank you! >> >> In the Gnu Radio source code, in gr_uhd/usrp_source_impl.cc >> >> If you look at any of the setter functions for various device parameters, >> you'd pattern your call to set_rx_agc() after one of those. The >> lowest-impact >> way to do it would be to "hijack" the existing gain-setting function, >> and have it look for "magic" gain value that then turns on hardware AGC >> via the set_rx_agc() function. >> >> In reality, very few applications use the hardware AGC in the chip, which >> is one of the reasons that it hasn't yet been "mapped" into the GR >> API wrapper. >> >> >> >> >> On Thu, Mar 8, 2018 at 10:58 AM, Marcus D. Leech <[email protected]> >> wrote: >> >>> On 03/08/2018 10:43 AM, Firdavs Pulat wrote: >>> >>>> Hi all, >>>> >>>> Are there APIs as part of gnuradio that give access to the low level >>>> ADI registers (to both probe, and set)? For instance, I'm trying to see if >>>> the AGC is currently turned on on B200mini, and if it's, what kind of mode >>>> it is on (e.g., slow or fast). Looking at it the USRP manual online, I see >>>> functions like set_agc, set_agc_mode, etc. I just don't have any idea >>>> how/where to actually use/set these. Could anyone please help me out? >>>> >>>> Thanks! >>>> >>>> >>>> No need to tinker with ADI registers. >>> >>> The multi_usrp API provides access to a set_rx_agc function: >>> >>> https://files.ettus.com/manual/classuhd_1_1usrp_1_1multi__us >>> rp.html#abdab1f6c3775a9071b15c9805f866486 >>> >>> However, you'd have to extend the Gnu Radio multi_usrp "wrapper" (in >>> gr-uhd in the main Gnu Radio codebase) to provide access to set_rx_agc(). >>> >>> Note that in many cases, hardware AGC doesn't really work the way you'd >>> like it to, since its "world view" may be very very different than the view >>> of your particular application. >>> >>> >>> >>> >>> _______________________________________________ >>> Discuss-gnuradio mailing list >>> [email protected] >>> https://lists.gnu.org/mailman/listinfo/discuss-gnuradio >>> >> >> >> > >
_______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
