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.

MCU-PLUS-SDK-AM273X: Cascading waveform configuration idletime cannot be set arbitrarily (only a small value)

Part Number: MCU-PLUS-SDK-AM273X

Debugging background: Cascade sampling demo from SDK4412, DDM mode, the amount of data should not change because of the increase in the number of transmitting antennas, according to the official website schematic self-made cascade board.

We had a problem with the waveform configuration while debugging the data collection program,

When all antennas of our two radars are fired (6Tx), the idletime can only be set for a very short time, basically 8us and below.

For example, 3us, but we want to configure this time arbitrarily, such as 65us and other times, as follows, but in this case, we have no data sent by lvds.

This problem also exists when debugging the applied cascade software package. When the waveform configuration idleTime is relatively large, it will die soon after the radar is started.

A single radar is fired 3Tx, the other does not launch, you can set a large idle time, can collect data.

I would like to ask, what might be the reason for this problem? Is there a similar problem in official cascade board mining commissioning? Have you ever tried the value of having more idletime?

static void Mmwave_populateDefaultProfileCfg (rlProfileCfg_t* ptrProfileCfg)
{

/* 初始化配置文件配置: */
memset ((void*)ptrProfileCfg, 0, sizeof(rlProfileCfg_t));

/* 填充 *默认* 配置文件配置: */
ptrProfileCfg->profileId = 0;
ptrProfileCfg->startFreqConst = START_FREQ_VAL;//80G
ptrProfileCfg->idleTimeConst = 65 * 1000 / 10;
ptrProfileCfg->adcStartTimeConst = 5 * 1000 / 10;
ptrProfileCfg->rampEndTime = 60 * 1000 /10;
ptrProfileCfg->txOutPowerBackoffCode = 0;
ptrProfileCfg->txPhaseShifter = 0;
ptrProfileCfg->freqSlopeConst = FREQ_SLOPE_VAL;//2Mhz/us
ptrProfileCfg->txStartTime = 1 * 1000 / 10;
ptrProfileCfg->numAdcSamples = 256;
ptrProfileCfg->digOutSampleRate = 20000;
ptrProfileCfg->hpfCornerFreq1 = 0;
ptrProfileCfg->hpfCornerFreq2 = 0;
ptrProfileCfg->rxGain = 52;


}

some related instructions are as follows:

  1.  the frame period is set to 100 mode at 65us, because it has not been working, later debugging a smaller idletime, found that idletime=9us can not be collected;
  2. In the case of our test, if idletime=9us, the data cannot be collected normally. In this case, the frame period of 100ms, 200ms and 500ms has been tried, which is not possible. In addition, the rampEndTime has been adjusted to 120us, but the data cannot be collected either.
  3. It is debugged on the basis of C:\ti\mmwave_mcuplus_sdk_04_04_01_02\mmwave_mcuplus_sdk_04_04_01_02\ti\utils\test\cascade, which has phase shift. I also tried to mask the Chirps part of Configure PhaseShift, which did not affect the idle time=8us available data, 9us no data.
  4. Because when idle time< =8us, there is data extraction, so the necessary mmwavelink API has been correctly configured.
  5. Both LVDS and CSI callbacks are no longer triggered when LVDS has no data mined. gMmwCascadeMCB. LvdsStreamcfg. LvdsStream swFrameDoneCount, and gCSIRXState [0]. CallbackCount.com binedEOL, all won't change.
  6. In the same configuration, idle time=8us can capture data, while idle time=9us cannot capture, which is indeed the only difference.

 can you actually debug whether this idle time will have any impact? If not, please let us know your configuration so that we can check our procedures. Thank you.

  • Hi,

    1. You need to calculate the transfer time for given generated chirp data and under given chirp duration (active+idle time). This calculation needs to check compare to the streaming data rate (LVDS or CSI2 interface).

    2. all the devices must have same set of the RF configuration but you can select which device you want to transmit the signal or not based on TX enable in the chirp config API of each individual device (out of cascade system).

    3. Please make sure to check the return value of each mmWaveLink API which Host processor is invoking to each individual AWR device. If any API fails and ignored then functionality will not be as expected.

    .

    Regards,

    Jitendra