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.

IWR1642: How to calculate the peakval to db scale?

Part Number: IWR1642

Hi team,

Customer had issue to calculate the peakval to db scale.

For example: as you can see in attach picture, the peakval_A from detected object list is 16110, the peakval_B from "Range Profile for zero Doppler" is 44719, The dB scale value in "Range Profile for zero Doppler" is 126.6dB

I understand you are using 10*log(peakval ) to get the dB value. But the peakval in detected object list is not match the "Range Profile for zero Doppler".

I understand that db_val in "Range Profile for zero Doppler" is calculate by

dB_value = Peak_val*1/(256*TX_antenna_number*RX_antenna_number)*20*log(2)+dspFftScaleCompAll_log

So, 44719*1/(256*2*4)*20*log10(2)-6.0206 = 125.44dB, because of the capture is not in the same time, so a small error is accepted. it matchs the value in "Range Profile for zero Doppler" figure. 

But in this equation, Peak_val is generate by incoherent superposition 8(2T4R) channel value. It's different to the peakval in detected object list.

Because peakval in detected object list is pick after azimuth FFT is done, so how to convert it to same dB scale as "Range Profile for zero Doppler"

How to convert 16110 to 126.6dB??

Thanks.

Regards,

Wesley

  • the test is base on SDK2.0.0.4, ES2.0 IWR1642 OOB demo.
    The configuration is listed below:

    sensorStop
    flushCfg
    dfeDataOutputMode 1
    channelCfg 15 3 0
    adcCfg 2 1
    adcbufCfg -1 0 0 1 0
    profileCfg 0 77 429 7 57.14 0 0 70 1 256 5209 0 0 30
    chirpCfg 0 0 0 0 0 0 0 1
    chirpCfg 1 1 0 0 0 0 0 2
    frameCfg 0 1 16 0 100 1 0
    lowPower 0 1
    guiMonitor -1 1 1 0 0 0 1
    cfarCfg -1 0 0 8 4 4 0 5120
    cfarCfg -1 1 0 4 2 3 0 5120
    peakGrouping -1 1 1 1 1 255
    multiObjBeamForming -1 1 0.5
    clutterRemoval -1 0
    calibDcRangeSig -1 0 -5 8 256
    extendedMaxVelocity -1 0
    bpmCfg -1 0 0 1
    lvdsStreamCfg -1 0 0 0
    nearFieldCfg -1 0 0 0
    compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
    measureRangeBiasAndRxChanPhase 0 1.5 0.2
    CQRxSatMonitor 0 3 5 123 0
    CQSigImgMonitor 0 127 4
    analogMonitor 1 1
    sensorStart
  • Hi Wesley,

    The conversion of peakVal to dB in the OOB Demo Visualizer is explained in the following response:

    IWR1642: [SDK message output] How to form peakVal to relative power (dB)

    Regards

    -Nitin

  • Hi Nitin,

    I had read this source code, and i can calculate using this equation, but it's not enough.

    My questions is how to calculate the peakval in detected object list to same dB scale as "Range Profile for zero Doppler".

    Thanks.



    For example: as you can see in attach picture, the peakval_A from detected object list is 16110, the peakval_B from "Range Profile for zero Doppler" is 44719, The dB scale value in "Range Profile for zero Doppler" is 126.6dB

    I understand you are using 10*log(peakval ) to get the dB value. But the peakval in detected object list is not match the "Range Profile for zero Doppler".

    I understand that db_val in "Range Profile for zero Doppler" is calculate by

    dB_value = Peak_val*1/(256*TX_antenna_number*RX_antenna_number)*20*log(2)+dspFftScaleCompAll_log

    So, 44719*1/(256*2*4)*20*log10(2)-6.0206 = 125.44dB, because of the capture is not in the same time, so a small error is accepted. it matchs the value in "Range Profile for zero Doppler" figure.

    But in this equation, Peak_val is generate by incoherent superposition 8(2T4R) channel value. It's different to the peakval in detected object list.

    Because peakval in detected object list is pick after azimuth FFT is done, so how to convert it to same dB scale as "Range Profile for zero Doppler"

    How to convert 16110 to 126.6dB??
  • Hi Wesley,

    Do you still need support on this topic?

    Regards
    -Nitin