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”
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.
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!