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.

AWR1642: different config sequence has different duty cycle and Postproc shows wrong frame information

Part Number: AWR1642

                                                                                   (1) confgi order 1

                                                                               (2) config order 2

                                                                                         fig1 config

                                                                                                       (1)selecting "Chirp configs are processed seperately", Config=1/128, Chirp=1/2

                                                                                                         (2)selecting "Chirp configs are processed seperately", Config=90/128, Chirp=1/2   

                                                                                                                              fig2 selecting "Chirp configs are processed seperately"

                                                                                                            (1)"Chirp configs with dissimilar profileID are processed seperately", Chirp=1/256

                                                                                                                      (2)"Chirp configs with dissimilar profileID are processed seperately", Chirp=90/256

                                                                                                                                  fig3 "Chirp configs with dissimilar profileID are processed seperately"

Describe:

1/

I am using AWR1642+RTSW1400 to capture adc date. and using postproc in mmwave studio check the adc data.

See, fig1(1) an fig1(2), i config a frame,

chirps 0~63: idle time 3us,TX0 is ON

chirps 64~127: idle time 14.8us. TX1 is ON

other parameters are same.

I think one frame structure is 0~63+64~127+0~63+64~127.

 

In fig1(1) I first config chirp 0~63, then chirp 64~127.

In fig1(2) I first config chirp 64~127, then chirp 0~63.

I think fig1(1) an fig1(2) will have the same result, but the have different duty cycle.

 

2/

I use 2 different miscellaneous options to postproc data to solve 2D FFT problem, see more detail in the thread https://e2e.ti.com/support/sensor/mmwave_sensors/f/1023/p/718405/2658554#2658554 .

 

In in the right side of fig2(1), I think “config 1/128” means “start chirp TX” ~ “end chirp TX” which lies in frame config in  fig1.  “chirp1/2” means “No of chirp loops” which lies in frame config in fig1.

 

In in the right side of fig2(2), I think “Chirp 1/256” in the right side of fig2(2) corresponds to the frame structure 0~63+64~127+0~63+64~127.

3/

But postproc shows wrong information, see part 4.

4/

(1) when selecting "Chirp configs are processed seperately", I have fig2(1) and fig2(2).

choose chirp=1/2:

For fig2(1): Config=1/128,

Postproc shows: idle time=14.8us, tx enable=1 0 0, However, idle time should be 3us.

For fig2(2):Config=90/128

idle time=14.8us, tx enable=0 1 0, it is right.

 

I get the same result when chirp=2/2.(I do not up load pictures of chirp=2/2)

 

Actually idle time=14.8us for all the Comfig=X/128 when I first config chirp0~63, and then config 64~128.

If I first config chirp64~128, and then config0~63, idle time=3us for all the Comfig=X/128.In this case fig 2: plot of Config=1/128 will be right, plot of Config=90/128 will be wrong.

 

(2)when selecting "Chirp configs with dissimilar profileID are processed seperately", I have fig3(1) and fig3(2).

 

For fig3(1),choose Chirp=1/256,

Postproc shows: idle time=14.8us, tx enable=1 0 0.

I think Chirp=1/256 coresponds to chirp0, and idle time should be 3us.

 

For fig3(2):Chirp=90/256,

Postproc shows: idle time=14.8us, tx enable=1 0 0

I think Chirp=90/256 coresponds to chirp89, and tx enable should be 0 1 0.

 

For Chirp=129/256

I think it corresponds to Chirp=1/256, and the result is the same to Chirp=1/256

For Chirp=218/256

I think it corresponds to Chirp=90/256, and the result is the same to Chirp=90/256

(I do not up load pictures of Chirp=129/256 and Chirp=218/256)

 

Actually idle time=14.8us for all the chirp=X/256 when I first config chirp0~63, and then config 64~128.

If I first config chirp64~128, and then config0~63, idle time=3us for all the Comfig=X/256. In this case all plot of chirp=X/256 will have idle time =3us and tx enable=1 0 0

 

Question:

1/

Why Fig1(1) and Fig1(2) have different duty cycle?

2/

I want to confirm my description in Describe 2 is right.

3/

Why fig 2~fig 3 shows wrong frame information(corresponding to Describe 4)?

4/

because of the problem in question 1~3, i do doubt  whether the plot is right or not in fig3.

 

  • Hi Rongjiang,

    If you intend to have 128 chirps with chirp 0-63 having idle time of 3us and chirp 64-127 having an idle tiem of 14.8 us, then you need to use 2 different profiles. You cannot use the same profile for both sets of chirps.

    The difference in duty cycle shown by the tool is because you are using the same profile id for both, so your second call to set profile config 0 will overwrite the first call.

    Could you please change your configuration sequence in figure 2 accordingly?

    Best Regards,
    Anand
  • Thank Anand.

    1/

    I try to use different profileID for chirp 0~63 and 64~127. And indeed , postproc shows right infromation , but only in "Chirp configs are processed seperately" option.

    When i chooes "Chirp configs with dissimilar profileID are processed seperately", "Chirp X/256" in  the postproc all shows profileID=0, txenale= 1 0 0 .I think it wrong.

    i think when selecting  "Chirp configs with dissimilar profileID are processed seperately" :

    Chirp 1/256~ Chirp 64/256 should be profileID=0, txenale= 1 0 0, 

    Chirp 65/256~ Chirp 128/256 should be profileID=1, txenale= 0 1 0,

    Chirp 129/256~ Chirp 192/256 should be profileID=0, txenale= 1 0 0,

    Chirp 192/256~ Chirp 256/256 should be profileID=1, txenale= 0 1 0,

    in other words: 

    in "Chirp configs are processed seperately" option, using different profileID resolve the wrong information, but does not resolve 2D FFT plot.

    in "Chirp configs with dissimilar profileID are processed seperately" option, using different profileID does not resolve the wrong information,  resolves 2D FFT plot.

    2/ TI allows user config 512 chirps, which belong to 4 profileIDs.

    According to your reply, the chirps which has the same profileID must be configed at the same time by using Pfofile Configuration and Chirp section in the SensorConfig tab of mmwave studio.

    In other words,the chirps which has the same profileID must have some kinds of algebra relations (by using frequency slope var, idles time var,and so on )

    Right?

    3/ if  the chirp0~chirp255 all has different profile parameters, and  the parameters  can not  have some kinds of algebra relations, i will can not config chirp0~chirp255, and i can only config 4 chirps from chirp0~chirp255, because the fifth chirp will overwrite one of the 4 chirps before.

    Right?

  • Hi Rongjiang,

    1)
    The information shown in the programmed parameters field for txEnable may be a little misleading. This portion is not updated live, so do not depend on it.

    I'm afraid I do not understand what you are trying to do in the post processing - maybe if you explain what you are looking for, we can help you choose the appropriate options.

    2)

    You do not need to configure chirps with the same profile ID at the same time - you can configure chirps in any order you like.
    But the important thing is that chirps with the same profile ID will use the same base settings (which are configured as part of the profile config APIs), and only a few settings can be changed per chirp (like frequency slope var, idle time var; which are configured using chirp config APIs).

    3)

    The device only supports 4 profiles. You can configure up to 255 chirps, but they must all use exactly one of these four profiles.

    Hope this helps.

    Best Regards,
    Anand
  •                                                                                                    fig4 config a frame

    (1)selecting "Chirp configs are processed seperately", Config=1/128, Chirp=1/2

    (1)selecting "Chirp configs are processed seperately", Config=90/128, Chirp=1/2

    fig5 selecting "Chirp configs are processed seperately"

    (1)selecting "Chirp configs with dissimilar profileID are processed seperately", Chirp=1/256

    (2)selecting "Chirp configs with dissimilar profileID are processed seperately", Chirp=90/256

    fig6 selecting "Chirp configs with dissimilar profileID are processed seperately"

    Sorry, Anand.  too many confusion want to say. I want to correspond  each chirp conguration to each plot and parameter in postproc.

    let me re-write for question 1 in your last post.

    1/ first i config a frame, see fig4

    key point of chirp and frame :

    chirp 0~63     profileid=0, TX0=1, other TX =0

    chirp 64~127 profileid=1, TX1=1, other TX=0

    No of chirp loops =2

    So i think a frame is chirps 0~63 + chirps 64~127 +chirps 0 ~63 + chirps 64~127.

    and the TX in a frame is TX0TX0...(0~63)+TX1TX1...(64~127)+TX0TX0...(0~63)+TX1TX1...(64~127).

    2/After capture adc and postproc, i have two different result:

    for selecting "Chirp configs are processed seperately", see fig5:

    informarion for chirp is correct, for example Config=1/128, Chirp=1/2  and Config=90/128, Chirp=1/2

    But i can not get 2D FFT plot

    Indeed i can get 2D FFT plot by selecting Chirp configs with dissimilar profileID are processed seperately", but something is wrong in this option

    for selecting "Chirp configs with dissimilar profileID are processed seperately", see fig6:

    Though i get 2D FFT, but the frame/chirp information is wrong, for example Chirp=1/256 and Chirp=90/256 show me parameters of chirps 0~63.

    I think when i set Chirp=90/256, the frame/chirp information should be the  parameters of chirps 64~127.

    And i aslo set Chirp=129/256 and Chirp= 218/256.l think Chirp=129/256 coresponds to Chirp=1/256, and Chirp= 218/256 corresponds to Chirp= 90/256. However, Chirp=129/256 and Chirp= 218/256 have the same result of Chirp=1/256 and Chirp= 90/256. Actually i try chirp=1/256~256/256, all the results are like fig6. it seems chirp 1/256~256/256  all have the same parameters.

    3/ you see from 2/,

    two miscellaneous options have mistake.

    Those mistakes makes me doublt whether the plot is right and whether the corresponding between plot and chirps is right.

    4/ Also i want to know why two miscellaneous options have two different plot result.

    I use TI's matlab script in swra581-xWR1xxx ADC Raw Data Captur to to process the adc data and encounter the same problem in fig5, no 2D FFT plot.

    mmwave studio can plot by selecting another option, like fig6. But i do not know how to do in TI's matlab script. I do not know the corresponding between TI's matlab script changing and the option of "Chirp configs with dissimilar profileID are processed seperately".

    Randy reply to me this question in the thread https://e2e.ti.com/support/sensor/mmwave_sensors/f/1023/t/718405 . But i can not understand his reply well very.

    So i reply  to him in a new thread https://e2e.ti.com/support/sensor/mmwave_sensors/f/1023/p/720655/2665172#2665172 . he does not reply to me until you closing that thread.

    Maybe i should open a new thread after you help me sovle the questions above in this htread. Or maybe you can help me solve in this htread at the same time.

  • 1) You currently have 64 chirps with TX0 enabled followed by 64 chirps with TX1 enabled, repeated twice. You will have to figure out which chirps to use for the 2D FFT; RadarStudio currently does not allow for easy processing of this configuration.

    If you are flexible withyour waveform, you can try the following setting:

    This will let you process all the 128 profile0 chirps together and the 128 profile 1 chirps together and give you two configurations that you can see in RadarStudio's post processing tool.

    2) The 2D FFT plot is not shown by RadarStudio - as mentioned above, this is not a configuration that RadarStudio's post processing currently understands.

    3) and 4) We need to check about the option ""Chirp configs with dissimilar profileID are processed seperately" - for now, please assume it is not a supported option. I will get back to you with more information on this option shortly.

    For now, if you want to post process a configuration like yours, the best option is to post process it in Matlab yourself.

    Regarding the different threads: in general, if you do not understand a reply, it is perfectly okay to continue asking in the same thread. In general, if you want to ask a follow-up question, please continue in the same thread. Otherwise, it becomes difficult to correlate the old answers with the new questions.

    But in general, if you want to ask a different question, it is better to open a new thread.

    Best Regards,

    Anand

  • Thanks Anand. Your reply helps me a lot.

    1/ for your suggest  config above, i can get 2D FFT plot. But your config is different from my initial config.

    Your config reuslt in TX0_TX1_TX0_TX1...., My config is TX0_TX0...TX1_TX1....

    PS: plot is a little different when selecting differernt miscellaneous options.i think it is  reasonable.

    2/  for fig6, i hope plot is right and here just is a wrong chirp information showing bug.

    3/ waiting for  your checking result.

  • Sorry, i forget a question.

    4/ you replied that studio can not understands my configurations of 64 chirps with TX0 enabled followed by 64 chirps with TX1 enabled when miscellaneous option is like fig5. So it can not plot 2D FFT plot.
    But why studio can plot 2D FFT when miscellaneous option is like fig6. Does it mean studio can understands my configurations in this option?
  • Hi Rongjiang,

    I'm afraid the miscellaneous option feature is an experimental feature and is not supported. So you will need to postprocess data for your configuration yourself in Matlab.

    The post processing included in RadarStudio will treat different chirps differently by default (Option "Chirp configs are processed separately", and the other option allows the tool to treat chirps with the same profile ID as similar, and with different profile IDs as different (Option "Chirp configs with dissimilar profileId are processed separately"). This second option is experimental, so we cannot recommend using it. So the only option for you is to postprocess this outside RadarStudio using your own processing tools.

    For your question 4,

    RadarStudio does not understand your option - but it makes some assumptions and attempts to plot the 2D FFT. This assumption may not be correct for your configuration, so you should not depend on the 2D FFT plot - you should instead compute the 2D FFT as you like using the raw data in the adc_data.bin file.

    Best Regards,
    Anand
  • OK, i understand completely.
    Thanks very very very very very very very much
  • when selecting "Chirp configs with dissimilar profileID are processed seperately", studio treats all the chirps as the same profile ID.
    i think that is why postproc shows the same chirp information.
  • No, this may be a bug in the code. But again, it's an experimental feature so you should not depend on this behavior.
  • OK, i see. thanks !!!