Hi,
I'm currently working on the IWR6843 Chip.
For every radar configuration, we are getting an ACK/NACK from the radar chip (IWR6843).
Is it possible to remove the ACK/NACK from the radar chip?
If yes, Can you route me to the file in mmWaveSDK
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi,
I'm currently working on the IWR6843 Chip.
For every radar configuration, we are getting an ACK/NACK from the radar chip (IWR6843).
Is it possible to remove the ACK/NACK from the radar chip?
If yes, Can you route me to the file in mmWaveSDK
Hi,
Since the firmware loaded on the front end is not configurable, I do not believe this is possible. You may be able to ignore the ack/nack by modifying the code under the mmwavelink. This can be found at <mmwave SDK Install>\packages\ti\control\mmwavelink
Best Regards,
Alec
Hi Alec,
As per your suggestion, I went through the mmwavelink and modified the rl_txMsg.hdr.flags.b2AckFlag flag from 0U (RL_HDR_FLAG_ACK) to 3U( RL_HDR_FLAG_NO_ACK) in rl_driver.c
Then the mmWavelink and demo were built for the xwr68xx, although the ACK continued to appear for every radar command on testing.
Is it accurate that I performed everything correctly, or is there any deviation?
If it's deviated can you help me to recover from it?
Hi,
This sounds correct, could you verify the process you followed to rebuild and include the mmwavelink?
Best Regards,
Alec
Hi,
Below are the steps I followed to build the both mmWavelink and mmw demo
Step 1: Set the built environment.
Step 2: In the below path, executed make clean and make all to build the mmWavelink libraries.
Path : "/home/balaji/ti/mmwave_sdk_03_05_00_04/packages/ti/control/mmwavelink"
Step 3: Checked whether the library files created in the path "/home/balaji/ti/mmwave_sdk_03_05_00_04/packages/ti/control/mmwavelink"
Both libmmwavelink_xwr68xx.ae674 and libmmwavelink_xwr68xx.aer4f are build properly.
Step 4: Built the demo for IWR6843 board in this path "/home/balaji/ti/mmwave_sdk_03_05_00_04/packages/ti/demo/xwr68xx/mmw"
Verified the log message when it is inbuilt. The mmWavelink library is correctly linked and built-in mss.
Could you cross-verify the process I followed?
Hi,
Could you instead try calling the function rlDriverConfigureAckTimeout and pass in a value of 0? I believe this should configure the rl_driver for no acknowledgement, and I wonder if there may be redundant settings which are overwritten the value in your current approach.
Best Regards,
Alec
Hi,
Actually, I tried this as well, but it did not work. I received the ACK for radar commands.
Modification made in rl_driver.c is mentioned below. Could you verify it from your side?
Hi,
Understood, but have you ensured that rlDeviceConfigureAckTimeout is being called by your application? I do not believe that the Out of Box Demo has a call to this function by default, and that it instead relies on the default acknowledgement time.
Best Regards,
Alec
Hi Alec,
Thank you for the suggestion; we tried it, below are our observation
Modified the mss_main.c to call the function rlDeviceConfigureAckTimeout and passed the argument as 0.
Built and linking are proper, we didn't get any errors.
By displaying the logs(timeout) using CLI_Write, we also ensured that the function was invoked. The screenshot is attached for your reference, we used a logic analyzer for viewing the data/logs.
However, we received the ACK for commands while testing it with the radar module
Could you point us in the right direction?
Hi,
My apologies for the delay here. Let's try a different approach. Go to the following file:
<mmwave SDK Install>\packages\ti\control\mmwave\mmwave.h
And modify the value for MMWAVE_ACK_TIMEOUT from 1000 to 0. Once this is done, rebuild the mmwave control layer using the makefiles provided by the SDK. Instructions for this can be found in the SDK user's guide. Once this is done, this should resolve the issue.
I believe that the value you configured with the command previously may be overwritten when the sensorStart occurs, which is leading to it not working as expected. The value pulled during sensorStart traces back to the macro that I provided above, so this should ensure that it is corrected during sensorStart.
Best Regards,
Alec
Hi Alec,
Thanks for the suggestion and we tried it out.
Procedure :
1. Modified the MMWAVE_ACK_TIMEOUT value from 1000U to 0U in mmwave.h
2. Then Build the mmwave control layer and demo for xwr68xx.
However, When I was testing the binary(Firmware), I received "done" as the Acknowledgement for the radar configuration commands.
Could you suggest a few more ideas?
Hi,
Are you referring to the 'Done' reply in the CLI interface? The acknowledgement via CLI is unrelated to the acknowledgement from the BSS to the MSS.
Best Regards,
Alec