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.

IWRL6432BOOST: Frame Header Structure - Ambiguity

Part Number: IWRL6432BOOST
Other Parts Discussed in Thread: IWRL6432

In the MotionPresenceDetectionDemo_documentation.pdf, it is mentioned
Frame Header Structure
The frame header is of fixed size (52bytes). It is defined by the structure as

while on the website https://dev.ti.com/tirex/explore/node?node=A__ADnbI7zK9bSRgZqeAxprvQ__radar_toolbox__1AslXXD__LATEST&placeholder=true

it is mentioned: 

Frame Header

Length: 40 Bytes
A Frame Header is sent at the start of each packet. Use the Magic Word to find the start of each packet.

  • Hi

    From the cfg port monitoring I got this data for the MotionDetect.cfg

    02 01 04 03 06 05 08 07 02 00 02 05 60 02 00 00    ............`...

     32 64 0A 00 01 00 00 00 00 00 00 00 00 00 00 00   2d..............

     02 00 00 00 FF FF FF FF 2E 01 00 00 00 02 00 00   ....ÿÿÿÿ........

     62 29 00 00 6E 1C 00 00 B2 0E 00 00 7E 0E 00 00   b)..n...²...~...

     F1 10 00 00 56 11 00 00 03 10 00 00 53 10 00 00   ñ...V.......S...

     F0 0F 00 00 6D 0F 00 00 AA 11 00 00 A6 10 00 00   ð...m...ª...¦...

     19 12 00 00 6C 12 00 00 4E 12 00 00 14 13 00 00   ....l...N.......

     1B 11 00 00 7F 0F 00 00 27 0E 00 00 83 11 00      .......'...ƒ..

    • Why the Subframe Number is FF FF FF FF? Expected is 0
      • How the if advanced subframe mode is enabled in the config
    • The TLV type is 2E 01 00, which is weird, Please suggest how to parse this structure data?

    Used the below cfg file

    MotionDetect.cfg


     

  • Also, the Total Packet Length format is 60 02 00 00, it should be parsed from left to right or vice-versa?

  • Hi,

    Right to left for each of the parameters. Notice how the "magic word" (01 02 03 04...) gets sent as (02 01 04 03...)

    Regards,

    Tim

  • Please reply to others 

  • Hi Aditya,

    Apologies, I thought I had already sent a response to your original question.

    The TLV type 00 01 2E is decimal 302 - it is for the major motion range profile TLV.

    Please allow me 24 hours to look into the subframe mode question. When the header is sent, does it always give FF FF FF FF for that field?

    Regards,

    Tim

  • Hi,

    So looking at motion_detect.c in the SDK 5.2, I see header.subFrameNumber is being set to -1. It appears that this might be an unintentional bug and should have been set to 0. I will confirm with our SDK team. You can search around more in the code base for the Presence and Motion lab to find out more information.

    Regards,

    Tim

  • Hi Tim, 

    Thanks for the reply.

    I didn't get any info for the major motion range profile TLV.

    Can you provide some documentation which explain about all the tlv tyle.

    In the below website there is no mention of 392 tlv type

    https://dev.ti.com/tirex/explore/node?node=A__ADnbI7zK9bSRgZqeAxprvQ__radar_toolbox__1AslXXD__LATEST&placeholder=true

    Yes it always sent ff ff ff ff for different configurations mode tried, motion/presence detection.

  • Hi Tim,
    I went through the c file to get the tlv type information.
    For the first frame, everything gets mapped correctly except the presence detection:

    Raw Data uint8:

    59        1        0        0        2        0        0        0        4        0        0        0        0        0        0        0        2        1        4        3

    Insights from data:

    Type =59        1        0        0 =315 = MMWDEMO_OUTPUT_EXT_MSG_ENHANCED_PRESENCE_INDICATION

    Length= 2        0        0        0 =  2

    But the length of the Presence Detection Type: 1021, Length: 4 Bytes and not 2 bytes

    Why the Length of the payload in Bytes is given as 2 bytes?

    If in case you need the entire data, here it is:

    2 1 4 3 6 5 8 7 2 0 2 5 96 1 0 0 50 100 10 0 93 12 0 0 0 0 0 0 0 0 0 0 3 0 0 0 255 255 255 255 47 1 0 0 0 1 0 0 4 42 1 0 84 15 1 0 72 3 1 0 142 41 1 0 250 44 1 0 1 43 1 0 57 59 1 0 159 77 1 0 94 81 1 0 180 61 1 0 154 41 1 0 234 25 1 0 196 15 1 0 103 244 0 0 159 200 0 0 66 219 0 0 129 244 0 0 24 233 0 0 138 213 0 0 240 219 0 0 181 20 1 0 215 58 1 0 252 28 1 0 86 233 0 0 103 240 0 0 101 43 1 0 53 73 1 0 110 27 1 0 225 247 0 0 10 249 0 0 230 4 1 0 82 2 1 0 237 13 1 0 40 7 1 0 10 10 1 0 33 23 1 0 81 4 1 0 153 21 1 0 84 7 1 0 124 39 1 0 209 51 1 0 43 27 1 0 24 12 1 0 72 14 1 0 197 251 0 0 226 15 1 0 12 51 1 0 247 63 1 0 148 71 1 0 76 60 1 0 206 37 1 0 28 31 1 0 88 35 1 0 9 27 1 0 134 252 0 0 246 4 1 0 103 39 1 0 219 48 1 0 250 11 1 0 208 252 0 0 65 240 0 0 163 241 0 0 85 243 0 0 33 230 0 0 50 1 0 0 24 0 0 0 0 0 0 0 0 0 0 0 255 255 0 0 255 255 255 255 41 0 44 0 44 0 32 0 59 1 0 0 2 0 0 0 4 0 0 0 0 0 0 0 2 1 4 3

  • Hi,

    With regards to the TLV information for 302, we are actually updating documentation for that which should be released within the next week. It will give more detailed information about all the TLV's. I will link it once it goes public.

    Can you show me how you got 315 as the type # for the TLV? Remember the byte order we received the data in before. I don't believe the type is 315.

    Regards,

    Tim

  • Hi,
    Please see the below workflow.
    Like your earlier workflow, I did the same.


    Please note, the data Type =59        1        0        0  is in uint8, as mentioned above.

  • Hi
    Can you give the mapping for the below TLV type in regards to IWRL6432

    Type Identifier Value Type Condition for output
    1 Detected Points <detected objects> is set to 1 or 2 AND there are detected objects for the frame, else this type is not sent for that frame
    2 Range Profile <log magnitude range> is set to 1; occurs every frame
    3 Noise Floor Profile <noise profile> is set to 1; occurs every frame
    4 Azimuth Static Heatmap <rangeAzimuth(Elevation)HeatMap> is set to 1 AND demo is not for AOP or ODS which use AOA2D; occurs every frame
    5 Range-Doppler Heatmap <rangeDopplerHeatMap> is set to 1; occurs every frame
    6 Statistics (Performance) <statsInfo> is set to 1; occurs every frame
    7 Side Info for Detected Points <detected objects> is set to 2 AND there are detected objects for the frame, else this type is not sent for that frame
    8 Azimuth/Elevation Static Heatmap <rangeAzimuth(Elevation)HeatMap> is set to 1 AND demo is for AOP or ODS which use AOA2D; occurs every frame
    9 Temperature Statistics <statsInfo> is set to 1; occurs every frame
  • Hi,

    Please allow me a couple days to give you complete information. We are releasing a new version of the toolbox with updated TLV's for IWRL6432 in a couple of days. I will post here as soon as I have information.

    In the meantime, here is a list of some of them

    Regards,

    Tim