On Aug 3, 2010, at 8:42 PM, Ashish Bansal wrote:
I am using USRP2. The newer version of GNU 3.3 contains timestamp code.
What do you exactly mean by timestamp. Does it mean it will output the 64 bit timer value with each sample. What is the command on the host side to see these timestamps.
How can I relate timestamp with ADC Samples.
I do see timestamp being used in the following files in USRP2 Firmware “app_common_v2.c”, “txrx.c” etc. Are all the files loaded in the firmware by default or I have to change something.
I’m currently playing with timestamps. I’m using raw ethernet, rather
than UHD in case that’s what you mean by “newer”. The raw frames carry
only a 32-bit timer.
You can find my current code at https://public.me.com/mepard.
usrp2_streamper.cpp is a modification of
gnuradio/usrp2/host/apps/rx_streaming_samples.cc. It’ll scan a range of
frequencies, capturing sample data and saving metadata for each
frequency. The code relating to your question is in the BufferedHandler
I’ve also posted MATLAB code that reads the saved samples and metadata.
Currently, LoadGnuRadioIQ.m counts overflows, yielding a 64-bit timer.
I’m planning to move that code to the C++.
One thing that puzzled me is the work-around that seems to be required
to reconcile the timestamps and sample counts between the first and
second frames. I’ve not yet looked deeper into the USRP2 code as the
work-around seems to be effective.
Hope you find this useful. Naturally, any and all feedback, particularly
bug reports, is welcome.