discuss-gnuradio
[Top][All Lists]
Advanced

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

Re: [Discuss-gnuradio] Issue with the Message API in Python


From: Sebastian Sahlin
Subject: Re: [Discuss-gnuradio] Issue with the Message API in Python
Date: Fri, 24 May 2019 15:53:43 +0200

Okay, this appears to work:

def start(self):
threading.Thread(target=self.send_message('Hello World')).start()
return true

However I am unsure why the return value is necessary (figured it out through an error message). Is there somewhere in the documentation you can point me to find more info about this?

Regards


Den fre 24 maj 2019 kl 14:45 skrev Sebastian Sahlin <address@hidden>:
Hi Marcus,

Aha! I saw hints of this in the documentation but couldn't fully connect the dots.

Would this be the start() function of top_block, or the block in question? How would the syntax look like then?

Regards

Den tors 23 maj 2019 kl 18:32 skrev Müller, Marcus (CEL) <address@hidden>:
Hi Sebastian,

classic one!

You send the messages in the block's constructor in an endless loop.

So, that constructor never finishes.

Thus, the block never can get message-connected. Thus, your messages
disappear.

You can't publish message in a constructor. Spawn off a thread in the
`start()` method to do that.

Best regards,
Marcus

On Thu, 2019-05-23 at 17:42 +0200, Sebastian Sahlin wrote:
> Hi,
>
> For learning purposes I'm trying to replicate the functionality of the Message Strobe block in Python, however I'm stumped by what should be a very basic function. I'm simply attempting to publish a message every x seconds:
>
> def __init__(self, period):
>         gr.basic_block.__init__(self,
>             name="msg_strobe",
>             in_sig=None,
>             out_sig=None)
>
>         self.message_port_register_out(pmt.intern('msg_out'))
>
>         while(True):
>             self.send_message('Hello World')
>             time.sleep(period)
>
>     def send_message(self, string):
>         self.message_port_pub(pmt.intern('msg_out'), pmt.intern(string))
>
> However there is no message published to the Message Debug block. 
>
> _______________________________________________
> 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]