Debug with kernel aware plug-in Eclipse?

anonymous wrote on Wednesday, May 27, 2009:

Hello,

The Eclipse plug-in for kernel aware debug as available on the www.highintegritysystems.com website offers important advantages for debug. So I downloaded and installed it. My main question is: ‘How can I use it?’.

Details:
- yagarto / Eclipse (Ganymede) environment
- at91sam7s256 (ARM7)
- olimex jtag debugger
- Freertos 5.1.2
- plug-in is visible when searched for under the Eclipse installation

Everything works fine. I can compile / download / debug Freertos including my own tasks.
My questions are:
- How can I start the plug-in to enable kernel aware debug?
- Is there any documentation for the usage of the plug-in?

Thanks for your answers!

Thomas

rtel wrote on Wednesday, May 27, 2009:

You should have received a pdf file in the download with (most) of the information you require.  I believe the following text is missing however:

"Each FreeRTOS project includes a header file called FreeRTOSConfig.h, in which various FreeRTOS options can be configured.  Configuration options relevant to using the IAR State Viewer plug-in are configQUEUE_REGISTRY_SIZE and configUSE_TRACE_FACILITY.

If the version of FreeRTOS being used is older than version 5.2.0 then configUSE_TRACE_FACILITY must be set to 1.  In all other cases
configUSE_TRACE_FACILITY has no impact on the plug-in functionality.

FreeRTOS includes a ‘queue registry’ feature.  After a queue or semaphore has been created it can optionally be added to the queue registry using the FreeRTOS vQueueAddToRegistry() API function.  The plug-in will only display queues and semaphores that have been added to the registry.  The number of places available in the queue registry is configured at compile time using configQUEUE_REGISTRY_SIZE.  For example, to allow up to 10 queues and semaphores to be registered set configQUEUE_REGISTRY_SIZE to 10.  If configQUEUE_REGISTRY_SIZE is not included in FreeRTOSConfig.h then vQueueAddToRegistry() will have no effect and the plug-in will not display any queue or semaphore information. "

This text refers to the IAR plug-in but applies equally for the Eclipse plug-in.

Regards.

mikej42 wrote on Wednesday, May 27, 2009:

Hello Richard

Where can I find the IAR plug-in please?

Regards

Mike Newsome, Hi Tek Power Ltd

rtel wrote on Wednesday, May 27, 2009:

I’m just waiting for WITTENSTEIN to put it up on their WEB site (highintegritysystems.com), but then I’ve been waiting quite a long time ;o)

I’ve been promised it will be there by the end of the week - but be aware it will be in beta for a few weeks as IAR support way too many platforms to test it fully on each.  I have tried it on 16bit and 32bit successfully though.

Regards.

anonymous wrote on Wednesday, May 27, 2009:

Thanks for your answer! I found the ‘Installing and using the stateviewer for Eclipse.pdf’ in the Eclipse docs directory. Kernel aware debug works fine now.

Regards, Thomas

dksquires wrote on Friday, June 05, 2009:

I am currently using AVR32 Studio Version 2.0.2 and FreeRTOS V4.2.0 and recently installed the Wittenstein STATEVIEWER "Viewer plug-in" Version 1.0.5 for Eclipse. I had no trouble installing the plug-in or opening the two new (queue and task) table views.

I have set #define configUSE_TRACE_FACILITY to 1 in FreeRTOSConfig.h and rebuilt my project.
But when I run my FreeRTOS application in the debugger, I see no task information in the task table view when I pause at a breakpoint after numerous tasks are known to be running. Should this combination (AVR32 Studio and STATEVIEWER plug-in) work to show task information in the task table view? I realize that queue information is only available by registering the queues using the vQueueAddToRegistry() function.

I have now upgraded my FreeRTOS to V5.3.0 and have also added calls to the vQueueAddToRegistry() API function to register many of the semaphores and queues used in my application. I’ve set up the #define configQUEUE_REGISTRY_SIZE to 20 to handle more than the number of queues I am registering. However, when I run the debugger and pause after vTaskStartScheduler is called and the queues are created, I see no queue information in the queue table view. When I single-step the debugger through the vQueueAddToRegistry() function, I do see some information appear in a row of the queue table view, however then an internal error appears and no further information is presented. The Eclipse .log file does have some information about the errors, however I felt it prudent to ask the next question first before delving into the gruesome details of the errors. So…

Do I need to upgrade my AVR32 Studio from Version 2.0.2 to make this plug-in work properly? Or I have missed something else altogether.

Thanks,

Dave Squires
Squires Engineering, Inc.

edwards3 wrote on Friday, June 05, 2009:

I have a vague recollection of somebody saying the Java version used in AVR32 studio was too old. Dont know for sure though.

mathias3 wrote on Wednesday, November 25, 2009:

Hi

I tried to install the Wittenstein plug-in today in my AVR32 Studio (V2.1.0). Unfortunately I can’t choose the new views in the debug perspective. Is there a compatibility matter? Obviousely my version of AVR32 Studio does not resolve the plug-in…

(The configuration settings in FreeRTOSConfig.h are according to the Wittenstein guide/PDF).

mathias3 wrote on Thursday, November 26, 2009:

Hi again,
I got a valuable help in the AVR freaks forum. Now the Wittenstein StateViewer plug-in works fine in my AVR32 Studio (2.1.0) installation with FreeRTOS 5.1.1. Check:

  : http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=83926