Hello Rui, why do you take the detour through a file? That looks unnecessary.
the USRP sink understands transmission times you specify using tags [1], so this will be the easiest way to deal with this. You just need to write a really short block (in C++ or python, whatever you prefer) which takes the rx_time tag that the USRP source added to the sample stream and generates a tag with the desired point in time [2]. There are some examples of the rx_time and tx_time tags usage in gr-uhd, so just search for "tx_time" or "rx_time" in gnuradio/gr-uhd/examples/ . Greetings, Marcus [1] http://gnuradio.org/doc/doxygen/page_stream_tags.html [2] http://gnuradio.org/doc/doxygen/page_stream_tags.html On 12/16/2014 05:21 PM, Rui Zou wrote: > Hello, > I would like to implement the process as follows at the Rx side: > Record the time when the first sample arrived, and then wait for a > certain interval and then send ack back to Tx. Meanwhile, finish the > cfo calculating and compensating. > Here is my whole flow graph design. (Each means a block) > > pkt_dtc-> cfo_calc -> file_sink > cfo_calc -> cfo_cpst > file_source -> cfo_cpst -> > usrp_sink > > where pkt_dtc, grab_time_tag and cfo_calc was done myself with C++. > However, My question are: > 1. Is it correct of my whole desgin (I want to implement them in one > top block) or are there any easier solutions ? > 2. After the block grab_time_tag, how should I pass the time > information (directly got from the method get_tags_in_range) into the > usrp_sink as a parameter so as to send ack at the intended time? > Should I write in Python(but they are not the same level) or C++(but I > can't rewrite a usrp_sink) ? > > Any doubts or suggestions are highly appreciated ! > > > > > _______________________________________________ > 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