discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [USRP-users] Re: N321 LO sharing between RF 0/1


From: Paul Atreides
Subject: Re: [USRP-users] Re: N321 LO sharing between RF 0/1
Date: Tue, 18 Jan 2022 16:59:14 -0500

wow, thanks Daniel!
I just bumped an issue on the GNURadio github here I've cross-linked my comments to gr-ATA as well.


the python code i'm using to enable the LO distro in the UHD python API is:
import uhd
import numpy as np
usrp = uhd.usrp.MultiUSRP()
usrp.get_tree().access_bool("/blocks/0/Radio#0/dboard/tx_frontends/0/los/lo1/lo_distribution/LO_OUT_0/export").set(True)
usrp.get_tree().access_bool("/blocks/0/Radio#0/dboard/tx_frontends/0/los/lo1/lo_distribution/LO_OUT_1/export").set(True)
usrp.get_tree().access_bool("/blocks/0/Radio#0/dboard/tx_frontends/0/los/lo1/lo_distribution/LO_OUT_2/export").set(True)

i'm not sure how to work that into a python snippet yet as I think gr-uhd will claim the radio once the graph is started.

On Tue, Jan 18, 2022 at 3:58 PM Daniel Estévez <daniel@destevez.net> wrote:
El 18/1/22 a las 6:02, Marcus D. Leech escribió:
> On 2022-01-17 23:34, Paul Atreides wrote:
>> Posting on both GNURadio and USRP lists here, since my application
>> overlaps both gr-uhd/GNURadio and the UHD API.
>> The top-level question is, can gr-uhd support all the necessary
>> N321-specific commands necessary to export the TX LO from RF0 to RF1?
>> That would include running the command to set the 1x4 splitter. That's
>> the one in question.
>>
>> get_device()->get_tree()->access<bool>("mboards/0/dboards/A/tx_frontends/0/los/lo1/lo_distribution/LO_OUT_0/export").set(true)
>>
>>
>> If not, Marcus suggested using a python snippet. I've used that with
>> RFNoC before, but how would that work?
>> I'm guessing it would be an "after-init" and then call the python API
>> for the above (if that command is supported)?
>>
>> Thanks
>>
> Yeah, I'd say "after-init", and have it grab the object name of the usrp
> object?  Using Pythonic, rather than C++ syntax?

Hi,

In case it helps, in the GNU Radio testbed at the ATA
(https://wiki.gnuradio.org/index.php/GR-ATA_Testbed)
we're using

self.uhd_usrp_source_0.set_lo_export_enabled(True, "lo1", 0)
self.uhd_usrp_source_0.set_rx_lo_dist(True, "LO_OUT_0")
self.uhd_usrp_source_0.set_rx_lo_dist(True, "LO_OUT_1")
self.uhd_usrp_source_0.set_lo_source("external", "lo1", 0)
self.uhd_usrp_source_0.set_lo_source("external", "lo1", 1)
self.uhd_usrp_source_0.set_lo_source("external", "lo1", 2)
self.uhd_usrp_source_0.set_lo_source("external", "lo1", 3)

in a "Main - after init" Python snippet together with these patches:

https://github.com/daniestevez/uhd/commit/0a6da1a3fd5839b862cac740ed702923ed21b096

https://github.com/daniestevez/gnuradio/commit/f9909bade86045f379f83001de27317cc261807f

If someone gets the 1x4 splitter going directly in Python, I would be
interested in knowing how it's done, since that would save us from
having to patch UHD and GNU Radio.

Best,
Daniel.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]