Debug - Migration Overview#

Much of the inner workings of the debug system remains the same between both environments. This module highlights some things to be aware of regarding debug when migrating from CCS Eclipse to CCS Theia.

Launch Configurations#

Launch Configurations (sometimes also referred to as Debug Configurations in CCS Eclipse) exist in both environments and serve the same overall purpose. However the implementation of them are quite different between the two environments.

In CCS Eclipse, Launch Configuration files are XML files generated in either the the project subdirectory /.launches folder or workspace subdirectory /.metadata/.plugins/org.eclipse.debug.core/.launches. The Launch Configuration is typically viewed and configured via the IDE using the Debug Configuration view.

In CCS Theia, Launch Configuration files are JSON files typically auto-generated by the IDE and stored in a launch configuration JSON file (launch.json) located in the .theia folder in your workspace. It is typically viewed and configured via the text editor. Launch configurations in CCS Theia work in a similar way as they do with VS Code. Please refer to the User’s Guide for more information.

Initialization Scripts#

Initialization scripts are now based on CCS Scripting. DSS based initialization scripts are no longer supported. Please refer to the User’s Guide for more information.

Debug Properties#

Access to the debug properties (such as the debugger options, and on-chip flash settings) can be accessed from the Debug view Threads panel during an active debug session. Please refer to the User’s Guide for more information.

Graphs#

The graph views in CCS Theia is much more limited functionality and scope compared to what was available in CCS Eclipse. It is limited to a simple time domain graph in an X-Y plot format with only a subset of graph properties that can be configured. This is intentional by design to focus on just the functionality most often used by users and to simplify the interface. Please refer to the User’s Guide for more information.

RTOS Objects View#

The RTOS Objects view no longer supports TI-RTOS.

Debug Console#

The Debug Console in CCS Theia can be used to enter expressions to be evaluated by the GEL expression evaluator. This replaces the Scripting Console, which was used in CCS Eclipse to enter GEL expressions to be evaluated. Please refer to the User’s Guide for more information.

Serial Console#

The Terminal view in CCS Eclipse was mostly used to open a serial connect between the debugger and the target. This view has been replaced by the Serial Console in CCS Theia. Please note that the Serial Console only supports serial communication unlike the Terminal view which supported a variety of other transports like SSH, Telnet, etc. Please refer to the User’s Guide for more information.

Multi-Core Debug#

Most of the fundamental features of multi-core debug support remains in CCS Theia. However, the implementation is quite different beyond just visually and warrants a mention. Like CCS Eclipse, the “grouping” of cores are supported. However, in CCS Theia, a special Enable Cross Triggering and Synchronous Execution button (which appears when a group is created) must be used to specify that a debug action be sent to all the cores of a group (if applicable) that a selected core is a part of. If this button is not enabled, then the debug action is only sent to the selected core regardless of if the core is part of a group or not. This differs from CCS Eclipse, which had a top node in the Project Explorer that represents the group with the core in the groups nested underneath, where selecting the top “group” node as the debug context would mean any applicable debug actions would be broadcast to all the cores underneath. CCS Theia does not have this top “group” node in the Explorer, hence why a special button exists to specify a group operation.

Please refer to the User’s Guide for more details on all the changes made to multi-core debugging.

Scripting#

Both GEL and Debug Server Scripting (DSS) is still available in CCS Theia. However, DSS is being deprecated in support in favor of a new scripting solution called CCS Scripting. Please refer to the User’s Guide for more information on migrating DSS scripts to CCS Scripting.

Scripting Console#

The Scripting Console in CCS Theia allows users to interactively call CCS Scripting APIs. Unlike CCS Eclipse, it does not support DSS or have specific built in console commands that interface with the IDE. Please refer to the User’s Guide for more information.

Trace#

Trace has gotten quite an overhaul in CCS Theia beyond just the user interface. Some key differences from CCS Eclipse include:

  • Core Trace is still supported. However, “trace to pins” based Core Trace (a.k.a Pin Trace) is no longer supported.

  • SWO Trace is no longer supported.

  • System Trace is no longer supported.

  • ERAD based Core Trace is supported only in CCS Theia.

  • Trace is always auto-enabled when the corresponding Trace view is opened.

  • Function profiling and code coverage analysis of captured trace data is no longer supported.

  • Standalone EnergyTrace is currently not supported.

  • Exporting of captured Core Trace data is not supported.

Please refer to the User’s Guide for more information.

TI-RTOS#

TI-RTOS has been greatly deprecated in support. In addition to the RTOS Objects view no longer supporting TI-RTOS, the TI-RTOS Analysis tools in CCS Eclipse are not supported in CCS Theia.