discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Message Strobe Block Stopping Unexpectedly


From: Marcus Müller
Subject: Re: [Discuss-gnuradio] Message Strobe Block Stopping Unexpectedly
Date: Sun, 19 Apr 2015 11:05:02 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0

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 encapsulation.
So that is correct behaviour, in principle. However, message strobe doesn't seem to be able to get up again:


    bool
    message_strobe_impl::stop()
    {  
      // Shut down the thread
      d_finished = true;
      d_thread->interrupt();
      d_thread->join();

      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:
https://github.com/marcusmueller/gnuradio/tree/message_strobe_fix_restartable

Best regards,
Marcus


On 04/18/2015 11:11 PM, Travis Collins wrote:
I'm having a problem with the Message Strobe block.  I have a simple flowgraph, which can be found here: http://pastebin.com/WCa5npiP

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 selector are wx chooser controlled.

I am able to change the "message" fine, but when I change the output index 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 continue.

Im using GNU-Radio: 3.7.6.1 (built from "build-gnuradio")


-Travis


_______________________________________________
Discuss-gnuradio mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/discuss-gnuradio


reply via email to

[Prev in Thread] Current Thread [Next in Thread]