On 05/30/2012 06:33 PM, Alex Zhang wrote: > Hi, > > In my applications, after the flow graph is initialized, I need to > dynamically control the receiving of the USRP samples, i.e, at time T1, I > want the USRP to transfer the received samples to PC, while in T2, I do not > allow the PC to receive these samples. > Stop receiving the unusing packets from USRP can save the traffic over > ethernet and decrease the demands of processing resource on host PC. > > the gr_mute block seems only suppress the incoming packets to further > processing, but these unusing samples can still come into the flow graph. > > Also, the tb.run and tb.wait can be executed more than twice as wish, but > it seems to be not so flexible. It would be good if there some commands > called to control the block of uhd.usrp_source to achieve such purpose? > >
I had a post on this recently, wish I could find it in the archives... So, the problem with stopping streaming is that the work function will return zero and the scheduler marks the block as done. So, if you take this changeset here. You should be able to stop and restart a running USRP without problem. http://gnuradio.org/cgit/jblum.git/log/?h=wip_uhd_stopper Use the following methods on the block: usrp->start() usrp->stop() and if you want to be precise about time, call usrp->set_stream_time(...) before calling start() -josh > > _______________________________________________ > 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