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.

CC3200: How to config TIRTOS memory size?

Part Number: CC3200

Hi there,

             I have a issue about stack size in TIRTOS.

I have several task running, if i changed the stack size in one of the task, it runs and if i roll back to previous stack size. There is a problem in wifi connection.

1. osi_TaskCreate( Wifi_Task, (const signed char*)"Wi-Fi Task", 2048, NULL, 1, NULL )
2. osi_TaskCreate(T1_Task, "T1_Task", 1024, NULL, 6, NULL)
3. osi_TaskCreate( T2_Task, "T2_Task", 2048, NULL, 1, NULL );
4. osi_TaskCreate(T3_Task, "T3_Task", 2048, NULL, 10, NULL)
5. osi_TaskCreate(T4_Task, "T4_Task", 2048, NULL, 10, NULL) 

If i changed the stack size of T1_Task to 512 then all task works but if i changed back to 1024 then there is no wifi connectivity. 

Is there any memory setting for TIRTOS library?

  • Hi,

    It seems that you may to have stack overflow. In this case can be behaviour pretty odd. You should to use ROV in CCS and examine how much stack do you need.

    Function osi_TaskCreate() allocate stack from heap at moment of calling function. You should check if you have set sufficient size of heap as well.

    btw ... you not read return codes from osi_TaskCreate() and it may to happens that your tasks are not created. You only not know about that...

    Jan

  • Hi Jan,

                If it was stack overflow. I could have seen the message error message in CCS software. I found the solution.

    //BIOS.heapSize = 0x8000;
    Program.heap = 0x8000

    I increased the heap size for TI RTOS in app.cfg file. After increasing the Program.heap=0x8800, all my task was running.