Ohh ... nice! I didn't know gr-uhd provided that interface! A quick search
shows it's in GR as of sometime in version 3.7 .. not sure how far back,
but certainly in the current release. Good to know!

Note that this gr-uhd GPIO API is available in Python (via SWIG) as well as
C++ ... BUT: it is not exposed into GRC.

Hence, to use the UHD GPIO API inside GRC, you'll still need to do what I
wrote previously: provide the UHD USRP object to your custom GRC block
(whether Python or C++), and then it can manipulate the USRP GPIO via the
gr-uhd Python provided API, or directly in C++ via the UHD C++ API for GPIO.

Fun fun fun! - MLD


On Fri, Apr 17, 2020 at 1:36 PM Rob Kossler <rkoss...@nd.edu> wrote:

> The following link (GR documentation) shows some UHD GPIO functionality.
> https://www.gnuradio.org/doc/doxygen/classgr_1_1uhd_1_1usrp__block.html
>
> On Fri, Apr 17, 2020 at 10:27 AM Michael Dickens via USRP-users <
> usrp-us...@lists.ettus.com> wrote:
>
>> Hi Ivan - I'm assuming you mean configure and control a USRP's GPIO via
>> UHD in GNU Radio?
>>
>> In theory this should be possible, at least in C++ and of course it
>> requires that the specific USRP have GPIO ...
>>
>> I'm not sure if there's a Python GPIO API as of UHD 3.15, but if there is
>> then that method should work about the same as the C++ method.
>>
>> You'd have to get access to the instantiated USRP object, then you can
>> use that object to issue GPIO related calls. See these pages for more info
>> about GPIO in UHD:
>>
>> < https://files.ettus.com/manual/page_gpio_api.html >
>>
>> <
>> https://kb.ettus.com/Synchronizing_USRP_Events_Using_Timed_Commands_in_UHD#Example:_Using_Timed_Commands_to_Control_GPIO
>>  >
>>
>> < https://github.com/EttusResearch/uhd/blob/master/host/examples/gpio.cpp
>>  >
>>
>> I can't think of a current GNU Radio block that handles UHD USRP GPIO. If
>> you look around & can't find one, then you'd need to create a custom GNU
>> Radio block to handle this. You would pass your new block the USRP object,
>> which you'd then use for the GPIO calls ... using Python or C++ depending
>> on which API is available for your specific UHD.
>>
>> Maybe there's another way that I don't know of? If so hopefully others
>> will add to the discussion!
>>
>> Hope this is useful! - MLD
>>
>> On Fri, Apr 17, 2020 at 9:15 AM Ivan Zahartchuk via USRP-users <
>> usrp-us...@lists.ettus.com> wrote:
>>
>>> Hello. Please tell me if it is possible to configure GPIO using
>>> gnuradio. I want to use RFNOC blocks and switch an external device using
>>> GPIO
>>> _______________________________________________
>>> USRP-users mailing list
>>> usrp-us...@lists.ettus.com
>>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>>>
>> _______________________________________________
>> USRP-users mailing list
>> usrp-us...@lists.ettus.com
>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>>
>

Reply via email to