Thanks Activecat you actually answered quite well to my question. I thought it might be better to send 0s, i'm glad you confirmed that. And thanks for the output algorithm.
Could you tell me more about forecast? Most of the time I need 8 input samples to produce one byte output so I set the forecast like so: ninput_items_required[0] = noutput_items*8; It seems pretty straight forward. Is this correct? On Mon, May 19, 2014 at 9:32 PM, Activecat <active...@gmail.com> wrote: > On Tue, May 20, 2014 at 2:17 AM, Francois Gervais < > francoisgerv...@gmail.com> wrote: > >> Hi, >> >> I'm making a block which takes bit from a bit slicer and output packets >> as input comes in. My block will output bytes so it can emulate a usb >> adapter that receives the RF signal and output a packet stream through an >> FTDI. That way I can use the stack that comes with the adapter without >> owning one. I'll use a FIFO file so other than not issuing the serail >> configuration the stack should be used pretty much as is. >> >> However, I'm not sure what I should do about the the number of outputs. >> Let say I'm waiting for the preamble, I won't output anything. When I get >> the preamble and the sync I'll send a sync byte of my own. From here every >> 8 inputs I'll output a byte. So basically my block will output 0 or 1 >> output. >> >> Can someone help me a little with the use of forecast and noutput_items >> in my case? Also do I need to use the consume_each function? >> > > If your block emulates a USB adapter, defines it as a source block, then > you don't need to touch forecast(). > If your block takes input from another block, then it is not source block. > I don't really understand your requirements. > > The number of outputs (referred as noutput_items) is determined by the > scheduler, not yourself. > Says, when you have X bytes to send out, > if X > noutput_items: Send out noutput_items number of output, and > return noutput_items > if X < noutput_items: Send out X number of output, and return X > if X == noutput_items: (either one of above) > > When you send out a sync byte, add that to the output count. > > When you are waiting for the preamble, you may want to send out a series > of zeros, rather than just producing no output. > Producing no output may cause the downstream blocks to become > unresponsive. > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio > >
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio