discuss-gnuradio
[Top][All Lists]
Advanced

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

[Discuss-gnuradio] B200/mini GPIO


From: Santos Campos
Subject: [Discuss-gnuradio] B200/mini GPIO
Date: Fri, 10 Jun 2016 07:44:24 -0400

Pretty close! I was hoping to make a kind of usrp sink to control the board remotely.
[usrp source] -> (demodulate signal to a 0/1) -> [custom block to mux gpio ports]

So I'm familiar with pass by reference for functions and how to use them after.
I'm not sure what it means to PbR into a whole block though. Does this mean
it's okay to add an extra parameter to my work function? 




On Thu, Jun 9, 2016 at 12:17 PM, Martin Braun <address@hidden> wrote:
Santos,

I could not follow this.
Here's what I think you want:

- USRP Source => Other Blocks
- Your GPIO Block is on the side

In C++, pass a reference of the USRP source into your block. There, use
get_device() to return a multi_usrp::sptr. With that, you can do
whatever you want.

M



On 06/08/2016 11:06 AM, Santos Campos wrote:
> Ah sorry, I meant to mention I'm writing it in c++ not python.
> Yes, I saw that get_device() returns a sptr. I think I had a poor choice
> of words.
> I was unclear on how to even pass the existing usrp into my oot module,
> BUT I think I have a better idea now.
>
> Would something this work?:
>       std::string args = "";
>       ...
>       uhd::usrp::multi_usrp::sptr dummy_usrp =
> uhd::usrp::multi_usrp::make(args); //okay to pass an empty string address?
>       uhd::device::sptr usrp = dummy_usrp->get_device(); //creates a
> shared pointer to a usrp device created in an earlier block (usrp
> source, etc..)
>       //reference usrp like normal
> This DID compile, but it'd be great to have reassurance from the gurus.
> I'm about to try it out as well.
> Although I'm a bit confused as to why I don't have to define
> get_device() since it's a virtual function. Did the layers of wrappers
> take care of it? (hopefully it's not embarrassingly obvious. My c++ fu
> is a little rusty)
>
> Y'all are awesome :),
> -Santos
>
> On Wed, Jun 8, 2016 at 12:12 PM, Martin Braun <address@hidden
> <mailto:address@hidden>> wrote:
>
>     get_device() returns a shared pointer. Note this function is not exposed
>     in Python -- you need to pass the object into another C++ object, and
>     there call get_device().
>
>     M
>
>     On 06/08/2016 06:38 AM, Santos Campos wrote:
>     > Hi, Martin!
>     > I tried taking a peek at how the usrp sink might handle a preceding usrp
>     > source (for inspiration).
>     > Does it (and the way you described) declare a usrp device and do some
>     > kind of shallow copy with the get_device() method?
>     >
>     > On Mon, Jun 6, 2016 at 5:54 PM, Martin Braun <address@hidden <mailto:address@hidden>
>     > <mailto:address@hidden <mailto:address@hidden>>> wrote:
>     >
>     >     Nah, you can just pass in the existing one into your module and grab a
>     >     reference to the multi_usrp from there.
>     >
>     >     M
>     >
>     >     On 06/03/2016 12:57 PM, Santos Campos wrote:
>     >     > Hello again again!
>     >     > So I'm trying to write an OOT module to control the gpio from GRC.
>     >     > Would I have to create a usrp device in the module's code if I am using
>     >     > a usrp source?
>     >     > My gut says to probably not re-declare it since it's already in use, but
>     >     > I'm not sure how I could bring it into scope if I don't have to
>     >     > re-declare it.
>     >     > I tried poking around for the usrp sink code to see what it did but
>     >     > couldn't find it.
>     >     >
>     >     > On Wed, Jun 1, 2016 at 11:45 AM, Santos Campos <address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>
>     >     > <mailto:address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>>> wrote:
>     >     >
>     >     >     Worked like a charm! Thanks for the helpful comments!
>     >     >     Like I said originally, I'm trying to use the gpio to remotely
>     >     >     switch between 2 antennas.
>     >     >     Currently trying to familiarize myself with boost and the uhd api.
>     >     >     Will undoubtedly be back to the listserv with questions on those.
>     >     >
>     >     >
>     >     >     On Wed, Jun 1, 2016 at 11:23 AM, Marcus D. Leech <address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>
>     >     >     <mailto:address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>>> wrote:
>     >     >
>     >     >         On 06/01/2016 10:23 AM, Santos Campos wrote:
>     >     >>         Hello again, all! I've finally come back to this after a while.
>     >     >>         I'm trying to get the example code to compile but having some
>     >     >>         trouble. Does anyone have any experience with using the uhd
>     >     >>         gpio api?
>     >     >>         I tried using this to compile:
>     >     >>
>     >     >>             $ gcc -I/usr/include/boost
>     >     >>         -I/home/santosec/uhd/host/include/uhd gpio.cpp -o gpio
>     >     >>
>     >     >>         but I got a whole mess of compiler errors.
>     >     >>
>     >     >>
>     >     >         And, to follow-up with details:
>     >     >
>     >     >         http://files.ettus.com/manual/page_build_guide.html
>     >     >
>     >     >         Also:
>     >     >
>     >     >         AN-445 and AN-204 from here:
>     >     >
>     >     >         https://kb.ettus.com/Application_Notes
>     >     >
>     >     >
>     >     >>         On Wed, May 4, 2016 at 11:25 AM, Marcus D. Leech
>     >     >>         <address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>
>     >     <mailto:address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>>> wrote:
>     >     >>
>     >     >>             On 05/04/2016 11:18 AM, Santos Campos wrote:
>     >     >>>             Hello! I am curious if it is possible to use a pin or
>     >     >>>             something on either the B200 or B200 mini to send a
>     >     >>>             control signal.
>     >     >>>
>     >     >>>             We were hoping to be able to switch between 2 antennas if
>     >     >>>             the board received some signal. It looks like there could
>     >     >>>             be some available pins, but we were unsure if they would
>     >     >>>             be able to fulfill our purpose. If not, any ideas around
>     >     >>>             this issue would be welcome!
>     >     >>>
>     >     >>>             Any help would be much appreciated!
>     >     >>>
>     >     >>>
>     >     >>>             _______________________________________________
>     >     >>>             Discuss-gnuradio mailing list
>     >     >>>             address@hidden <mailto:address@hidden>
>     >     <mailto:address@hidden
>     <mailto:address@hidden>> <mailto:address@hidden
>     <mailto:address@hidden>
>     >     <mailto:address@hidden <mailto:address@hidden>>>
>     >     >>>             https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >     >>             The API for the B2xx GPIO is the same as for X3xx.
>     >     >>
>     >     >>             There's example code:
>     >     >>
>     >     >>             .../uhd/examples/gpio.cpp
>     >     >>
>     >     >>
>     >     >>
>     >     >>             _______________________________________________
>     >     >>             Discuss-gnuradio mailing list
>     >     >>             address@hidden <mailto:address@hidden>
>     >     <mailto:address@hidden
>     <mailto:address@hidden>> <mailto:address@hidden
>     <mailto:address@hidden>
>     >     <mailto:address@hidden
>     <mailto:address@hidden>>>
>     >     >>
>      https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >     >>
>     >     >>
>     >     >
>     >     >
>     >     >
>     >     >
>     >     >
>     >     > _______________________________________________
>     >     > Discuss-gnuradio mailing list
>     >     > address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>
>     >     > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >     >
>     >
>     >
>     >     _______________________________________________
>     >     Discuss-gnuradio mailing list
>     >     address@hidden <mailto:address@hidden>
>     <mailto:address@hidden <mailto:address@hidden>>
>     >     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>     >
>     >
>
>
>     _______________________________________________
>     Discuss-gnuradio mailing list
>     address@hidden <mailto:address@hidden>
>     https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
>
>


_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


reply via email to

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