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.

RTOS/CC3220SF-LAUNCHXL: Can't see Tasks in Execution Graph

Part Number: CC3220SF-LAUNCHXL

Tool/software: TI-RTOS

Dear TI,

I am using TI-RTOS with CC3220 launchpad with my custom application. I am trying to analyze the execution of my tasks, but I can't get it to work.

My release.cfg file has the following Logging configuration:

BIOS.logsEnabled = true;
/* ================ Logging configuration ================ */ var Log = xdc.useModule('xdc.runtime.Log'); /* * Modules and the application code generate Log_Event events by calling * the Log module's functions. * Disabling all Log statements here will allow the optimizer to completely * remove all Log code from the application. * * Note: In order to generate Log events in your application both the Diags * and the Log mask must be set. See the SYS/BIOS API guide for * more information. */ /* * LoggingSetup configures TI-RTOS modules to capture user-specified information * such as CPU Load, Task Load and Task Execution so that it can be * displayed by System Analyzer. */ var LoggingSetup = xdc.useModule('ti.uia.sysbios.LoggingSetup'); LoggingSetup.loadLoggerSize = 256; LoggingSetup.mainLoggerSize = 512; //LoggingSetup.sysbiosLoggerSize = 1024; LoggingSetup.sysbiosLoggerSize = 2048; LoggingSetup.mainLogging = true; LoggingSetup.loadLogging = true; LoggingSetup.sysbiosTaskLogging = true; LoggingSetup.sysbiosSwiLogging = true; LoggingSetup.sysbiosHwiLogging = false;

But when I use the Execution Graph, I only get unknown Tasks (see below). Probably this is because when I enable the Task Load, I get the warning that application is not instrumented for Task Load ("Inadequate" it says). However, as you could see above I enabled both Task and Swi logging. What am I doing wrong?

  • Hi MJ,

    I expect the Swi logging is flooding the log buffer, so you are not getting any task information. Note: the execution graph needs a task context log record to know what task is running. If the log buffer just has Swi records, it cannot determine what task is really running. In this case, the execution just give "unknown" for the task.

    Ways to fix this:
    1. Make the log buffer large.
    2. Remove Swi logging
    3. Move to a different logger that sends out the log records via the USB or UART.

    I'd do #2 first, just to confirm that I'm correct in the analysis.

    Todd
  • I did Option #2 first, and indeed when I removed the Swi logging the tasks came up.
    So your analysis is correct. Thanks a lot!

    MJ