[Top][All Lists]

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

Re: [Discuss-gnuradio] How to integrate a specific number of vectors ele

From: Eskil Varenius
Subject: Re: [Discuss-gnuradio] How to integrate a specific number of vectors element-wise in gnuradio?
Date: Wed, 9 Oct 2013 08:58:18 +0200

Thanks for the ideas, I could do that and Rgrep seems useful indeed. However, I'm new to coding Gnuradio and would like to use the tools provided as far as possible, i.e. I would very much like to use the gr_modtool to help me with creating the xml files. But, after some investigations it seems the gr_modtool cannot be used in this case since there is no "_impl" file for the moving_average_vff.cc. This raises a few basic questions which I've tried to answer reading e.g. the coding guide at http://gnuradio.org/redmine/projects/gnuradio/wiki/Coding_guide_impl and http://gnuradio.org/redmine/projects/gnuradio/wiki/BlocksCodingGuide#Implementation-Source-File. But these instructions are I feel a bit over my head at the moment since I'm new to the block coding, so instead I have three more basic questions which I hope someone could help me with:

1) What is the relation between cc files in the lib directory with and without the _impl suffix?
2) Does the file moving_average_vff.cc need to be converted into a _impl.cc file before I can use this block with gnuradio companion, or can I go ahead and write an XML file for the current block files?
3) Where should I start reading if I want to learn how to convert the block moving_average_vff to something that can be recognized by the gr_modtool makexml?

I'm sorry if these questions are stupid or the wrong forum, but I'm very grateful for all ideas and pointers to get me on the right track. If there's a better place to ask these things, please let me know.

Best regards,

2013/10/8 Jared Clements <address@hidden>

I've been poking around in other GRC files to find examples.  The ones in specest are a little tough around the edges, but I've found the ones in GNURadio/gr-fft and other sub blocks of GNURadio to be decent examples.  Rgrep has been helpful...


On Oct 8, 2013 1:26 AM, "Eskil Varenius" <address@hidden> wrote:
Hi again,
I uninstalled what I had installed through PyBOMBS and installed Gnuradio 3.7 through the build_gnuradio script. Then I tried Jareds repo for specest with 3.7 (http://www.github.com/dfxx) and it seems to compile just fine, well done! I can also import specest in python without problems.

Now: I would very much like to use the block moving_average_vff in Gnuradio Companion. Unfortunately it seems there are no xml files for that block, hence invisible to the GRC. I got a hint from Martin Braun that I could use the "gr_modtool makexml" command to generate this. Unfortunately it seems that I don't understand how to use it:
gr_specest_jared$ ls
apps  AUTHORS  build  cmake  CMakeLists.txt  COPYING  docs  examples  grc  include  lib  python  README  swig
gr_specest_jared$ gr_modtool makexml moving_average_vff
GNU Radio module name identified: specest
Warning: This is an experimental feature. Don't expect any magic.
Searching for matching files in lib/:
None found.
There is a file called moving_average_vff.cc in the lib directory, so I guess something more is needed here which I don't know about.

I tried looking at the page http://gnuradio.org/redmine/projects/gnuradio/wiki/OutOfTreeModules?version=16#Making-your-blocks-available-in-GRC where there are links to example xml blocks to understand a bit more, but it seems these links are broken. Also the link to the gr_block documentation in the next section (There's more:...) is broken.

I'm grateful for any hints on how to make the block moving_average_vff visible in the GRC.

Best regards,

2013/10/4 Jared Clements <address@hidden>

I updated gr-specest so it would compile with 3.7, see my repo on www.github.com/dfxx if you want to try that route.  The changes were almost all namespace stuff and cmake stuff, i.e. I don't think I broke anything.


On Oct 4, 2013 7:33 AM, "Eskil Varenius" <address@hidden> wrote:
Hi everyone,
After a long break since June I am now back learning about Gnuradio. I asked in June for a way to average vectors elementwise and Martin Braun suggested the moving_average_Vff block in the gr-specest. He also said it would be available PyBOMBS. Now update:

Since I had installed Gnuradio using the build-script I wanted to re-install it using pybombs. I uninstalled the old gnuradio by doing a "sudo make uninstall" in each build directory for the old release. Seems to work. Now I installed gnuradio 3.6 (since gr-specest is still only verified for 3.6, although I'm happy to see people working towards a 3.7 release). I did the install using the instructions on the pybombs quickstart page:

git clone git://github.com/pybombs/pybombs
cd pybombs
git checkout gr-3.6
./pybombs install gnuradio

Gnuradio seemed to install without problems but: I realised I had path-problems since I could not start anything (gnuradio companion, import gnuradio etc. fails). Perhaps this was related to me using a custom target directory (/opt/gnuradio_pybombs). I looked around and found path instructions for custom directory installs at "http://gnuradio.org/redmine/projects/gnuradio/wiki/UbuntuInstall#Installing-in-a-custom-directory", i.e. put the following in my .bashrc:

# GNU Radio installation
export PATH=$PATH:/opt/gnuradio_pybombs/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/gnuradio_pybombs/lib
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/opt/gnuradio_pybombs/lib/pkgconfig
export PYTHONPATH=$PYTHONPATH:/opt/gnuradio_pybombs/lib/python2.6/site-packages

However, that didn't work completely - I still could not find the gnuradio python module. I realised two things: the 2.6 should probably be 2.7 for me, and also the pythonpath should end in dist-packages, not site-packages, since the site-packages folder was empty. After modifying the pythonpath with 2.7 and dist-packages everything runs, I can import gnuradio and also use gnuradio companion. So far so good!

Now for gr-specest. I tried to install it using app store (cool stuff, you guys are amazing!) and also just command line which is equivalent, i.e. I run using "sudo ./pybombs install gr-specest" I get a lot of output, but the perhaps most interesting one before it ends abruptly is:
-- checking for module 'gruel'
--   package 'gruel' not found
-- checking for module 'gnuradio-core'
--   package 'gnuradio-core' not found
CMake Error at CMakeLists.txt:100 (message):
  Gruel required to compile specest

I am lost here. Any ideas? I can give the rest of the output as well, but this is the showstopper as far as I can see. I have tried googling this, but it seems to me that the solution used is to use the build-gnuradio script instead of PyBOMBS. I could do that, but then I would not be able to enjoy installing gr-specest through the app-store ;). Grateful for any advice.


2013/6/24 Martin Braun (CEL) <address@hidden>
On Mon, Jun 24, 2013 at 02:09:51PM +0200, Eskil Varenius wrote:
> The grand plan is as follows:
> 1) Use an USRP to recieve a signal, I know how.
> 2) Divide the stream of samples into vectors, I know how.
> 3) Take the FFT of the vectors one by one, I know how.
> 4) Average the vectors coming from the FFT together element-wise. I don't know
> how.
> 5) Save the averaged vector to a file, I know how.
> What I cannot solve is step 4: I need to take the N vectors (each of size M)
> coming from the FFT-block and sum them together element-wise to produce one
> vector of size M.

The spectral estimation toolbox (gr-specest) has a block to do this
(moving_average_vff). You can get it through PyBOMBS, it is not yet
3.7-compatible, though.



Karlsruhe Institute of Technology (KIT)
Communications Engineering Lab (CEL)

Dipl.-Ing. Martin Braun
Research Associate

Kaiserstraße 12
Building 05.01
76131 Karlsruhe

Phone: +49 721 608-43790
Fax: +49 721 608-46071

KIT -- University of the State of Baden-Württemberg and
National Laboratory of the Helmholtz Association

Discuss-gnuradio mailing list

Discuss-gnuradio mailing list

reply via email to

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