Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread George Edwards
Hi Tim, Thanks for your suggestion! I just tried it and it does not work. The Python OOT def __init__(self, ) method requires that one fills in in_sig = xxx and out_sig = xxx. I tried your suggestion above for variable number of inputs and set: in_sig = [gr.io_signature(1, -1, gr.sizeof_gr_com

Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread Tim Huggins
I do not believe that you want to encapsulate the call with [ ], even so there may be an issue with that command. I am unsure what the issue is but when I make the call: in_sig = gr.io_signature(3,3, gr.sizeof_gr_complex) The error message is: Can't create an instance of your block: object of t

Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread Jeff Long
The examples you can search for in the code base (recommend you do this) show syntax such as def __init__(self, input_rate, sps): gr.hier_block2.__init__(self, "atsc_rx", gr.io_signature(1, 1, gr.sizeof_gr_complex), # Input signature

Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread Jeff Long
The line in_sig = gr.io_signature(3,3, gr.sizeof_gr_complex) just worked for me on both 3.8 and master. Are you using an older version? On Thu, Feb 4, 2021 at 2:48 PM Tim Huggins wrote: > I do not believe that you want to encapsulate the call with [ ], even so > there may be an issue with th

Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread Jeff Long
This does appear to be broken for embedded python blocks. GRC assumes the list style of signature. I'll put in an issue describing this. On Thu, Feb 4, 2021 at 3:15 PM Tim Huggins wrote: > I am using 3.8.2 and was trying to quickly test it in an embedded python > block (the block was displaying

Re: 3.9 Setup for OOT development

2021-02-04 Thread Gavin Jacobs
I made some progress on this and now I have my OOT module/block working on Ubuntu 20.4, GNU Radio 3.9, written in C++, with callbacks and variable # of inputs. There are two key things to report. First is the workflow. None of the tutorials on the wiki (that I found) were complete, but eventual

Re: 3.9 Setup for OOT development

2021-02-04 Thread Ron Economos
If you're converting from GNU Radio 3.7, you can automatically convert your .xml files into .yml files with the command: gr_modtool update --complete Just run it in the old OOT directory and copy over the .yml files to your new OOT. It does a very good (although not always perfect) job of c

Re: How to set variable number of inputs/outputs in Python OOT modules

2021-02-04 Thread George Edwards
Hello Jeff, Thanks! I kept playing with it and got it to work. Regards, George On Thu, Feb 4, 2021 at 1:54 PM Jeff Long wrote: > The examples you can search for in the code base (recommend you do this) > show syntax such as > > def __init__(self, input_rate, sps): > gr.hier_block2.