Hello,
I found a bug in the GR runtime. Here's a simple script to
demonstrate it.
#################################################
from gnuradio import gr, blocks
import pmt
import time
class child(gr.hier_block2):
def __init__(self):
super(child, self).__init__('child',
gr.io_signature(0,0,
gr.sizeof_char),
gr.io_signature(0,0,
gr.sizeof_char))
src = ""
1000)
snk = blocks.message_debug()
self.msg_connect(src, 'strobe', snk, 'print')
class parent(gr.top_block):
def __init__(self):
super(parent, self).__init__()
self.blank = child()
self.connect(self.blank)
def reconfig(self):
self.lock()
self.disconnect(self.blank)
self.dut = child()
self.connect(self.dut)
self.unlock()
print "Using GR version", gr.version()
dut = parent()
dut.start()
print "Created parent"
time.sleep(5)
print "About to reconfig"
dut.reconfig()
print "Reconfigured"
time.sleep(5)
print "Exiting"
dut.stop()
dut.wait()
#########################################
Here's the output that shows that messages stop after
reconfiguration. I was relying on both features for my
architecture... Any suggestions/hot fix?
Using GR version
v3.7.10-44-g124c641c
Created parent
******* MESSAGE DEBUG PRINT ********
ABCD
************************************
******* MESSAGE DEBUG PRINT ********
ABCD
************************************
******* MESSAGE DEBUG PRINT ********
ABCD
************************************
******* MESSAGE DEBUG PRINT ********
ABCD
************************************
******* MESSAGE DEBUG PRINT ********
ABCD
************************************
About to reconfig
Reconfigured
Exiting
________________________
Eugene
Grayver, Ph.D.
Aerospace Corp., Sr. Eng. Spec.
Tel: 310.336.1274
________________________