Hi,
I am a beginner at Gnuradio and I am working on writing some simple
graphs.
I am having a problem w. the block “Message Source”.
I got the block “Message Strobe” connected to “Message Source” (the goal
is
to extract the data bytes and feed them to a “Packet Encoder” block).
The graph builds OK but when run I get:
Using Volk machine: avx_64_mmx_orc
Traceback (most recent call last):
File “/home/joser/Desktop/xx/top_block.py”, line 120, in
tb = top_block()
File “/home/joser/Desktop/xx/top_block.py”, line 72, in init
self.blocks_message_source_0 =
blocks.message_source(gr.sizeof_char*1,
blocks_message_source_0_msgq_in)
NameError: global name ‘blocks_message_source_0_msgq_in’ is not defined
Done
Any idea what the problem could be?
I checked: http://gnuradio.org/doc/doxygen/page_msg_passing.html and at
the
bottom is says to look at the examples in gr-blocks/examples/msg_passing
but I get missing link errors when I load these files in my setup.
My setup is gnuradio 3.7.2.1 running in Ubuntu 12.04.4 LTS.
thanks for any help,
Jose Rodriguez
[email protected]
On Tue, Jan 28, 2014 at 11:10 AM, Jose Rodriguez
[email protected] wrote:
Any idea what the problem could be?
It’s certainly not obvious from that error message, but what’s going
on is that you are using the two different message systems in GNU
Radio. The message_source is designed to work with a special msg_queue
concept while the message strobe block is part of the newer
asynchronous message passing architecture. Notice how they are
different colors and so don’t belong together.
We should add some language to the message passing page in the manual
to better explain this distinction.
I checked: http://gnuradio.org/doc/doxygen/page_msg_passing.html and at the
bottom is says to look at the examples in gr-blocks/examples/msg_passing but
I get missing link errors when I load these files in my setup.
My setup is gnuradio 3.7.2.1 running in Ubuntu 12.04.4 LTS.
thanks for any help,
Jose Rodriguez
[email protected]
What exactly do you mean by link errors? Are you talking about missing
blocks in the GRC graph or when you run it, you are getting linking
errors in the library? Neither of which should be happening on that
release.
Tom
On Tue, Jan 28, 2014 at 12:05 PM, Tom R. [email protected] wrote:
is
blocks.message_source(gr.sizeof_char*1,
concept while the message strobe block is part of the newer
asynchronous message passing architecture. Notice how they are
different colors and so don’t belong together.
OK, yes they are different colors (light grey vs. dark grey), my
mistake.
Quick question, what block can/should be used to extract the data in the
message generated by Message Strobe?
We should add some language to the message passing page in the manual
thanks for any help,
By “missing link errors” I meant that when the grc file is loaded, some
blocks are not connected. For example, when I load
gr-blocks/examples/msg_passing/strobe.grc in the screen there are two
Message Strobe blocks whose output are not connected. Also I get the
following output:
Loading:
“/home/joser/gnuradio/gnuradio/gr-blocks/examples/msg_passing/strobe.grc”
Error: Connection between blocks_message_strobe_0(0) and
blocks_message_debug_0(0) could not be made.
source key “0” not in source block keys
Error: Connection between blocks_message_strobe_0_0(0) and
blocks_pdu_to_tagged_stream_0(0) could not be made.
source key “0” not in source block keys
Error: Connection between blocks_tagged_stream_to_pdu_0(0) and
blocks_message_debug_0(2) could not be made.
source key “0” not in source block keys
Done
It could be my setup (I have reloaded Gnuradio several times, I have
found
that there are many example grc files out there which is great, but
often
they are based on 3.6. I tried to have both releases 3.6 and 3.7
installed
with no success). Anyway, thanks for the quick response.
Jose
[email protected]
On Tue, Jan 28, 2014 at 12:34 PM, Jose Rodriguez
[email protected] wrote:
I am having a problem w. the block “Message Source”.
tb = top_block()
It’s certainly not obvious from that error message, but what’s going
on is that you are using the two different message systems in GNU
Radio. The message_source is designed to work with a special msg_queue
concept while the message strobe block is part of the newer
asynchronous message passing architecture. Notice how they are
different colors and so don’t belong together.
OK, yes they are different colors (light grey vs. dark grey), my mistake.
Quick question, what block can/should be used to extract the data in the
message generated by Message Strobe?
Take a look at the PDU to tagged stream block. The message passing
page in the manual gives brief coverage of this block and PDUs in
general, but it’s rather sparsely documented.
Tom
Error: Connection between blocks_message_strobe_0(0) and
It could be my setup (I have reloaded Gnuradio several times, I have found
that there are many example grc files out there which is great, but often
they are based on 3.6. I tried to have both releases 3.6 and 3.7 installed
with no success). Anyway, thanks for the quick response.
Jose
[email protected]
Erp, nope, that’s our fault. I looked back to make sure that example
was updated with 3.7, but we introduced another bug due to the
handling of message connections GRC, which ended up breaking these
examples. This is fixed, but not in a release, yet (3.7.2.2 will be
out soon and include the fix for this).
In the meantime, it’s not that difficult to read through that list of
errors and recreate the connections. Or download the example from our
maint branch:
http://gnuradio.org/cgit/cgit.cgi/gnuradio/tree/gr-blocks/examples/msg_passing/strobe.grc?h=maint
Hope that helps,
Tom