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.

AWR1243: Chirp configuration

Part Number: AWR1243


I have several questions for configuring the chirp profile using the sample configuration provided by the dfp package:

#
#Profile config parameters, please modify if needed.
#rlProfileCfg_t
#
profileId=0;
startFreqConst=1439117143;
idleTimeConst=1000;
adcStartTimeConst=600;
rampEndTime=6000;
txOutPowerBackoffCode=0;
txPhaseShifter=0;
freqSlopeConst=621;
txStartTime=0;
numAdcSamples=256;
digOutSampleRate=10000;
hpfCornerFreq1=0;
hpfCornerFreq2=0;
rxGain=30;
#END

#
#Chirp Configuration parameters, please modify if needed.
#rlChirpCfg_t
#
chirpStartIdx=0;
chirpEndIdx=127;
profileIdCPCFG=0;
startFreqVar=0;
freqSlopeVar=0;
idleTimeVar=0;
adcStartTimeVar=0;
txEnable=1;
#END

#
#Frame configuration parameters, please modify if needed.
#rlFrameCfg_t
#
chirpStartIdxFCF=0;
chirpEndIdxFCF=127;
frameCount=0;
loopCount=1;
periodicity=20000000;
triggerDelay=0;
numAdcSamples=512;
triggerSelect=1;
#END

1. If the start frequency constant is set (startFreqConst) does the startFreqVar have to be the same? Why are there two settings? Same for other parameters Const vs. Var?

2. First the numAdcSamples is set to 256 and then later it's set to 512. Why are they different and why are there two settings?

3. When I set loopCount=8 it works. But when I set loopCount=16 it does not work (start)? I have to increase the periodicity value then it works. Why is that there should be enough time for many chirps?

Thanks.

  • Hi Daniel,

    1) Every chirp is associated with a profile and uses values for parameters like start frequency which are defined in the profile configuration. On top of these base values, it is possible to add small variations to each chirp that uses a profile. This kind of dithering is done using parameters like startFreqVar. This allows many chirps to use the same base profile but to individually have small variations added to it for dithering.

    2) The actual number of ADC samples are defined in rlProfileCfg_t and is 256 in this example. The rlFrameCfg_t.numAdcSamples is a different parameter that controls the number of half-words of data that are sent out from the device. In complex1x or complex2x mode, this would normally be programmed to twice the value of rlProfileCfg_t.numAdcSamples.

    Please refer to the mmWaveLink Documentation for the rlFrameCfg_t and rlProfileCfg_t structures for the definition and explanation of these parameters.

    3) The frame configuration in this example above specifies a frame periodicity of 100ms with 128 chirps per loop. The profile and chirp configuration in this example specify each chirp to have 70  us periodicity. So a frame with 8 loops of 128 chirps each would take 71.68 ms (==70 us * 128 * 8 ) and a frame with 16 loops of 128 chirps each would take 143.36 ms (== 70 us * 128 *16). The latter number is more than the programmed frame periodicity of 100ms.

    This is why you are unable to program loopCount = 16 and need to increase the frame periodicity for this.

    Best Regards,

    Anand