discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Using GNU Radio Framework in my application


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] Using GNU Radio Framework in my application
Date: Sun, 28 Jun 2015 11:19:08 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0

Hi Jalil,

unless you install Qt on it and attach a screen to it, it will be hard to use a Qt application on your E310.
Basically, the E310 is just a linux computer on an embedded device, which means you can do the same as on your fully fledged Linux PC -- the question is if you should: The E310 is an embedded device with a energy-efficient ARM CPU, that is in no way optimal for graphical front ends, so visualizing some data on the E310 might be more stressful to the CPU of the E310 than it is for the CPU of your PC; that together with the fact that the USRP's CPU is much slower might make your application unusable; it really depends.

You say
I already made the GRC diagram, but grc generates python codes.
So, yes, that is how GRC works.
There's multiple options on how you can integrate the resulting flow graph into your application:
* You could re-implement that flow graph in C++ instead of python. The functions are all the same (top_block.connect etc); then you could use the message_sink / _source to get information in and out of GNU Radio via queues.
* You could use different sinks and sources to get your data in and out of your flow graph: For example, you can use the file sink and source with a Unix FIFO instead of a normal file, and write/read that FIFO from within your application. You can use ZeroMQ sinks and sources with "ipc://" URLs, so your Qt Application and your GNU Radio flowgraph would run in different processes, but still be able to communicate.
* You could write a GNU Radio C++ block that wraps your application; that would be about as elegant as the message_sink/_source approach, but I'd ask you to realize that it's very important to make the Qt Application work in the python/GRC-provided QtApplication instance, and pass the data from GNU Radio to your application in a multithreading-safe manner (ie. the block has to be able to run asynchronously to your GUI threads)
* You could run your Qt Application on a PC that already has a screen, and use network sinks and sources (TCP, UDP, or, I consider this to be superior, the ZeroMQ blocks), to transport the things you want to get into your application over network. Notice that it will be very hard to get high rates out of the USRP, but visualizing data at these high rates will probably be even harder to do on the E310.

Best regards,
Marcus

Best regards,
Marcus

On 06/28/2015 01:55 AM, Jalil Modares wrote:
Dear All:

I need to have a RF link between two E310.
My application is written is C++/ using Qt framework.
I already made the GRC diagram, but grc generates python codes.
Is there any source to help me integrate that code to my application.

Thanks,
jmod


_______________________________________________
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]