Getting raw CIR data from DWM3001CDK

I want to get raw CIR data via UCI.
First, I collected some data with “run_fira_twr.py”, using “–diag-fields” option.
However, It just returns 16 values of CIR, and it’s not sufficient to diagnose NLOS situation.
Therefore, I decided to modify the driver file to make my module get more raw CIR data.

While looking for the place to modify, I found this in “deca_device_api.h”


I just wonder why the “CHUNK_CIR_NB_SAMP” is limited to “16U”
Can I increase this number to get more samples of CIR?

Hello,

Take a look at the uwb-l1-configuration-R12.7.0-288.pdf document from the release. There are 2 config key:
rx_diag_config.cir_n_tapsand rx_diag_config.cir_fp_tap_offset. One allows you to choose how many taps you get and the other, the actual offset relative to the offset.

Be careful if you increase the amount of CIRs, you could get memory issues or throughput issues as there are more data to transfer.

Thank you! There was an answer

Hi, I would really appreciate about more details on how to configurate these two keys: rx_diag_config.cir_n_taps and rx_diag_config.cir_fp_tap_offset in run_fira_twr.py.

And I also noticed that there is an example code about getting CIR in the Drives\API\Src\Examples\ex_02k_simple_rx_cir. But I really don’t have a clue about how to use it. Should I wrap this function into a task in FreeRTOS and modify the code in SDK\Firmware\DW3_QM33_SDK_1.0.2\Project\DW3_QM33_SDK\FreeRTOS\DW3_QM33_SDK-FreeRTOS-Common\main_cli.c, and then try to rebuild the firmware and flash it to the board?

I am really new to embedded system development, and I really appreciate any help!

To configure these keys, please use the UCI version of the build and use the set_cal/get_calexample python scripts.

1 Like