Message Strobe Block Stopping Unexpectedly

I’m having a problem with the Message Strobe block. I have a simple
flowgraph, which can be found here:

There are two independent dataflows in the flowgraph:
Flow 1:
noise source -> throttle -> selector(w /wx chooser) -> null sink

 -> null sink

Flow 2:
message strobe(w /wx chooser) -> message debug

Both the “message” in the message strobe and output index of the
are wx chooser controlled.

I am able to change the “message” fine, but when I change the output
of the selector of a running flow, the stop method of the message strobe
gets called.

Why is this happening and can I prevent it? I want the messages to

Im using GNU-Radio: (built from “build-gnuradio”)


Hi Travis,

stop() is called on all gr::blocks in your flow graph when you change
(ok, even when you just set it to the old index) selector’s
configuration, because it reconfigures the flow graph internally,
meaning that it calls lock() and unlock() on a hier block, which stop()s
the parent hier_block, or top_block if it’s already the highest level of
So that is correct behaviour, in principle. However, message strobe
doesn’t seem to be able to get up again:

  // Shut down the thread
  d_finished = true;

  return block::stop();

since start() doesn’t re-set d_finished, we now know what needs to be
done to correct this:
move the setting of d_finished from the constructor to start().

I have a fix for this; for me, it works with your flow graph. If you
want to try:

Best regards,

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs