OOT Python Block

Hi Tom and Richard,

I am sorry, but I cannot reproduce the error, which I described before.
I created a new module with gr_modtool and added a sync python block
and all worked fine.
The problem might have vanished with my last git pull.

My lines in the .xml now look like the original ones again:

import mymodule
mymodule.myblock(args)

Tom: init.py is unchanged.

Richard: Yes, double the block_name in was what I meant:
mymodule.myblock.myblock(args)

Do you have a recent git version of GR at hands?

Just a silly question: Did you export the PYTHONPATH variable?

Some more guesses - for comparison
I also export PATH (dir/bin/), LD_LIBRARY_PATH(dir/lib/),
PKG_CONFIG_PATH (dir/lib/pkgconfig)

= /home/my_login/usr on my machine This should not be of interest, but maybe it is still. I do this in ~/.profile (which gets loaded once you log in again, in Kubuntu 14.10)

I have no variables defined in the config folders ~/.gnuradio or
~/.grc_gnuradio.

Mit freundlichen Grüßen / Best regards

Stephan Ludwig

Robert Bosch GmbH
Corporate Sector Research & Advance Engineering, Communication
Technology (CR/AEH4)
Renningen
70465 Stuttgart
GERMANY
www.bosch.comhttp://www.bosch.com

Tel. +49(711)811-8809
Fax +49(711)811-1052
Mobile +49(172)5630639
[email protected]mailto:[email protected]

Registered Office: Stuttgart, Registration Court: Amtsgericht Stuttgart,
HRB 14000;
Chairman of the Supervisory Board: Franz Fehrenbach; Managing Directors:
Dr. Volkmar Denner,
Dr. Stefan Asenkerschbaumer, Dr. Rolf Bulander, Dr. Stefan Hartung, Dr.
Dirk Hoheisel, Christoph Kübel,
Uwe Raschke, Wolf-Henning Scheider, Dr. Werner Struth, Peter Tyroller
Von: [email protected]mailto:[email protected]
[mailto:[email protected]] Im Auftrag von Tom R.
Gesendet: Freitag, 30. Januar 2015 11:38
An: Ludwig Stephan (CR/AEH4); GNURadio D.ion List
Betreff: Re: [Discuss-gnuradio] OOT Python Block

On Fri, Jan 30, 2015 at 5:31 AM, Ludwig Stephan (CR/AEH4)
<[email protected]mailto:[email protected]>
wrote:
Hi Tom,

as far as I understood the original post, we talk about pure python
blocks, hence no impl.cc file. My experience is that gr_modtool makexml
does not work for these blocks. I will try to reproduce the effect and
will post this – but not before mid of next week.

Regards
Stephan

Ahh! Thanks for pointing that out. I had missed the fact that it was a
Python block (and I rarely work with them myself).

Ok, I think the fix for that is to add a “from x import *” into the
init.py file for the module where x is your Python block. We should
test this and add it to gr_modtool to avoid this confusion in the
future.

Tom

Von: [email protected]mailto:[email protected]
[mailto:[email protected]mailto:[email protected]] Im Auftrag
von Tom R.
Gesendet: Freitag, 30. Januar 2015 09:45
An: Ludwig Stephan (CR/AEH4)
Cc: Richard B.;
[email protected]mailto:[email protected]
Betreff: Re: [Discuss-gnuradio] OOT Python Block

On Fri, Jan 30, 2015 at 2:03 AM, Ludwig Stephan (CR/AEH4)
<[email protected]mailto:[email protected]>
wrote:
Hi Richard,

I noticed the same problem with some blocks in my own OOT module. I do
not know why, but if you change the lines in the GRC file to (if not
already done)
import my_module.my_block_name_here
my_module.my_block_name_here.my_block_name_here(…)

(note the double block_name in )

I do not remember right, but it might also be sufficient to change only
either one of the lines (you have to try on your own).
You can try by calling the from python. E.g. IPython has tab completion
and you can see by import my_module. (and so on for the make
line), what block is how accessible.

Regards Stephan

That can’t be right. You really shouldn’t have to do that to get the
block to work.

We periodically get this bug from our users, no one has ever explained
how to reproduce it, and I’ve never seen this failure mode myself. As
long as you used gr_modtool and made the necessary changes to the files
– which really just means fixing the <+…+> in the impl.cc file –
then it should just “work”.

Tom

Gesendet: Donnerstag, 29. Januar 2015 23:22
An: [email protected]mailto:[email protected]
Betreff: [Discuss-gnuradio] OOT Python Block

I’ve created a python block that I’ve tested via command line. It passes
all qa tests. I’ve also created an xml file for it and installed it. I
followed every step the OOT Python Tutorial explains.

I see the category and block in gnuradio-companion. When I use my block
in a flowgraph, upon to executing the graph I get

AttirbuteError: ‘module’ object has no attribute ‘<my_module_name_here>’

I’ve added the block build location to the PYTHONPATH variable and
confirmed that I can import my module at a python command line.

What do I not have set correctly and what is this error telling me?

Thanks,
Rich