I have successfully retrieved Channel Impulse Response (CIR) data from the DW1000 (ACC_MEM), as shown in the figure below. However, I noticed that the CIR samples lack a time reference. For research purposes, I need to obtain the CIR as a function of time.
I read that synchronization between the tag and the anchor is required to obtain CIR as a function of time. Could you guide me on how to achieve this synchronization?
I have also successfully read the timing information (Receive Time Stamp, Transmit Time Stamp) on both the tag and the anchor. Is there any way to use this information to map the CIR data as a function of time?
The time units of the CIR outputs are given in the user manual. From memory the data is at 499.6 MHz sample rate but don’t trust me on this, double check the user manual.
You can read from some registers the leading edge detection time. This will give you the calculated leading edge time as a fixed point number that is accurate to 1 /128th of a sample count (again from memory, check the accuracy in the manual).
If you compare the reported Rx time with the leading edge time in the CIR buffer then that should allow you to map the CIR data to the DW internal system clock of the receive device.
Aligning the CIR data to the transmitting devices clock is harder since that will depend on the range and you measure the range based on the CIR data. It becomes a somewhat circular system. The peak in the CIR is aligned with the transmit clock based on the time of the peak in the CIR data…