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.

IWR6843ISK-ODS: Some question about unit test of mmwave library (SDK3.3.0.03)

Part Number: IWR6843ISK-ODS
Other Parts Discussed in Thread: SYSBIOS, MMWAVEICBOOST, AWR1843BOOST

Hi all,

I have some doubts about the tests inside the packages\ti\control\mmwave of SDK3.3.0.03. YFI, I use an environment with a IWR6843ISK-ODS installed on a MMWAVEICBOOST.

1 - The 4 tests in minimal are the same included in the full tests?

2 - The last print of the test is "Feature: MMWave MSS Deinitialized: Passed". Is it correct? I expekt a conclusion like the other test:

******************************************
Debug: MmwaveLink Test completed
******************************************

3 - To running a test I have to set the gTestSelection global variable in MSS and DSS also.

     For the MSS I use the console windows in CCS. Instead for the DSS I have to use the "expressions" windows. Is this the correct way to work?

4 - I have some problem after each test of "Calibration Data Save/Restore". After these tests I cannot launch another test correctly, even if I reset the MMWAVEICBOOST with NRST button. The error happens when I running the DSS: 

[C674X_0] ti.sysbios.heaps.HeapMem: line 429: assertion failure: A_invalidFree: Invalid free
xdc.runtime.Error.raise: terminating execution

     The unique way that I have found to fix this problem is to power down and power up the board.

Regards,

Stefano

  • Hi Stefano,

    1. As the name suggests, the tests under minimal configure the mmWave library in MINIMAL config mode while those in under full configure it in FULL config mode.  Please refer to the mode definition MMWave_ConfigurationMode_e in C:\ti\mmwave_sdk_03_03_00_03\packages\ti\control\mmwave\mmwave.h

    2. Please allow me a few days to check the expected output and get back to you on this.

    3. Looking at the code for MMWaveLink_initTask in main_full_dss.c and main_full_mss.c, this is expected behavior. MSS reads the testSelection variable from stdin (concole) while DSS uses the global directly as shown below

    main_full_dss.c

        /* We are waiting for the test selection to be entered by the MSS. The DSS and MSS need
         * to work in cojunction with each other. */
        System_printf ("***************************************************\n");
        System_printf ("Waiting for the test selection to be entered by MSS\n");
        System_printf ("In CCS: Set the Global Variable 'gTestSelection'\n");
        System_printf ("***************************************************\n");
        while (1)
        {
            if ((gTestSelection >= 1) && (gTestSelection <= 9))
                break;
            Task_sleep(1);
        }

    main_full_mss.c

        System_printf ("8. [Cooperative Mode] MSS Calibration Data Save/Restore\n");
        System_printf ("9. [Cooperative Mode] DSS Calibration Data Save/Restore\n");
        System_printf ("*************************************************\n");
        System_printf ("Enter your choice: ");
        if (gMCPIEnable == 0) /* Run test from CCS */
        {
            fgets (inputString, 3U, stdin);
            gTestSelection = inputString[0] - '0';
        }

     4.  Please allow me a few days to check on this.

     

    I will get back to you on items 2 and 4 next week.

    Regards

    -Nitin

  • Hi Stefano,

    Thanks for your patience.

    Continuing with my previous responses:

    Item #2 - The last print of the test is "Feature: MMWave MSS Deinitialized: Passed". Is it correct? I expekt a conclusion like the other test:

    [NS]: This is correct output. You can compare the output with the SDK test logs in C:\ti\mmwave_sdk_03_03_00_03\docs\test\IWR68\module_test directory. Look at the following logs depending upon which test you are running:

    xwr68_DSS_mmwave_full_-_DSS_only_2019-09-04-07-01-23.log

    xwr68_R4_mmwave_full_-_MSS_only_2019-09-04-06-39-21.log 

    Item #4 I have some problem after each test of "Calibration Data Save/Restore". After these tests I cannot launch another test correctly, even if I reset the MMWAVEICBOOST with NRST button. The error happens when I running the DSS:

    [NS]: Could you try this on another MMWAEICBOOST + ISK combination? May be the NRST switch on your MMWAVEICBOOST is not resetting the device correctly.

    Regards

    -Nitin   

  • Hi Nitin,

    #1, #2 - Thanks for the explanation. 

    #3 - I understand the correct behaviour of the tests. But in my environment if I selected a value for the gTestSelection in MSS, it is not passed to the DSS automatically. I write "4" in the console but in DSS system I continue to see "0". For this reason I have to use the "expressions" window.  

    #4 - I don't have another MMWAVEICBOOST. However, I have tried the related tests on a AWR1843BOOST and the problem does not arise. 

    Regards,

    Stefano

  • Hi Stefano,

    #3: That's the expected behavior of the test. As you can see these are two separate global variables on two different cores and are not allocated in shared memory or passed between the cores through any messaging mechanism.

    #4: Please try this on another MMWAVEICBOOST when available and let us know if you still see the issue. We will also try to reproduce this at our end.

    Regards

    -Nitin