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.

CCS/TM4C1294NCZAD: FreeRTOS debugging support in Code Composer

Part Number: TM4C1294NCZAD
Other Parts Discussed in Thread: TM4C1294NCPDT, EK-TM4C1294XL

Tool/software: Code Composer Studio

Hello all,

I'm working on a FreeRTOS multi-thread application, and when debugging it I see no option in Code Composer debug perspective (CCS version 9) to view running task's name, nor any statistics.

I've come to the conclusion that FreeRTOS is not natively supported in CCS, but being it derived from Eclipse, does any of you know about an Eclipse-compatible plug-in to be used instead?

Thank you, bye

Manuele

  • Manuele,

    We don't have anything special natively in CCS for FreeRTOS debugging. Our Runtime Object View tool in CCS only supports TI-RTOS.

    High Integrity Systems had a StateViewer Eclipse plug-in. www.highintegritysystems.com/.../

    However I was never able to get that to work in CCS.  It is possible that it assumes that gdb is being used as the debugger.

    Perhaps other users on the forum have some suggestions.

    Regards,
    John

  • I have the same issue; we prefer FreeRTOS as we have some depth of knowledge in-house from previous projects on different hardware, but it seems that CCS is forcing users to chose TI-RTOS or go it alone with no support. (just my $0.02's). I didn't select the uProc for the system we are using now, but I have to develop the FW for it.

    Does TI have any resources that describe getting started with Eclipse rather than CCS? If there are 3rd party plug-ins for Eclipse, I may have to go down that road...
  • Keith,

    I think what you are looking for is how to configure gdb with a TI MCU & TI debug probe.  That they can be used by Eclipse.

    There is some information available on that here:
    dev.ti.com/.../node

    If you are using a TI XDS on-board debug probe or external XDS you will need the necessary software. That software comes with CCS so you can configure CCS to use gdb or if you want to use your own Eclipse you could install the required software. The link to that software is at the above link.

    Regards,
    John

  • The best answer I've found came from Ki-Soo Lee at TI.

    If the device you are using has SWO Trace capability: e2e.ti.com/.../802371
  • Not sure if anyone has tried this tool: www.freertos.org/.../FreeRTOS_Plus_Trace.shtml

    It sounds like you can add a library to your application that exports the trace data over USB or TCP/IP. The viewer then converts that data stream into a number of useful debugging displays. You would load your application via CCS and then have this running beside it.

    Regards,
    John
  • I haven't tried it myself, but the The Stateviewer Plugin page says:

    Stateviewer allows the inspection of FreeRTOS/OpenRTOS kernel task, queue and timer objects, and SafeRTOS kernel task and queue objects, within Eclipse-based IDEs using CDT 7.0 and later versions via the standard DSF debugging interface.

    ...

    * In theory, Stateviewer should work with any debugging backend that interfaces via DSF (not just the GDB backend). The Code Composer Studio debugging backend is an example of non-GDB backend that works with StateViewer.

  • I installed WHIS StateViewer 2.0.13.201903221121 into CCS 9.0.1 running under Linux, and with a FreeRTOS v7.0.2 project for a TM4C1294NCPDT the Task Table view then was able to display the tasks:

    For the above the stack check was enabled in the Task Table view.

  • JohnS said:
    High Integrity Systems had a StateViewer Eclipse plug-in. www.highintegritysystems.com/.../

    However I was never able to get that to work in CCS.  It is possible that it assumes that gdb is being used as the debugger.

    I have had a look at StateViewer 2.0.13.201903221121 installed in CCS 9.0.1 with a TM4C129 FreeRTOS example which exercises more FreeRTOS functionality to test all the views.

    Picked the EK-TM4C1294XL senshub_iot example from TivaWare_C_Series-2.1.4.178 since this example:

    a. Uses FreeRTOS Software Timers

    b. Has configured a timer to provide Run Time Statistics

    1) The OpenRTOS -> Task Table view is displaying the tasks containing the Min Free Stack, Total Runtime and Delta Runtime information:

    2) The OpenRTOS -> Queue Table is showing the TmrQ queue created by FreeRTOS to manage the software timers:

    3) The OpenRTOS -> Timer Table is showing the software timers used by the example:

    Also, as noted by the OPENRTOS APPLICATION NOTE: #34-185-AN-001 INSTALLING AND USING THE WHIS STATEVIEWER KERNEL AWARE PLUG-IN FOR ECLIPSE the Queue Table only displays entries for queues and semaphores which have been registered by calls to vQueueAddToRegistry(). I modified a different example to add calls to vQueueAddToRegistry() for "g_pLEDQueue" and "g_pUARTSemaphore" which were then displayed in the Queue Table:

    In conclusion StateViewer Eclipse plug-in is working with CCS 9.

  • That is great Chester.  For me the last time I tried it all of the tables were completely blank.

    John