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.

IWR6843AOPEVM: UART data output Total Packet Length

Part Number: IWR6843AOPEVM
Other Parts Discussed in Thread: IWR6843AOP

Hello,

I am working with an IWR6843AOPEVM and for my application I want to configure and read the sensor via UART port. I using mmwave SDK 3.5. and the OOB demo for my device.

I am using this url Understanding the Out of Box Demo Data Output to understand the data output (see *Notes for some hint) and I also had a look at the topic 'Output information sent to host' of the '/mmwave_sdk_03_05_00_04/packages/ti/demo/xwr64xx/mmw/docs/doxygen/html/index.html'.

For my application I want to use the 'Detected Points', 'Side Info for Detected Points' and the 'Rangeprofile (TLV type 1, 7 and 2) to create own plots in my Python application. For this CLI command 'guiMonitor' is set to:

guiMonitor -1 1 1 0 0 0 0

To read and parse the incoming data from the sensor I am using the parser_mmw_demo.py of the \ti\demo\parser_scripts\ directory. In the picture below you can see a screenshot of a print of my application.

My question is: why do not the values of the individual TLV types match with the totalPacketNumBytes?

In the shown case you can see the TLV types and their length: 192 bytes + 48 bytes + 256 bytes = 496 bytes -> adding the 40 bytes of the header leads to 536 bytes.

With respect to the fact that at the end of the packet is padded to reach a total packet lengthm that is always multiple of 32 bytes, the 'Total Packet Length' (totalPacketNumBytes) in my case should be 544 and not 576.

 

Thank you very much and I am looking forward to your answer.

Best Regards

Justin

*Notes: In the document you say the length of the frame header is 44 Bytes, but if you sum up the length of the individual parts of the frame header it is 40 bytes.

  • Hello,

    I believe what is missing here is that you are not accounting for the 8 bytes per TLV that are being sent over as well that give the type and length of each TLV. So the calculation from my end would be (192+8) + (48+8) + (256+8) = 520 which when rounded up to the next 32 byte multiple would be 576. Please refer to the following code that runs on the radar device to see how the data is sent over using UART and use that as baseline as what is being sent over. With regards to the header length I agree that it should be 40 based on the length of the fields in the header struct. Thanks for highlighting this!

    Function that outputs UART in IWR6843AOP

    C:\ti\mmwave_sdk_03_05_00_04\packages\ti\demo\xwr68xx\mmw\mss\

    mss_main.c - MmwDemo_transmitProcessedOutput

    Best regards,

    Connor Desmond

  • Dear Connor,

    thank you very much! Slight smile

    Have a nice day,

    Justin