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.

IWR6843: IWR6843: What is the value(range profile) of Relative Power of mmwave demo visualizer in demo code? (V2)

Part Number: IWR6843


I have asked the same question before, but it is 'resolved' without resolution, so I will ask it again here.
e2e.ti.com/.../3823832


In the following link, it says that relative power is based on the "value".

e2e.ti.com/.../iwr6843isk-ods-how-to-calcurate-relative-power

I want to output UART this 'value'.
The following is in the <\mmwave_industrial_toolbox_4_7_0__win\mmwave_industrial_toolbox_4_7_0_v2\labs\gesture_recognition\68xx_multi_gesture_and_motion_det\src\dss\dss_data_path.c>

MmwDemo_interFrameProcessing() : -

inpDoppFftBuf = (cmplx16ReIm_t *)&obj->dstPingPong[pingPongId(pingPongIdx) * obj->numDopplerBins];

Is this the same thing as the 'value' and following detMatrix[index*subFrameCfg->numDopplerBins]?
mss_main.c (if it is SDK3.5), inside the function MmwDemo_transmitProcessedOutput():-


/* Send Range profile */

if (pGuiMonSel->logMagRange)

{

UART_writePolling (uartHandle,

(uint8_t*)&tl[tlvIdx],

sizeof(MmwDemo_output_message_tl));

for(index = 0; index < subFrameCfg->numRangeBins; index++)

{

UART_writePolling (uartHandle,

(uint8_t*)&detMatrix[index*subFrameCfg->numDopplerBins],

sizeof(uint16_t));

}

tlvIdx++;

}


If there is an equivalent to rangeFFT in dss_data_path.c, it would be very helpful and easy to use.

Best Regards

Morimoto

  • Hi, 

    I want to output UART this 'value'.
    The following is in the <\mmwave_industrial_toolbox_4_7_0__win\mmwave_industrial_toolbox_4_7_0_v2\labs\gesture_recognition\68xx_multi_gesture_and_motion_det\src\dss\dss_data_path.c>

    MmwDemo_interFrameProcessing() : -

    inpDoppFftBuf = (cmplx16ReIm_t *)&obj->dstPingPong[pingPongId(pingPongIdx) * obj->numDopplerBins];

    Is this the same thing as the 'value' and following detMatrix[index*subFrameCfg->numDopplerBins]?
    mss_main.c (if it is SDK3.5), inside the function MmwDemo_transmitProcessedOutput():-

    No they are not the same. 

    detMatrix can be thought as the range doppler heat map and the first column of this matrix corresponds to the zero doppler range FFT. This is explained as part of the SDK documentation available at file:///C:/ti/mmwave_sdk_03_05_00_04/packages/ti/datapath/dpc/dpu/dopplerproc/docs/doxygen/html/index.html. 

    the inpDoppFftBuf is the input buffer for computing the range FFT. Please refer to the diagram under DopperProcHWA. The output of this averaged over the number of virtual antennas gives the range doppler heatmap. The first column of this matrix refers to the zero doppler FFT, which is sent out for plotting in mmwave demo visualizer. 

    Regards, 

    Sudharshan K N 

  • Thanks for the reply.

    I understanded that inpDoppFftBuf and detmatrix are not the same.


    > > The first column of this matrix refers to the zero doppler FFT, which is sent out for plotting in mmwave demo visualizer.
    In dss_data_path.c, is it correct to understand that obj->sumAbs2D[0] is a rangeProfile of mmwave demo visualizer? I have clutterRemoval turned off now.

    Best Regards
    Morimoto

  • Hi, 

    Sorry for the delay. Will check and get back to you tomorrow. 

    Regards, 

    Sudharshan K N 

  • Hi, 

    For gestures the detection matris is copied in dss_data_path.c MmwDemo_interFrameProcessing() line number 2877

    if (rangeIdx <= gfeatures.rangebin_stop)
    {
    memcpy((void *) &obj->predetMatrixGesture[rangeIdx*(obj->numDopplerBins)], (void *) obj->sumAbs2D, sizeof(int32_t)*obj->numDopplerBins);
    }

    Here only data for range bins closer to zero are used. Also the zero doppler data is getting set to zeros. If doppler information for the zero range doppler is needed it can be copied to another structure at the above mentioned code. 

    //zero-out doppler-bins around zero
    ComputeAngleStats(obj, &gfeatures, 0);

    Regards, 

    Sudharshan K N