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.

AWR6843AOPEVM: About Vital Signs with People Tracking Developer Guide

Part Number: AWR6843AOPEVM

Tool/software:

Hi TI Expert : 

Good day~ According to  "Vital Signs with People Tracking Developer Guide.pdf" , 

the output  pointer of the function "MmwDemo_vitalsignPickupPoint" called  "Datasave_Mss_TCMA_p"

will be used by vital signs processing. However as the function block daigram described below,

"Datasave_Mss_TCMA_p"  seems never used by "MmwDemo_vitalsignProcessing" function.

I also took a deep look into the code of  "MmwDemo_vitalsignProcessing"  and it seems  "Datasave_Mss_TCMA_p"  never be used. 

Do you know  in which place the "Datasave_Mss_TCMA_p" be used after it is produced by  "MmwDemo_vitalsignPickupPoint" ?

And also , could we just by pass BPM de-modulation part of code  in "MmwDemo_vitalsignPickupPoint" as attached ?

   

 //This is for SDK3.x DATA FORMAT 1
    //ONLY SAVE 8 VITURAL CHANNEL AND 5 RANGE BIN DATA.
    //re-org the ADC data format in L3.
    for(cntii=*rangeidx-2;cntii<*rangeidx+3;cntii++)
    {
        for(cntjj=0;cntjj<12;cntjj++)
        {
            pData_temp[cntjj] = pDataIn[48 * 12 * cntii + cntjj]; //change for new static detection chain
        }

        //de-modulation the BPM
        //[0:3] TIM1, [4:7] TIM2, [8:11] TIM3 RX signals
   //RADARDEMO_aoaEst2DCaponBF_bpmDemodulation
        //AOP
     pData_temp[20].real = (pData_temp[0].real + pData_temp[8].real)/2;
     pData_temp[20].imag = (pData_temp[0].imag + pData_temp[8].imag)/2;
     pData_temp[21].real = (pData_temp[1].real + pData_temp[9].real)/(-2); //phase rotation
     pData_temp[21].imag = (pData_temp[1].imag + pData_temp[9].imag)/(-2);
     pData_temp[22].real = (pData_temp[2].real + pData_temp[10].real)/2;
     pData_temp[22].imag = (pData_temp[2].imag + pData_temp[10].imag)/2;
     pData_temp[23].real = (pData_temp[3].real + pData_temp[11].real)/(-2);
     pData_temp[23].imag = (pData_temp[3].imag + pData_temp[11].imag)/(-2);

     pData_temp[24].real = (pData_temp[4].real);
     pData_temp[24].imag = (pData_temp[4].imag);
     pData_temp[25].real = (pData_temp[5].real)*(-1); //phase rotation
     pData_temp[25].imag = (pData_temp[5].imag)*(-1);
     pData_temp[26].real = (pData_temp[6].real);
     pData_temp[26].imag = (pData_temp[6].imag);
     pData_temp[27].real = (pData_temp[7].real)*(-1);
     pData_temp[27].imag = (pData_temp[7].imag)*(-1);

     pData_temp[28].real = (pData_temp[0].real - pData_temp[8].real)/2;
     pData_temp[28].imag = (pData_temp[0].imag - pData_temp[8].imag)/2;
     pData_temp[29].real = (pData_temp[1].real - pData_temp[9].real)/(-2);
     pData_temp[29].imag = (pData_temp[1].imag - pData_temp[9].imag)/(-2);
     pData_temp[30].real = (pData_temp[2].real - pData_temp[10].real)/2;
     pData_temp[30].imag = (pData_temp[2].imag - pData_temp[10].imag)/2;
     pData_temp[31].real = (pData_temp[3].real - pData_temp[11].real)/(-2);
     pData_temp[31].imag = (pData_temp[3].imag - pData_temp[11].imag)/(-2);

      //ISK Demodulation
      //RADARDEMO_aoaEst2DCaponBF_bpmDemodulation
        //  pData_temp[20].real = (pData_temp[0].real + pData_temp[8].real)/2;
        //  pData_temp[20].imag = (pData_temp[0].imag + pData_temp[8].imag)/2;
        //  pData_temp[21].real = (pData_temp[1].real + pData_temp[9].real)/2;
        //  pData_temp[21].imag = (pData_temp[1].imag + pData_temp[9].imag)/2;
        //  pData_temp[22].real = (pData_temp[2].real + pData_temp[10].real)/2;
        //  pData_temp[22].imag = (pData_temp[2].imag + pData_temp[10].imag)/2;
        //  pData_temp[23].real = (pData_temp[3].real + pData_temp[11].real)/2;
        //  pData_temp[23].imag = (pData_temp[3].imag + pData_temp[11].imag)/2;

        //  pData_temp[24].real = (pData_temp[4].real);
        //  pData_temp[24].imag = (pData_temp[4].imag);
        //  pData_temp[25].real = (pData_temp[5].real);
        //  pData_temp[25].imag = (pData_temp[5].imag);
        //  pData_temp[26].real = (pData_temp[6].real);
        //  pData_temp[26].imag = (pData_temp[6].imag);
        //  pData_temp[27].real = (pData_temp[7].real);
        //  pData_temp[27].imag = (pData_temp[7].imag);

        //  pData_temp[28].real = (pData_temp[0].real - pData_temp[8].real)/2;
        //  pData_temp[28].imag = (pData_temp[0].imag - pData_temp[8].imag)/2;
        //  pData_temp[29].real = (pData_temp[1].real - pData_temp[9].real)/2;
        //  pData_temp[29].imag = (pData_temp[1].imag - pData_temp[9].imag)/2;
        //  pData_temp[30].real = (pData_temp[2].real - pData_temp[10].real)/2;
        //  pData_temp[30].imag = (pData_temp[2].imag - pData_temp[10].imag)/2;
        //  pData_temp[31].real = (pData_temp[3].real - pData_temp[11].real)/2;
        //  pData_temp[31].imag = (pData_temp[3].imag - pData_temp[11].imag)/2;

      for(cntjj=0;cntjj<12;cntjj++)
        {
            pData_temp[cntjj] = pData_temp[20 + cntjj];//change for new static detection chain
        }

     Datasave_Mss_TCMA_p[cntkk] = pData_temp[3];
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk] = pData_temp[1];
     cntkk++;

     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[2].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[2].imag;
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[0].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[0].imag;
     cntkk++;

     Datasave_Mss_TCMA_p[cntkk] = pData_temp[11];
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk] = pData_temp[9];
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk] = pData_temp[7];
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk] = pData_temp[5];
     cntkk++;

     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[10].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[10].imag;
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[8].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[8].imag;
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[6].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[6].imag;
     cntkk++;
     Datasave_Mss_TCMA_p[cntkk].real = pData_temp[4].real;
     Datasave_Mss_TCMA_p[cntkk].imag = pData_temp[4].imag;
     cntkk++;
    }