1

I wonder if there is method to see internal structure of standard blocks of GNU Radio Library as if this blocks were OOT module built with more fundamental blocks of GNU Radio. I tried to right click -> More -> Open Hier, but GR did not respond to my clicks.

In case I have not made myself clear: If I recall correctly(I have seen it in a paper, don`t remember which, that is why I think there is a way to see this), GFSK Demod blocks internal structure is 1) Input -> 2)MM clock recovery -> 3) Quadrature demod -> 4) Binary slicer(?) -> 5)Output. Now, where can I find this type of graphs (.grc maybe) for other standard blocks? I need to see inside flow of data for debugging processes.

Galib
  • 33
  • 1
  • 7

1 Answers1

0

Most of the blocks that come with GNU Radio are not hierarchical blocks, so there's no "internal structure" as you expect it: it's just code. (you can find that code in GNU Radio's code base: all of this is Free and Open Source ;) )

For these that actually are hierarchical blocks: None of them are generated, if I remember correctly, from a GRC file, so there's no GRC file to display when clicking on "open hier".

If you want to look at how blocks work internally, the method I usually use is:

  1. go to the directory where GNU Radio's block definitions are installed (typically, if you're installing GNU Radio through your Linux package manager, that'd be /usr/share/gnuradio/blocks)
  2. Search for the block definition file you care about
  3. look for the make definition inside: this gives you the python class you're looking for
  4. then, look for the source code of that: If it's actually a python block, it'd be installed alongside with the rest of GNU Radio's python code (/usr/lib/python3.7/site-packages/gnuradio/, for example), if it's C++, you'll have to read GNU Radio's source code.

In your case, the file should be called digital/gfsk.py.

Marcus Müller
  • 34,677
  • 4
  • 53
  • 94