On Thu, May 25, 2017 at 10:34 AM Deepak Gautam <dpaak...@gmail.com> wrote:
> Dear Gilad, paul,luca > > > Thank you for the kind response. Yes, i need the high accuracy and i think > i should go with "issue_stream_cmd" method. Before i start working in this > method, my concern is whether i can write the different burst in separate > file. My main conern is written file size. Because i have to record data > for few minutes With my sampling rate of 25msps. I got problem of overflow > when i write in normal hard disk. So i am writing data in RAM disk by which > i dont get overflow. Due to size limitation of the Ram disk, i will not be > able to write all data in one file. If i write in different file, i can > move previous files back to hard disk and proceed. If there is a way of > writing in a file for 3/4 minutes with 25msps without overflow , i dont > need burst reception also. I appreciate your opinion > > Best regards, > Deepak > > > > On Sun, May 21, 2017 at 6:24 PM Paul I. <paulneli...@gmail.com> wrote: > >> You need to use USRP "issue_stream_cmd" method (mode: >> STREAM_MODE_NUM_SAMPS_AND_DONE). It's allow to receive burst of data by >> USRP timer. >> If you work in GRC: >> 1) Disable streaming autostart for "UHD source" >> 2) Create your own block which will periodically issue stream commands >> (yes, you need to pass USRP pointer to it) >> a) For stream command set "num_samples" = sample_rate * 1 sec >> b) Read the USRP timer value, add some time offset to it and use this >> value as timestamp for the first stream command >> c) Increment timestamp after every stream command >> ... >> 3) Profit! >> >> 2017-05-20 10:09 GMT+03:00 Gilad Beeri (ApolloShield) < >> gi...@apolloshield.com>: >> >>> If you need accuracy, I think the asynchronous nature of your method >>> might problematic (will appreciate input from GR devs). >>> Maybe try a different approach - write the samples to a memory buffer, >>> then read from the buffer the exact # of samples you want to write to a >>> file. >>> >>> On Fri, May 19, 2017 at 5:02 PM Deepak Gautam <dpaak...@gmail.com> >>> wrote: >>> >>>> Dear luca, >>>> >>>> I had already tried with controlling flow graph dynamically using >>>> start(), stop(), lock(), unlock() function. Here i have the part of code i >>>> had used. >>>> >>>> tb=top_block_cls() >>>> count=1 >>>> tb.start() >>>> while (count<5): >>>> time.sleep(1.0) #data is recorded in the file >>>> tb.lock() >>>> tb.disconnect((tb.uhd_usrp_source_0,0),(tb.blocks_file_sink_0, 0)) >>>> #disconnect source and block >>>> tb.blocks_file_sink_0= blocks.file_sink(gr.sizeof_gr_complex*1, >>>> filename,False) # create new file sink to write >>>> tb.connect((tb.uhd_usrp_source_0,0),(tb.blocks_file_sink_0, 0)) >>>> #connect source with new file >>>> count=count+1 >>>> time.sleep(2.0) #wait >>>> tb.unlock() >>>> tb.stop() >>>> >>>> >>>> This program should write the data for 1 second in the file, wait for 2 >>>> second and again write for 1 second to another file and so on for 5 4 >>>> times. I expect the total data written in the file to be same. But total >>>> number of samples recorded in the files are different. for my sampling rate >>>> of 25MSps, it should record 25MS per file, but it is around 22Mega sample >>>> with different number of data in different file. So it is difficult to >>>> reproduce the accurate signal from received data . My application requires >>>> very good phase coherence. So i am wondering whether there is something to >>>> do to solve in this method or i have to think of another idea. >>>> >>>> >>>> Best Regards, >>>> Deepak >>>> >>>> >>>> >>>> On Mon, May 15, 2017 at 9:02 PM Moritz Luca Schmid < >>>> luca.moritz.sch...@gmail.com> wrote: >>>> >>>>> Hey Deepak, >>>>> >>>>> my first idea is to reconfigure the flowgraph. You could connect and >>>>> disconnect your source for the time, you want to write data in your file >>>>> sink and the time you don't want to. >>>>> >>>>> You can find infos about the flowgraphs operations here >>>>> <https://gnuradio.org/doc/doxygen/page_operating_fg.html>. >>>>> >>>>> >>>>> Best >>>>> >>>>> Luca >>>>> >>>>> >>>>> >>>>> On 15.05.2017 13:53, Deepak Gautam wrote: >>>>> >>>>> Currently i am working in the USRP using GNU Radio for my masters >>>>> work. In my transmitter side, i send data continuously from file source >>>>> followed by UHD Sink at the rate of 25 MSPS. In receiver side, I want to >>>>> write the data in every two/three seconds after receiving from receiver >>>>> USRP. Meaning, write data for 1 sec (25M samples), then dont write for >>>>> next >>>>> 2 second and again write for 1 sec and so on. Is there any suggestion for >>>>> this purpose. I look forward for the resposne >>>>> >>>>> >>>>> Best Regards, >>>>> Deepak >>>>> >>>>> >>>>> _______________________________________________ >>>>> Discuss-gnuradio mailing >>>>> listDiscuss-gnuradio@gnu.orghttps://lists.gnu.org/mailman/listinfo/discuss-gnuradio >>>>> >>>>> >>>>> _______________________________________________ >>>> 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 >>> >>> >>
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio