Padding burtsy blocks

I have a flowgraph that I’m trying to develop in simulation first before
deploying to some sort of hardware like a USRP. The flowgraph begins
with
a ZMQ Pull Source and then I have all my signal processing blocks
afterwards (eventually there would be a UHD Sink). The ZMQ block only
produces samples when it receives a message so when it doesn’t receive
samples the flowgraph doesn’t run.

If the work function for any block is only called when there are samples
in
the input buffer I don’t see how adding any blocks after my ZMQ Pull
Source
could help. So that leaves making my own ZMQ Pull Source that emits
zeros
when it has no other message. Do I have any other options? If I add a
this feature would be useful to merge back into GR or is this not really
an
intended use case for GR?

Thanks,
Devin

Hi Devin,

the “padding with zeros unless samples occur within a specific time” job
can be done with gr-eventstream [1] [2] , but:

If you’re going to use USRP sink anyway, what about using tagged stream
blocks[3]?
You could replace your “Pull Source” with a “Pull Message Source” →
“PDU to tagged stream”->signal processing->“USRP Sink” (with “packet
length tag name” set accordingly)

Best regards,
Marcus

[1] https://github.com/osh/gr-eventstream
[2] http://oshearesearch.com/tag/gr-eventstream/
[3] https://gnuradio.org/doc/doxygen/page_tagged_stream_blocks.html