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.

CCS/IWR6843ISK: IWR6843ISK & DCA1000 Post Process Values

Part Number: IWR6843ISK

Tool/software: Code Composer Studio

Hello,

Currently, Im trying to extract the output data shown in the graph by mmWave Studio Post Processing. I was able to extract the ADC raw data values but I do not understand how these values can be processed to produce the shown results of the Post Processing. Is there any other way to extract the post processing data rather than processing ADC raw data? If not, how do I process the ADC raw data based? 

I know the code cannot be shared, however I would really appreciate if someone could help guide me in giving the method to process the ADC raw data. Thank you

  • Hi Harold,

    I've asked an expert to look into this and we should have an answer for you later this week.

     

    Cheers,

    Akash

  • Hi, Harold:

    If you download the radar studio, you can find the raw data format in section 24.8 (DCA1000 EVM capture format (xWR16xx complex, 4 channel, 2 lanes).   You can load the binary data and process it based on the format.   

    C:\ti\mmwave_studio_02_01_00_00\docs\mmwave_studio_user_guide.pdf

    Note that the data format for xWR16xx, xWR18xx, xWR68xx are all the same.

    Best,

    Zigang

  • Hello Zigang,

    I have been able to extract binary data but i do not understand the information being shown. 

    I am unable to process this data.

  • HI, 

    Here attached the format for the binary data.

    And here is an example MATLAB script on how to process one frame of ADC data from binary file.  And at the end, the adcOut matrix is 3 dimension array, with first array is ADC samples, second dimension is for different chirp, the third dimension is for different TX-RX antenna pair.

    fid = fopen(fname,'r');
    dataChunk = fread(fid,numSamplesPerFrame*2,'uint16','l');
    fclose(fid);

    dataChunk = dataChunk - (dataChunk >= 2^15) * 2^16;

    % radar_data has data in the following format.
    % Rx0I0, Rx0I1, Rx0Q0, Rx0Q1, Rx0I2, Rx0I3, Rx0Q2, Rx0Q3, ...
    % The following script reshapes it into a 3-dimensional array.
    len = length(dataChunk) / 2;
    adcOut(1:2:len) = dataChunk(1:4:end) + 1j*dataChunk(3:4:end);
    adcOut(2:2:len) = dataChunk(2:4:end) + 1j*dataChunk(4:4:end);
    %clear dataChunk
    adcOut = reshape(adcOut, Chirp_NUM_ADC_sample_size, numTXAnt*4, Chirp_NUM_Chirps);
    adcOut = permute(adcOut, [1, 3, 2]);

    Best,

    Zigang