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.

IWR6843AOP: Where should I put the gMmwMCB.powerDownSemHandle in 3D People Tracking example?

Part Number: IWR6843AOP

Tool/software:

Hi TI,

A question related to this issue: IWR6843AOP: How to clock gating DSS and MSS during the idle time between frames? - Sensors forum - Sensors - TI E2E support forums

In example <C:\ti\radar_toolbox_3_00_00_05\source\ti\examples\Fundamentals\xWR6843_Low_Power_Modes>,

  • if I am not misunderstanding, this example doesn't use DSP?
  • The powerDownSemHandle is post after DPC_OBJDET_IOCTL__DYNAMIC_EXECUTE_RESULT_EXPORTED

In example <C:\ti\radar_toolbox_3_00_00_05\source\ti\examples\Industrial_and_Personal_Electronics\People_Tracking\3D_People_Tracking>,

  • Should I just put the powerDownSemHandle post after DPM_ioctl, DPC_OBJDET_IOCTL__DYNAMIC_EXECUTE_RESULT_EXPORTED is called? <In function Pcount3DDemo_handleObjectDetResult>
  • Should put the powerDownSemHandle post after UART is sent? I am not sure where is the UART sent ended.

/* Power down */
Semaphore_post(gMmwMCB.powerDownSemHandle);


In document <适用于IWR6843系列毫米波雷达SOC的软件功耗优化示例> or <ti.com/lit/an/swra689/swra689.pdf?ts=1743047875163>

  • using 3D People Tracking example, where can I know when do the "Acquisition & 1D FFT" ends? or when do the "Capon BF" starts?

    • if I am not misunderstanding, this example doesn't use DSP?

    You are correct. This example does not use DSP.

    • Should I just put the powerDownSemHandle post after DPM_ioctl, DPC_OBJDET_IOCTL__DYNAMIC_EXECUTE_RESULT_EXPORTED is called? <In function Pcount3DDemo_handleObjectDetResult>
    • Should put the powerDownSemHandle post after UART is sent? I am not sure where is the UART sent ended.

    I think either would be fine. 

    1. Are there any example that have similar Low Power Mode feature with DSP in use?
    2. using 3D People Tracking example, which part of the firmware indicates the "Acquisition & 1D FFT" ends or the "Capon BF" starts?
    3. I am having some corrupted frames after the code changes for power saving, may I have your help to look into it? Below attached two main code <mss_main.c> and <pcount3D_cli.c> edited for test using example, <C:\ti\radar_toolbox_3_00_00_05\source\ti\examples\Industrial_and_Personal_Electronics\People_Tracking\3D_People_Tracking>
      1. I am not using calibData saveEnable restoreEnable. Using the first frame to calibrate the RF, use the calib data for the rest of the frame.
      2. When <frameCfg> using <framePeriodicity=55ms> and <trackingCfg> using <framePeriod=55ms>, a lot of data output from mmwave cannot be decoded.
      3. When <frameCfg> using <framePeriodicity=80ms> and <trackingCfg> using <framePeriod=80ms>, less data output frame mmwave cannot be decoded.
      4. Around 20 minutes, the mmwave firmware hung without CLI outputs. SW Reset required to recover the mmwave firmware.

    mss_main.c: /cfs-file/__key/communityserver-discussions-components-files/1023/7450.mss_5F00_main.c

    pcount3D_cli.c: /cfs-file/__key/communityserver-discussions-components-files/1023/7450.pcount3D_5F00_cli.c

    mmwave.cfg for low power

    sensorStop
    flushCfg
    dfeDataOutputMode 1
    channelCfg 15 7 0
    adcCfg 2 1
    adcbufCfg -1 0 1 1 1
    lowPower 0 0
    profileCfg 0 60.75 30.00 25.00 59.10 394758 0 54.71 1 96 2950.00 2 1 36 
    chirpCfg 0 0 0 0 0 0 0 1
    chirpCfg 1 1 0 0 0 0 0 2
    chirpCfg 2 2 0 0 0 0 0 4
    frameCfg 0 2 96 0 80.00 1 0
    dynamicRACfarCfg -1 4 4 2 2 8 12 4 12 5.00 8.00 0.40 1 1
    staticRACfarCfg -1 6 2 2 2 8 8 6 4 8.00 15.00 0.30 0 0
    dynamicRangeAngleCfg -1 0.75 0.0010 1 0
    dynamic2DAngleCfg -1 3.0 0.0300 1 0 1 0.30 0.85 8.00
    staticRangeAngleCfg -1 0 8 8
    antGeometry0 -1 -1 0 0 -3 -3 -2 -2 -1 -1 0 0
    antGeometry1 -1 0 -1 0 -3 -2 -3 -2 -3 -2 -3 -2
    antPhaseRot 1 -1 1 -1 1 -1 1 -1 1 -1 1 -1
    fovCfg -1 70.0 70.0
    compRangeBiasAndRxChanPhase 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
    boundaryBox -3 3 0 6 0 3
    sensorPosition 2 0 25
    gatingParam 3 2 2 3 3
    stateParam 1 3 12 100 200 200
    allocationParam 5 100 0.1 5 1.0 20
    maxAcceleration 0.1 0.1 0.1
    trackingCfg 1 2 800 30 46 96 80
    calibData 1
    idlePowerMode 200 1 1 1 1 1
    sensorStart
    sensorXY 0 -3 2 0 25

    When <frameCfg> using <framePeriodicity=55ms> and <trackingCfg> using <framePeriod=55ms>, the frame error output as below:

    # hexlified raw data
    rawdata = b'0201040306050807000206034007000043680a000100000000000000960000000500000000000000fc030000c40400000ad7233c0ad7233cf7cc92396f1283390ad7233d2c75ea02c512af002885e203c2139f001f96ea02f40349031f96ea02f403e8011f96ea02f4037d011f96ea02f40320012c8cd305bf1493001f98ea02f4035b031f98ea02f403f4011f98ea02f40387011f98ea02f40329012c8fea02c512a9002892e203c21399002c8ed305bf149300ee9e16fd6f2edb001f9aea02f4036e031f9aea02f40301021f9aea02f40390011f9aea02f40332012c91d305bf149300eea016fd6f2ee4001b9eea02f40387031b9eea02f40313021b9eea02f4039d011b9eea02f4033f01eea1db046f2ef100f7a316fd6c2f8000449d07ffc464c5004f8e07ffc863ce0007bdea026531ea0044a4e203c1658300ffbfea02623245013fabdb04cb629600f3c4db046f2ec501f7c625fb6c2fc201fbc7f1016830200128c4cc06f403f01528c4cc06f4036b0e28c4cc06f403ea0a28c4cc06f403b408eec90ffe722d9000fbcaea025f338a0031c3cc06f10445013fc1d305ed05830028ca1efc1b49bf0024cdae0a1800f000f0f0000000f0000000f0f000f0f0f00000f0f000f000000000f000f000f0f000f0f0f00000f0f000f000f00000f00000f0f0f000f0f0f00000f0f000f0000000f000f000f0f0f0f0f000f0f00000f000f0f000f000f000f0f0f0f0f000f0f0f00000f0f000f000f0f00000f00000f0f0f000f0f00000f000f000000000f00000f0f0f000f0f0f00000f0f000f000f00000f00000f0f000f000f0f0f0f0f000f0f000f00000f00000f0f0f0f00000f0f000f0f000f000000000f000f0f0f0f000f0f00000f000000000000000f0f0f0f000f0f0f00000f0f000f000f000f000f000f0f0f000f000f0f0f0f0f000f0f000f0000000f000f0f0f000f0f0000000f0f0f0f00000f00000f00000f0f000f0f00000f00000f00000000000f000f0f0000000f0f000f000000000f000f00000f000f000f0f0f0f0f000f0f0000000f000f00000f000f0f0000000f0f0f0f000f0f000f00000f0f00000f000f0f0f0f0f000000000f0000000f0f0f000f0f0f000f0f000000000f000f000f000f000f0f000f0f00000f000f0f000f0f000f0f000f0f000f00000f0f000f000f0f000f0f000f000f000f000f000f0f0f0f0f000f0f000f00000f000f000f000f0f0000000f0f0f0f00000f0000000f0f0f0f000f0f00000f000f000f0f0f000f0f0f0f0f000f00000f0f000f000f0f0f0f0f0f0000000f0f0f000f0f00000f0f0f000f0f0000000f000f000f0f0f000f0f0000000f0f0f0f000f00000f000000000f0f000f000f00000f0000000f0f0f000f000f0f000f00000f0f000f0000000f0f000f000f000f000f0f0f0f0f000f0f000f0f0f0f0f000000000f000f0f0000000f0f0f0f000f00000f0000000f0f0f0f000f000f00000f00000f000f0f000f0f0f0f0f000f00000f0f000f000000000f000f0f0f0f0f000f000f0f0f000f0f000f00000f0000000f0f0f0f000f000f0f0f0f00000f0f000f000f0f000f0f00000f00000000000f000f0f000f00000f0f000f0000000f000f000f0f000f000f0f0f000f0f000f0f000f000f000f0f000f000f0f0f0f000f000f00000f0000000f0f0f000f0f0f0000000f00000f0000000f0f0f0f000f000f00000f000f000f0000000f0f0f000f00000f0f000f000f0f000f0f0f0f000f000f0f0f000f0f00000f0f000f0f0f0f000f000f0f0f0f00000f0f0000000f0f0f00000f0f0f0f000f000f00000f000f00000f0f00000f000000000000000f0f0f000f000f000f000f00000f000f00000f0000000f000f00000f0f000f000f000000000f000f000f0f0f000f0f00000f0f000f000f000f000f0f0f0f00000000000f000f0f0f00000f0000000000000f00000f0f0000000f000f000f000f0f0f000f0f00000f0f000f0f000f0000000f0f0f0f00000f0000000f000f0f0f0f000f0f0f000f0f0000000f0f000f000f00000f00000f0000000000000f0f0f0f00000000000f0000000f0f0f0f00000f0f00000f000f0f0f00000f00000000000000000f0f0f00000f000f0000000f0f0f0f000f0000000f0f0f000f0f0f000f0f0f000f000f00000f000f00000f00000f0000000000000f000f0f000000000f0000000f0f0f0f0000000f0f000f000f0f00000f0000000000000f000f00000f0f0f0f000f0000000f0f0f0f00000f0f0f0000000000000f0000000000000f0f0000000f0f00000f0000000f0f0f0f000000000f000000000000000f000000000000000000000f0f0f0f000f0f000f000f00000f000f0f00000f0f0f00000f0f000000000f00000000000f0f0f0000000f000000000000000f000f000f000f000f000f000f000f00000000000f0f00000f0f000f00000f0000000000000f000f000f000f0f0f0000000000000f000f0f00000f000f0f0f000f0f0f0f0f00000f000000000000000f0f00000f0f0f0f0f00000000000f000f0f00000f0f0f0f0f0f0f000f0f0f0f0f0f000f0f0000000000000f00000f00000'
    
    frameHeader = (506660481457717506, 50725376, 1856, 682051, 1, 0, 150, 5, 0)
    
    # Compressed points, ends up with a lot of 0xF and 0x0
    tlvType=1020, tlvLength=1220
    frameData[:tlvLength] = b'0ad7233c0ad7233cf7cc92396f1283390ad7233d2c75ea02c512af002885e203c2139f001f96ea02f40349031f96ea02f403e8011f96ea02f4037d011f96ea02f40320012c8cd305bf1493001f98ea02f4035b031f98ea02f403f4011f98ea02f40387011f98ea02f40329012c8fea02c512a9002892e203c21399002c8ed305bf149300ee9e16fd6f2edb001f9aea02f4036e031f9aea02f40301021f9aea02f40390011f9aea02f40332012c91d305bf149300eea016fd6f2ee4001b9eea02f40387031b9eea02f40313021b9eea02f4039d011b9eea02f4033f01eea1db046f2ef100f7a316fd6c2f8000449d07ffc464c5004f8e07ffc863ce0007bdea026531ea0044a4e203c1658300ffbfea02623245013fabdb04cb629600f3c4db046f2ec501f7c625fb6c2fc201fbc7f1016830200128c4cc06f403f01528c4cc06f4036b0e28c4cc06f403ea0a28c4cc06f403b408eec90ffe722d9000fbcaea025f338a0031c3cc06f10445013fc1d305ed05830028ca1efc1b49bf0024cdae0a1800f000f0f0000000f0000000f0f000f0f0f00000f0f000f000000000f000f000f0f000f0f0f00000f0f000f000f00000f00000f0f0f000f0f0f00000f0f000f0000000f000f000f0f0f0f0f000f0f00000f000f0f000f000f000f0f0f0f0f000f0f0f00000f0f000f000f0f00000f00000f0f0f000f0f00000f000f000000000f00000f0f0f000f0f0f00000f0f000f000f00000f00000f0f000f000f0f0f0f0f000f0f000f00000f00000f0f0f0f00000f0f000f0f000f000000000f000f0f0f0f000f0f00000f000000000000000f0f0f0f000f0f0f00000f0f000f000f000f000f000f0f0f000f000f0f0f0f0f000f0f000f0000000f000f0f0f000f0f0000000f0f0f0f00000f00000f00000f0f000f0f00000f00000f00000000000f000f0f0000000f0f000f000000000f000f00000f000f000f0f0f0f0f000f0f0000000f000f00000f000f0f0000000f0f0f0f000f0f000f00000f0f00000f000f0f0f0f0f000000000f0000000f0f0f000f0f0f000f0f000000000f000f000f000f000f0f000f0f00000f000f0f000f0f000f0f000f0f000f00000f0f000f000f0f000f0f000f000f000f000f000f0f0f0f0f000f0f000f00000f000f000f000f0f0000000f0f0f0f00000f0000000f0f0f0f000f0f00000f000f000f0f0f000f0f0f0f0f000f00000f0f000f000f0f0f0f0f0f0000000f0f0f000f0f00000f0f0f000f0f0000000f000f000f0f0f000f0f0000000f0f0f0f000f00000f000000000f0f000f000f00000f0000000f0f0f000f000f0f000f00000f0f000f0000000f0f000f000f000f000f0f0f0f0f000f0f000f0f0f0f0f000000000f000f0f0000000f0f0f0f000f00000f0000000f0f0f0f000f000f00000f00000f000f0f000f0f0f0f0f000f00000f0f000f000000000f000f0f0f0f0f000f000f0f0f000f0f000f00000f0000000f0f0f0f000f000f0f0f0f00000f0f000f000f0f000f0f00000f00000000000f000f0f000f00000f0f000f0000000f000f000f0f000f000f0f0f000f0f000f0f000f000f000f0f000f000f0f0f0f000f000f00000f0000000f0f0f000f0f0f0000000f00000f0000000f0f0f0f000f000f00000f000f000f0000000f0f0f000f00000f0f000f000f0f000f0f0f0f000f000f0f0f000f0f00000f0f0'
    
    # Cannot decode for the rest of TLV
    tlvType=4042321920, tlvLength=15728880
    2025-04-11 10:09:58,600 - p19028 - INFO - Invalid TLV type: 4042321920

    When <frameCfg> using <framePeriodicity=80ms> and <trackingCfg> using <framePeriod=80ms>, the frame error output as below:

    # hexlified rawdata
    rawdata = b'0201040306050807000206038006000043680a000100000000000000730000000500000000000000fc030000ac0300000ad7233c0ad7233cf7cc92396f1283390ad7233dea88f900ea06b902ea8bf900ea06b302ea8ef900ea06a602ea90f900ea069302de88f900782b99001b8de2031e4877021b8de2031b49a002ea92f900ea067a02de8bf900782b9f001b8fe2031e48e8021b8fe2031b49fe02e693f900ea065e02de8df900782b9f001b92e2031e486b031b92e2031b496203e695f900ea064202de90f900782b9f001b94e2031b49c303e697f900ea062302c76df90021475502c76df9001e48a4041b96e2031b491d04d58bf900184aea00ea99e203d75e7d00e699f900ea060702cc81e20324461c01c776f9002147b302c776f9001e484305179ae2031b495f04d58df900184a0701ea9be203d75e8a00e69bf900ea06eb01e69bf9007b2a8d00cc85e20324463f01c77bf90021471d03c77bf9001e48c605179ce2031b497e04d590f900184a2601ea9de203d75e9300c780f9008e249000e69df9007b2a8d00cc88e20324466401c780f90021479703c780f9001e481b06179ee2031b497504d592f900184a4b01e69de203d75e9c00cc8b07ffc2138300c784f9008e249300e69ff9007b2a9000c784e20324468d01c784f90021471a04c278f9001e48270617a0e2031b494304d595f900184a7701e69fe203d75ea3001b9e52f59f709900c787e2032446bc01c37df9002147a004c27df9001e48ef0517a2e2031b49f503d193f900184aac01d597f900154b8000e6a1e203d75ea300c78ae2032446ee01c282f90021471d05c282f9001e487e05d195f900184ae401e6a2e203d75e9c00c285f90021477e05d198f900184a2902c289f9002147b705d19af900184a7102d19cf900184abc02d19ef900184a0403cc9cf900184a3f03d5a3f900154bac00c397e20324461003cca1f900184a5f033faedb0456369c00b8a7f1012b44a001b8a9f1012b44ee01b8abf1012b444c02b8adf1012b44b302b8aff1012b441d03b8b0f1012b447103b3adf1012b449703b3b0f1012b447e03b3b2f1012b443303b8b8db042745f400b8bae203be66a600b3b907ff00d50dac004ac4d305db0b26013fcaf101d80c860035cef900d50dc80049c6d305db0b3f013fcbf101d80c9c0035cff900d50dea002dd1f900d20ece0049c8d305db0b52013fcdf101d80cb50031d1f900d50d130149c9d305db0b61013fcef101d80cce0031d3f900d50d4201b3c7db046531df0449cbd305db0b64013fd0f101d80cea0031d4f900d50d7101b8cce20368308103b3c9cc066531850549cdd305db0b6101f2030000c001000000000000f6b4b4be70b55b3eb79ec93d0ba702bd52410c3d803406be57ca58bd2189253dbc50edbd6ac5a93f6174eebbe12d7fbc702e2bbc6374eebbdee94c3fca46c1bb3139b0bae12d7fbcca46c1bb0f22493ff7e772bb702e2bbc3239b0baf5e772bb8811123f00004040e2f2673f020000003e9213c0d076b53fdfbd9cbeb4b264bf304341bf43a6efbd000000000000000000000000d9108d3f982132be568effbde3b8d0bc982132be4e5ab24051b1e1be0f3e1b3c568effbd51b1e1be879c8440e190f3bce1b8d0bc123e1b3ce190f3bcc73e053f0000404053435a3f07000000f0f680becf98583f1685a53e1c8d61bf2043c43e642463bef951bbbe42ff05bf6b3bd43edfa8803f079d95bb5a62f7bb74b9a9bc079d95bb8ef59a3fcbbe533bbffb273c5662f7bbccbe533bc3e9913f2bc7763c72b9a9bcc0fb273c2ac7763c4062da3e000040406dc73a3f080000008814d5bf610f4a3fa416cbbf7ab6e73da1ba5bbde9d8dc3d000000000000000000000000f217813fae540fbb311216bb00b13dbbae540fbb4338d640986dcbbc359620bc311216bb986dcbbc521dd740a0d6e9bb00b13dbb359620bca0d6e9bbd3fb6d3f000040406666663ff40300003000000000000000edc004408d87e13f02000000f80a243fe9e49e3e0700000079b09c3f6202903f080000001ff5493c9652e33bf3030000730000000000000008fefe0008fefe0008fefe0008fe00fefefefefe00fefefefefefe0002fefefefefefefe02fefefefefefeff0802fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe07070007000007000000070000070000fe070000fefe07fd0300000400000001000000bebebebebebebebebebebebebebebebe00000000000000000000000000020104030605080700020603a007000043680a00010000'
    
    frameHeader = (506660481457717506, 50725376, 1664, 682051, 1, 0, 115, 5, 0)
    
    # Compressed points TLV
    tlvType=1020, tlvLength=940
    frameData[:tlvLength] = b'0ad7233c0ad7233cf7cc92396f1283390ad7233dea88f900ea06b902ea8bf900ea06b302ea8ef900ea06a602ea90f900ea069302de88f900782b99001b8de2031e4877021b8de2031b49a002ea92f900ea067a02de8bf900782b9f001b8fe2031e48e8021b8fe2031b49fe02e693f900ea065e02de8df900782b9f001b92e2031e486b031b92e2031b496203e695f900ea064202de90f900782b9f001b94e2031b49c303e697f900ea062302c76df90021475502c76df9001e48a4041b96e2031b491d04d58bf900184aea00ea99e203d75e7d00e699f900ea060702cc81e20324461c01c776f9002147b302c776f9001e484305179ae2031b495f04d58df900184a0701ea9be203d75e8a00e69bf900ea06eb01e69bf9007b2a8d00cc85e20324463f01c77bf90021471d03c77bf9001e48c605179ce2031b497e04d590f900184a2601ea9de203d75e9300c780f9008e249000e69df9007b2a8d00cc88e20324466401c780f90021479703c780f9001e481b06179ee2031b497504d592f900184a4b01e69de203d75e9c00cc8b07ffc2138300c784f9008e249300e69ff9007b2a9000c784e20324468d01c784f90021471a04c278f9001e48270617a0e2031b494304d595f900184a7701e69fe203d75ea3001b9e52f59f709900c787e2032446bc01c37df9002147a004c27df9001e48ef0517a2e2031b49f503d193f900184aac01d597f900154b8000e6a1e203d75ea300c78ae2032446ee01c282f90021471d05c282f9001e487e05d195f900184ae401e6a2e203d75e9c00c285f90021477e05d198f900184a2902c289f9002147b705d19af900184a7102d19cf900184abc02d19ef900184a0403cc9cf900184a3f03d5a3f900154bac00c397e20324461003cca1f900184a5f033faedb0456369c00b8a7f1012b44a001b8a9f1012b44ee01b8abf1012b444c02b8adf1012b44b302b8aff1012b441d03b8b0f1012b447103b3adf1012b449703b3b0f1012b447e03b3b2f1012b443303b8b8db042745f400b8bae203be66a600b3b907ff00d50dac004ac4d305db0b26013fcaf101d80c860035cef900d50dc80049c6d305db0b3f013fcbf101d80c9c0035cff900d50dea002dd1f900d20ece0049c8d305db0b52013fcdf101d80cb50031d1f900d50d130149c9d305db0b61013fcef101d80cce0031d3f900d50d4201b3c7db046531df0449cbd305db0b64013fd0f101d80cea0031d4f900d50d7101b8cce20368308103b3c9cc066531850549cdd305db0b6101f2030000c001000000000000f6b4b4be70b55b3eb79ec9'
    
    # TLV cannot be decoded for the rest
    tlvType=44501821, tlvLength=205607613
    2025-04-11 10:07:05,388 - p19028 - INFO - Invalid TLV type: 44501821
    

    • Are there any example that have similar Low Power Mode feature with DSP in use?

    https://dev.ti.com/tirex/explore/node?node=A__AOJjAWsYPq56ZxKYYyJH5A__radar_toolbox__1AslXXD__LATEST

    • using 3D People Tracking example, which part of the firmware indicates the "Acquisition & 1D FFT" ends or the "Capon BF" starts?

    Line 725 of objdetrangehwa.c

    I am having some corrupted frames after the code changes for power saving, may I have your help to look into it? Below attached two main code <mss_main.c> and <pcount3D_cli.c> edited for test using example, <C:\ti\radar_toolbox_3_00_00_05\source\ti\examples\Industrial_and_Personal_Electronics\People_Tracking\3D_People_Tracking>

    We cannot offer code debugging on this forum. If you have specific questions about software and architecture we can help, but we can't parse your entire code.

    • When <frameCfg> using <framePeriodicity=55ms> and <trackingCfg> using <framePeriod=55ms>, a lot of data output from mmwave cannot be decoded.

    Are you using the industrial visualizer? If so, does increasing your time between frames help? It appears so based off your respinse saying 80 msec works better. Does it always crash after a specific # of frames? Or does it change if you change the frame rate.

    Best,

    Nate

  • When <frameCfg> using <framePeriodicity=80ms> and <trackingCfg> using <framePeriod=80ms>, the frame error output as below:

    # hexlified rawdata
    rawdata = b'0201040306050807000206038006000043680a000100000000000000730000000500000000000000fc030000ac0300000ad7233c0ad7233cf7cc92396f1283390ad7233dea88f900ea06b902ea8bf900ea06b302ea8ef900ea06a602ea90f900ea069302de88f900782b99001b8de2031e4877021b8de2031b49a002ea92f900ea067a02de8bf900782b9f001b8fe2031e48e8021b8fe2031b49fe02e693f900ea065e02de8df900782b9f001b92e2031e486b031b92e2031b496203e695f900ea064202de90f900782b9f001b94e2031b49c303e697f900ea062302c76df90021475502c76df9001e48a4041b96e2031b491d04d58bf900184aea00ea99e203d75e7d00e699f900ea060702cc81e20324461c01c776f9002147b302c776f9001e484305179ae2031b495f04d58df900184a0701ea9be203d75e8a00e69bf900ea06eb01e69bf9007b2a8d00cc85e20324463f01c77bf90021471d03c77bf9001e48c605179ce2031b497e04d590f900184a2601ea9de203d75e9300c780f9008e249000e69df9007b2a8d00cc88e20324466401c780f90021479703c780f9001e481b06179ee2031b497504d592f900184a4b01e69de203d75e9c00cc8b07ffc2138300c784f9008e249300e69ff9007b2a9000c784e20324468d01c784f90021471a04c278f9001e48270617a0e2031b494304d595f900184a7701e69fe203d75ea3001b9e52f59f709900c787e2032446bc01c37df9002147a004c27df9001e48ef0517a2e2031b49f503d193f900184aac01d597f900154b8000e6a1e203d75ea300c78ae2032446ee01c282f90021471d05c282f9001e487e05d195f900184ae401e6a2e203d75e9c00c285f90021477e05d198f900184a2902c289f9002147b705d19af900184a7102d19cf900184abc02d19ef900184a0403cc9cf900184a3f03d5a3f900154bac00c397e20324461003cca1f900184a5f033faedb0456369c00b8a7f1012b44a001b8a9f1012b44ee01b8abf1012b444c02b8adf1012b44b302b8aff1012b441d03b8b0f1012b447103b3adf1012b449703b3b0f1012b447e03b3b2f1012b443303b8b8db042745f400b8bae203be66a600b3b907ff00d50dac004ac4d305db0b26013fcaf101d80c860035cef900d50dc80049c6d305db0b3f013fcbf101d80c9c0035cff900d50dea002dd1f900d20ece0049c8d305db0b52013fcdf101d80cb50031d1f900d50d130149c9d305db0b61013fcef101d80cce0031d3f900d50d4201b3c7db046531df0449cbd305db0b64013fd0f101d80cea0031d4f900d50d7101b8cce20368308103b3c9cc066531850549cdd305db0b6101f2030000c001000000000000f6b4b4be70b55b3eb79ec93d0ba702bd52410c3d803406be57ca58bd2189253dbc50edbd6ac5a93f6174eebbe12d7fbc702e2bbc6374eebbdee94c3fca46c1bb3139b0bae12d7fbcca46c1bb0f22493ff7e772bb702e2bbc3239b0baf5e772bb8811123f00004040e2f2673f020000003e9213c0d076b53fdfbd9cbeb4b264bf304341bf43a6efbd000000000000000000000000d9108d3f982132be568effbde3b8d0bc982132be4e5ab24051b1e1be0f3e1b3c568effbd51b1e1be879c8440e190f3bce1b8d0bc123e1b3ce190f3bcc73e053f0000404053435a3f07000000f0f680becf98583f1685a53e1c8d61bf2043c43e642463bef951bbbe42ff05bf6b3bd43edfa8803f079d95bb5a62f7bb74b9a9bc079d95bb8ef59a3fcbbe533bbffb273c5662f7bbccbe533bc3e9913f2bc7763c72b9a9bcc0fb273c2ac7763c4062da3e000040406dc73a3f080000008814d5bf610f4a3fa416cbbf7ab6e73da1ba5bbde9d8dc3d000000000000000000000000f217813fae540fbb311216bb00b13dbbae540fbb4338d640986dcbbc359620bc311216bb986dcbbc521dd740a0d6e9bb00b13dbb359620bca0d6e9bbd3fb6d3f000040406666663ff40300003000000000000000edc004408d87e13f02000000f80a243fe9e49e3e0700000079b09c3f6202903f080000001ff5493c9652e33bf3030000730000000000000008fefe0008fefe0008fefe0008fe00fefefefefe00fefefefefefe0002fefefefefefefe02fefefefefefeff0802fefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefefe07070007000007000000070000070000fe070000fefe07fd0300000400000001000000bebebebebebebebebebebebebebebebe00000000000000000000000000020104030605080700020603a007000043680a00010000'
    
    frameHeader = (506660481457717506, 50725376, 1664, 682051, 1, 0, 115, 5, 0)
    
    # Compressed points TLV
    tlvType=1020, tlvLength=940
    frameData[:tlvLength] = b'0ad7233c0ad7233cf7cc92396f1283390ad7233dea88f900ea06b902ea8bf900ea06b302ea8ef900ea06a602ea90f900ea069302de88f900782b99001b8de2031e4877021b8de2031b49a002ea92f900ea067a02de8bf900782b9f001b8fe2031e48e8021b8fe2031b49fe02e693f900ea065e02de8df900782b9f001b92e2031e486b031b92e2031b496203e695f900ea064202de90f900782b9f001b94e2031b49c303e697f900ea062302c76df90021475502c76df9001e48a4041b96e2031b491d04d58bf900184aea00ea99e203d75e7d00e699f900ea060702cc81e20324461c01c776f9002147b302c776f9001e484305179ae2031b495f04d58df900184a0701ea9be203d75e8a00e69bf900ea06eb01e69bf9007b2a8d00cc85e20324463f01c77bf90021471d03c77bf9001e48c605179ce2031b497e04d590f900184a2601ea9de203d75e9300c780f9008e249000e69df9007b2a8d00cc88e20324466401c780f90021479703c780f9001e481b06179ee2031b497504d592f900184a4b01e69de203d75e9c00cc8b07ffc2138300c784f9008e249300e69ff9007b2a9000c784e20324468d01c784f90021471a04c278f9001e48270617a0e2031b494304d595f900184a7701e69fe203d75ea3001b9e52f59f709900c787e2032446bc01c37df9002147a004c27df9001e48ef0517a2e2031b49f503d193f900184aac01d597f900154b8000e6a1e203d75ea300c78ae2032446ee01c282f90021471d05c282f9001e487e05d195f900184ae401e6a2e203d75e9c00c285f90021477e05d198f900184a2902c289f9002147b705d19af900184a7102d19cf900184abc02d19ef900184a0403cc9cf900184a3f03d5a3f900154bac00c397e20324461003cca1f900184a5f033faedb0456369c00b8a7f1012b44a001b8a9f1012b44ee01b8abf1012b444c02b8adf1012b44b302b8aff1012b441d03b8b0f1012b447103b3adf1012b449703b3b0f1012b447e03b3b2f1012b443303b8b8db042745f400b8bae203be66a600b3b907ff00d50dac004ac4d305db0b26013fcaf101d80c860035cef900d50dc80049c6d305db0b3f013fcbf101d80c9c0035cff900d50dea002dd1f900d20ece0049c8d305db0b52013fcdf101d80cb50031d1f900d50d130149c9d305db0b61013fcef101d80cce0031d3f900d50d4201b3c7db046531df0449cbd305db0b64013fd0f101d80cea0031d4f900d50d7101b8cce20368308103b3c9cc066531850549cdd305db0b6101f2030000c001000000000000f6b4b4be70b55b3eb79ec9'
    
    # TLV cannot be decoded for the rest
    tlvType=44501821, tlvLength=205607613
    2025-04-11 10:07:05,388 - p19028 - INFO - Invalid TLV type: 44501821

    Are you using the industrial visualizer? If so, does increasing your time between frames help? It appears so based off your respinse saying 80 msec works better. Does it always crash after a specific # of frames? Or does it change if you change the frame rate.

    Yes. I am using the industrial visualizer and add on some parsing output, so I can know what causing the parsing error.
    Using the 80ms frame period, in the end of the TLV=1020 data, there are portion of next TLV data (attached the snapshot of the data in picture below). 

    In function MmwDemo_uartTxTask, I had tried to use "UART_writePolling" method instead of "UART_write". Is there any methods to confirm the FIFO had completely send out? There is no specific patterns in crashes after specific number of frame. This only happens when I am using the idlePowerMode.

  • From <C:/ti/mmwave_sdk_03_06_02_00-LTS/packages/ti/demo/xwr68xx/mmw/docs/doxygen/html/index.html>, IdlePowerDown happens between "Send detected objects etc to UART" and "Process pending Dynamic Config Commands for next sub-frame". Do this need to be semaphore, waiting for IdlePowerDown done powering up, then continue "Process pending Dynamic Config Commands for net sub-frame"?

  • Are you following the instructions here?

    https://dev.ti.com/tirex/explore/node?a=1AslXXD__3.00.00.05&node=A__AOJjAWsYPq56ZxKYYyJH5A__radar_toolbox__1AslXXD__3.00.00.05

    Please do not change the UART calls from the default. I would just follow the instructions above.

    Best,

    Nate