On Thu, Jul 19, 2012 at 4:54 AM, Pol Henarejos <pol.henare...@cttc.es> wrote: > Dear list, > > I have a simple flowgraph with two branches, with different delays that > are joined at the end. Imagine a topblock with A,B,C,D blocks. A is > connected to B and C. B and C are connected to D. A and D are sink and > source respectively. B and C produce packets (header and payload) from > the input coming from A. D packets header and payload. The latency is > different since B and C produce different sizes. A produces one sample > per packet (it is a kind of signaling). All blocks are gr_block. > > So, A produces a sample. It is delivered to B and C. Both produce header > and payload using the sample produced by A. Finally, D joins together > both inputs. > > I studied the delay between both branches and, since B is faster than C, > the delay is increasing. After few minutes the flowgraph hangs and the > difference of delaying is around 8000 packets. The flowgraph is in fact > running. No stop is called but there are not any sample flowing. > > I use gnuradio master branch. > > Could you give me some hint for solving it? > > Thank you. > > -- > > Pol Henarejos
Pol, It's difficult to diagnose these problems. Are all blocks (A, B, C, and D) that you discuss your own blocks or are some of them in GNU Radio already? If you've made your own blocks to do this, have to done anything with the forecast method that might be requiring samples from both inputs? With B and C producing samples at different rates, you can't be guaranteed that they will have enough samples to enter the work function. You have to make sure that your block that takes in both streams knows what to do if it's given fewer samples than required (save state for reentry, basically). Tom _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio