Troubleshooting CCSv7

From Texas Instruments Wiki
Jump to: navigation, search

Overview

This guide provides some suggestions for CCSv7 users experiencing odd generic issues not covered in FAQs or other topics and having difficulty to reproducing in other environments (creating a reproducible test case to provide to support). It also describes how to find/generate additional diagnostic logs that will be useful to provide to TI when reporting an issue.

Installation

General tips for installing CCSv7

  • Clean out all prior failed or incomplete installations (by deleting the install directory) before attempting a new one to the same directory. In Windows, use Shift+Del and in Linux and MacOS use rm -Rf on the install directory.
  • If you plan to install two versions side-by-side, always use different workspaces. Sharing a workspace between two versions may cause severe impact in project building and debugging.
  • Disable anti-virus (certain anti-virus software is known to cause problems).
    If it cannot be disabled, try the offline installer instead of web installer: Download CCS
  • Ensure that your Username does not have any non-ascii characters, and that you are installing CCS to a directory that does not have any non-ascii characters .
    A temporary directory using the Username is created during installation, and Eclipse is unable to handle non-ascii characters. If your Username does have non-ascii characters, please create a temporary admin user for installing CCS.

Note: There is a known issue with a installation progress dialog hanging when installing additional add-on's. See this FAQ.

Installation FAQs

See this page for other FAQs related to CCS installation.

CCSv7 FAQs


Installation error related to missing MSVC redistributable libraries

CCS has a dependency on some Microsoft runtime libraries. These libraries should be installed by the CCS installer. However there are some cases where these libraries fail to get installed properly.
One instance this could happen is if you are running Windows 7 and the Windows patches are not up to date. In this case, the installer may fail with an error message that points to a log file inside a workspace. The log file may contain errors like the ones reported in this section.

To check if you are missing Windows patches, please run the following command in the command prompt:
WMIC QFE|find "KB2999226"

It should return information on the updates. If it returns nothing, it is likely that you're missing the service pack update that's required to run the MSVC Runtime.
You could get the Windows update by downloading from here, or by following the procedure here. After installing the Windows update, you can proceed with installing CCS into a clean directory.


Installation fails when "installing eclipse"

If the installation fails when installing eclipse with the message: "Failed to install eclipse. Cannot recover from this error.", take a look at the install log and search for _JAVA_OPTIONS. If this environment variable is set, it may interfere with the Eclipse installation.

The workaround is to temporarily unset the variable, then delete the contents of your aborted installation and try reinstalling CCS. The variable can be reset after the installation is complete.

Installation fails with error about permissions on temporary folder

If CCS installation fails with the following error, it means that the system temporary folder does not have the required permissions, OR that the Username, and thereby temporary directory, has non-ASCII characters.

Ccs install error tempdir.png

First ensure that the Username, and thereby temporary directory, does not have any non-ASCII characters. See General Tips for Installing CCSv7 for more information.


Next make sure that the system TEMP directory has correct permissions. The CCS installer needs to be able to write to a temporary location and execute programs from it. By default, it uses the system temporary directory %TEMP% but if that directory does not have the right permissions, the installation will fail with the above error.

The solution is to

  • make sure the system temporary directory has full permissions, or
  • if you cannot change permissions on the system TEMP directory, then run the installer on a Windows command prompt with the --temp parameter (as indicated in the message) and specify a different temp directory that has full permissions (it could be any folder that you create on your machine). For example:
    <ccs_installer_executable> --temp c:\mytemp


MacOS Installation freezes or prompts for proxy information

When installing CCS 7.x on MacOS Sierra, if the installation freezes or prompts for proxy information (ie. appears to require internet connection even with the offline installer), the reason may be due to a new security feature called "Gatekeeper Path Randomization" (or "app translocation", as it's called on the API level) introduced in MacOS Sierra. (more info at this link).

A workaround is to run the following command before invoking the installer:
xattr -r -d com.apple.quarantine ccs_setup_7.1.0.00016.app


Clearing out an existing installation

To uninstall a failed CCSv7, delete the entire 'ccsv7' folder. Keep in mind this will erase the install information of other CCSv7 versions you may have installed in parallel. If in doubt, check the date and time of each directory and delete the one that matches your attempt of install.

If you need to completely wipe all information from all versions of ccsv7 ever installed in your system, delete all workspace directories created and all directories in the locations below:

Windows Linux and OSX
C:\Users\<your_username>\.TI ~/.TI
C:\Users\<your_username>\.TI-trace ~/.TI-trace
C:\Users\<your_username>\ti ~/ti
C:\Users\<your_username>\AppData\Local\Texas Instruments ~/.ti


Also, other CCS installations may also have some additional directories, shown at the Troubleshooting CCSv5 page:

In Windows, if the complete removal of JTAG debugger device drivers is necessary you must follow a more thorough procedure:

  1. Check this typical procedure to remove device drivers using the Device Manager, but keep in mind you will have to enable the option Show hidden devices under the menu View to display all JTAG debuggers ever connected to your PC.
  2. With this enabled, in the directory tree look for the branches that start with Blackhawk, SD USB Based Debug Tools, Stellaris Device Firmware Upgrade, Stellaris In-Circuit Debug Interface, Texas Instruments Emulators and Texas Instruments Debug Probes.
  3. For every item inside these branches, right-click and select Uninstall. Also, check the box near Delete the driver software for this device.
  4. Also, when expanding the branch Ports, check for any relevant entries that mention one or more TI targets such as CC3200LP Dual Port, MSP Application UART1, XDS, Stellaris, etc. Repeat step 3 above for each entry.
  5. Similar thing with the branch Universal Serial Bus Controllers.



Startup

There are several other potential cases that would prevent CCS from starting up:

Failed to create the Java Virtual Machine

If CCS displays the following message when it is launched, the issue is usually related to java virtual memory size.

Failed create jvm1.png

To resolve this, open the file ccstudio.ini found in \ccsv7\eclipse (/ccsv7/eclipse/Eclipse.app/Contents/Eclipse for MacOS) and try reducing the max heap size by adjusting the "-Xmx" argument to 512m or even 384m. If that does not help, try removing the line "256M" (or equivalent) just after "--launcher.XXMaxPermSize".

Antivirus or other security software

Some antivirus/security software are more aggressive than others and may block CCS for starting up. Try disabling it and see if that allows CCS to start. If so, it may be necessary to add some exception to the software to allow CCS to run properly

Missing MSVC redistributable libraries

CCS has a dependency on some Microsoft runtime libraries. These libraries should be installed by the CCS installer. However there are some cases where these libraries fail to get installed properly, are corrupted, or conflict with other libraries. When this happens, CCS will fail to start. Sometimes the below errors will be reported:

An internal error occurred during: "CrashTrackerJob".
C:\ti\ccsv7\ccs_base\DebugServer\bin\LibraryLoader.dll: Can't find dependent libraries

An internal error occurred during: "License Acquisition".
C:\ti\ccsv7\ccs_base\DebugServer\bin\ti_xpcom.dll: Can't find dependent libraries

An internal error occurred during: "Loading device information".
Could not initialize class com.ti.utility.filesystem.DirectoryService$SingletonHolder

An internal error occurred during: "Searching for new products".
Could not initialize class com.ti.utility.filesystem.DirectoryService$SingletonHolder

The workaround is to try reinstalling the libraries. First uninstall both the 2005 and 2012 MSVC Redistributables (32 bit versions) using Add/Remove Programs. Then download and install those libraries from Microsoft's download site. If using CCS 6.2.0.00050 also uninstall and reinstall 2008 and 2015 MSVC Redistributables.


These types of errors may also occur during installation if you are running Windows 7 and the Windows patches are not up to date. In this case the errors will be reported in the .log file in the workspace folder.

To determine if you are missing Windows updates, please run the following command in the command prompt:
WMIC QFE|find "KB2999226"

It should return information on the updates. If it returns nothing, it is likely that you're missing the update that's required to run the MSVC Runtime.
You could get the update by downloading from here, or by following the procedure here.

JVM max heap size is too high or too low

Sometimes the default size for the CCS JVM max size is either too high or too low. In those cases, it can prevent CCS from starting up. It is recommended to try modifying the max heap size

Corrupt workspace folder

Sometimes the cached data inside the workspace folder can get corrupted, preventing CCS from starting up. Cleaning the workspace can help. See the below section (General IDE) for tips on how to clean the workspace folder


General IDE

CCS is based on the Eclipse open source framework and when experiencing various odd/corrupted behavior (missing menu options, "blank" views, plug-ins are missing or no longer behave properly, random crashes, etc), common tips on cleaning up your Eclipse environment also apply to CCS. Some of these tips are:

1. Reset the perspective: If the issue is strange GUI appearance (missing menu options or strange/empty looking views), often just resetting the perspective can resolve this. This can be done by selecting 'Window->Reset Perspective'

2. Use the -clean argument when calling ccstudio.exe: CCS is launched by running the '.\ccsv7\eclipse\ccstudio.exe' executable. This is what is called when using the CCS desktop shortcut. However, ccstudio.exe can be called with some command line arguments. One of them is '-clean'. When calling 'ccstudio.exe' with '-clean', it will clean out cached data by the IDE and plug-ins upon launching CCS. Sometimes this cached data can get corrupted over time and cleaning it out can fix many problems. Note that launching CCS with '-clean' will cause the launch time to be slower so it is not recommend to use it every time but only when needed. To add the '-clean' option simply right-click on the CCS desktop shortcut, select Properties and select "Shortcut" tab; in the "Target" field, add '-clean' as a suffix. Example: C:\TI\ccsv7\eclipse\ccstudio.exe -clean.

3. Clean the workspace (or try using a new one): CCS stores various information in a folder called '.metadata' located in the user's workspace. The contents of this folder can get corrupted over time, causing various instability and strange behavior. Using a new workspace or cleaning the old workspace often helps resolve these issues. To use a new workpspace, simply select a new workspace location ('File->Switch Workspace'). If you wish to clean the old workspace, the simplest way to do this is to delete the '.metadata' folder in the workspace. This will essentially reset the workspace and restore the environment to the default behavior. All projects that were in the workspace will need to be re-imported into CCS, even though they are still physically in the workspace folder. Also note that any modified preference settings will be lost (set back to the default setting). If you wish to avoid resetting those preferences, export the preferences to a file (outside the workspace) by selecting 'File->Export...->General->Preferences->To preference file' before deleting the workspace. Once the workspace has been cleaned, those preferences can be imported back into CCS by selecting 'File->Import...->General->Preferences->From preference file'



Project Management and Build

See: http://processors.wiki.ti.com/index.php/Build_Errors_in_CCS


Debugger

For issues encountered during a debug session (launching a debug session, target connectivity issues, crashes experienced during debugging). Note that cleaning the workspace can also help resolve debugger issues.

1. If an error happened during the process of launching the debugger or any JTAG specific issues, see: Debugging JTAG Connectivity Problems

2. If a data verification error occurs when loading a program, see: Troubleshooting CCS - Data Verification Errors

3. Delete the debug launch configuration: A launch configuration is a configuration file that Eclipse creates when a debug session is started; it caches the information on which target configuration to use, target options and several other settings.

Go to menu "Run-->Debug Configurations..."
Under "Code Composer Studio - Device Debugging", select the name of your launch configuration and delete it.

4. Delete the .launch file: the .launch file is created when the "green bug button" is used to start a debug session straight from the project itself (and not independently from the Target Configurations view, for example).

Open a file browser or a terminal and go to the project directory - it could be either inside the workspace or on its original location (if the project is linked)
Check if a directory called .launches exists
If so, delete the file inside it. It typically has the extension .launch

5. Delete target cache files:

CCS has a utility called fsclean that removes the most important cache files. This utility is typically installed under <CCSV7 INSTALL FOLDER>/ccsv7/ccs_base/common/bin.

The cache files removed by fsclean are saved in a user and CCS installation specific location.
On Windows 7/8/10 the location is: C:\Users\<username>\AppData\Local\Texas Instruments\CCS\<CCSV7 INSTALL FOLDER>\0\0
On Linux and OSX, there is a hidden directory named .ti\<CCSV7 INSTALL FOLDER>\0\0 and located in the user area. The location is ~/.ti
Trace cache files are usually saved in similar locations:
On Windows 7/8/10 the location is: /users/<userid>/.TI-trace
On Linux, there is a hidden directory named .TI-trace and located in the user area. The location is ~/.TI-trace
If you also have a installation of CCSv3.3 and have CCSv3.3 directories in the system PATH, try removing those directories from the PATH. There is a known issue where later versions of CCS can pick up the :wrong DLLs from the CCSv3.3 installation if the CCSv3.3 directories are found in the PATH.

6. If CCS freezes during a debug session:
Usually during a debug session CCS sometimes may freeze due to something in the system itself (PC, USB issues, video card issues, etc.)
In other occasions it may appear frozen when it is waiting for a JTAG debug operation to complete. This can be caused by a communications failure between the host and the target, or due to the application software running on the target that causes the JTAG debugger to lose sync with the connected core and keep retrying the operation.
In these cases it is recommended to follow the sequence below to try to pinpoint the source of the issue:

  1. Turn off the board. The JTAG debugger will detect a power failure if it is still "alive" and usually indicates an issue with the running application on the target. CCS control is recovered.
  2. Unplug the JTAG debugger from the USB port. CCS will detect the JTAG debugger is non-existing anymore and may indicate an issue with the JTAG debugger itself. CCS control is recovered.
  3. Kill CCS from the Task Manager/using the console. This indicates the issue is on CCS itself, either caused by an internal error or by the interactions between itself and the JTAG debugger. Also, keep in mind that CCS may need some time to recover after unplugging the JTAG debugger, but that rarely goes longer than 30s.

7. If CCS generates error when launching a debug session:

Launch error.png

If CCS reports an error during launch regarding com/ti/dvt/energytrace/af/PowerActivity or com/ti/dvt/energytrace/views/Dashboard or similar, then clean your workspace or open a new workspace as mentioned in the General IDE section.

Resource Explorer

If Resource Explorer is unable to connect to the internet it may be an issue with the proxy setting. Ensure the setting is correct by performing the following steps:

  • Open the Preferences dialog (menu Window --> Preferences)
  • Type 'proxy' in the search box
  • Select 'Network Connections'
  • Under 'Active Provide', select 'Native'
  • Click OK
  • Close and restart CCS twice

Also try deleting the tirex-localserver-<version> folder found in C:\Users\<Userid>\ti and restarting CCS.

Another potential issue is that if there is an extra "node" process running. Close Resource Explorer. Check Task Manager or Activity Monitor and look for node. If one is running, kill it. Start Resource Explorer.

If you still experience issues please post on the E2E support forum at http://e2e.ti.com/support/development_tools/code_composer_studio.

Update features

1. No update sites found:

In some cases, when looking for updates (menu Help --> Check for Updates or Install New Software) the error "No repository found" can appear. This is due to the fact the list of CCS update sites gets erased, thereby not listing any available updates. The exact reason that triggers that is still unknown, but the solution is simple: to restore the list, download the attached file (CCSv7.0.x) and unzip to extract the .xml file. Then go to CCS menu Window --> Preferences --> Install/Update --> Available Software Sites, click on Import, browse to the attached file and click Ok.

2. CCS App Center not connecting:
Under certain circumstances the CCS App Center may refuse to connect to its online repository and return the following error message "We are sorry, we cannot access the CCS App Center server. Please check your internet connection and press the 'Reload' button in this page."
The reason for that is not yet fully characterized, but it may be due to several conditions discussed in the e2e forum threads below:

http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/349185.aspx
http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/t/364032.aspx

3. Out of memory error when installing Add-ons from CCS App Center:
In some cases, when installing Add-ons from App Center (usually TI-RTOS for MSP43x or TivaC), the following error may occur:

An error occurred while collecting items to be installed
session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Problems downloading artifact: osgi.bundle,com.ti.rtsc.TIRTOSmsp430.productPlugin,2.12.0.24.
File has invalid content:C:\Users\abc\AppData\Local\Temp\signatureFile7677295773172839277.jar
Out of memory: Cannot verify signed content.
Java heap space

To resolve the issue, edit the <ccstudio.ini> file found in \ccsv7\eclipse (/ccsv7/eclipse/Eclipse.app/Contents/Eclipse for MacOS) and change the statement -Xmx512m to -Xmx768m.

4. After installing updates, dialog appears saying "Computing size has encountered a problem:
After installing updates through CCS "Updates Available" dialog, when prompting to restart CCS, a dialog such as the following appears:

Ccs computing size.png


In this case, try deleting the two directories below:

<installdir>/ccsv7/eclipse/p2/org.eclipse.equinox.p2.core/cache
<installdir>/ccsv7/eclipse/p2/org.eclipse.equinox.p2.repository/cache

5. Updates fail with "No repository found" or "Connection reset" or "artifact for binary not available" errors:
In some cases, CCS updates may fail with these types of errors:

An error occurred while collecting items to be installed
session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Unable to read repository at software-dl.ti.com/.../com.ti.cgt.msp430.4.4.win32_root_4.4.4.
Connection reset

or

An error occurred while collecting items to be installed
session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
No repository found containing: org.eclipse.update.feature,com.ti.c2000.support.linux,4.1.4.3
No repository found containing: binary,com.ti.c2000.support.linux_root,4.1.4.3

or

An error occurred while installing the items
session context was:(profile=epp.package.cpp, phase=org.eclipse.equinox.internal.p2.engine.phases.Install, operand=null --> 
[R]com.ti.cgt.tms470.4.9.win32_root 4.9.5, action=org.eclipse.equinox.internal.p2.touchpoint.natives.actions.UnzipAction).
The artifact for binary,com.ti.cgt.tms470.4.9.win32_root,4.9.5 is not available.

If this happens, try the following steps:

  • Exit out of CCS
  • Delete the two directories below:
    • <installdir>/ccsv7/eclipse/p2/org.eclipse.equinox.p2.core/cache
    • <installdir>/ccsv7/eclipse/p2/org.eclipse.equinox.p2.repository/cache
  • Start CCS and go to menu Help --> Install New Software
  • From the drop down list of available software sites, select the software that you were trying to update earlier (for example, Code Generation Tools or TI C2000 Device Support as in the above two cases)
  • Uncheck the box Contact all available sites during install to find required software at the bottom of the pane
  • Proceed with installing the update


If the above steps do not help, try the tips in this page.

If your network requires a proxy server to be used, then make sure it is configured correctly. Check the reference below for additional details:

Configuring proxy on CCS


Information for Support

  • Before posting a support question, please include the information requested in this post. Be sure to include relevant CCS diagnostic logs as described below:

CCS installation logs

The installation logs for both the main CCS install and updates are usually located in one or more subdirectories inside the main CCS install directory:

<CCS_INSTALL_DIR>/ccsv7/install_logs
<CCS_INSTALL_DIR>/ccsv7/install_logs_<several_numbers>


Despite the information on these subdirectories is copied when following the procedure in the next section, it is still important to know this if CCS failed installation or cannot be opened anymore after applying an update.

CCS Diagnostic Logs

When contacting TI for support, in addition to the usual information, providing the following additional diagnostics logs can help support personnel in their investigations:

  • Install Logs
  • Eclipse/JVM Error Logs
  • Crash Dump Files
  • Debug Server Logs
  • cTools/Trace Logs

For CCSv7, there is a utility that will automatically grab the above logs except the cTools/Trace Logs. This utility is accessible via 'Help->CCS Support' menu. This will launch the CCS Support dialog:

CCS Support Dialog

From the above dialog are options to view various logs ('View' button), e-mail to support ('Email...'), clear the log ('Clear') and to enable logging ('Properties...'). Only the Debug Server Log is not enabled by default. To enable it, highlight it and click on Properties, check the box to 'Enable Debug Server Logging' and specify a location to save the log file. There is also a button to 'Archive Logs...'. This will zip up all the enabled logs to a location on your PC. This zip file can then be e-mailed or attached to the CCS support forums.

Debug Server Logging

  • This is NOT enabled by default. Enabling Debug Server Logging will slow overall CCS performance, so it is not recommended to leave logging enabled. If you are unable to provide a reproducible test case to TI support, you can enable debug server logging to generate additional diagnostics logs. These logs will only be useful for issues related to the debug server (ex: can't connect to the target, debugger hangs, etc) and useless for other issues like project management or the editor. Logging data from the debugger can get very large, so it may be desirable to only enable debug server logging just before the event of interest is being exercised.

You can enable logging via the CCS Support Dialog mentioned above or from within CCS by entering eval("DEBUG_LogEnable(1)") in the Scripting Console. You can specify where to save the logs by entering, for example, eval("DEBUG_LogRedirect(\"c:/temp/ds.log\")") prior to eval("DEBUG_LogEnable(1)").

Ds log scripting console.png

If you wish to enable logging outside CCS (useful if you are using DSS), you can use the below environment variables (example for Windows):

set TI_DS_ENABLE_LOGGING=1
set TI_DS_LOGGING_OUTPUT=c:/path/file.log

The former enables logging, the latter will let you choose where the log is generated. Make sure you clear the first variable after the logging is done.

cTools/Trace Logging

To generate cTools/Trace logs:

  1. Quit CCS.
  2. Right click on the “My Computer” icon on your desktop.
  3. Select “Properties”.
  4. On XP select System Properties, in Win7 click on "Advanced System Settings"
  5. In the System Properties dialog, click on the “Advanced” tab. (should already be selected in Win7)
  6. Click on the “Environment Variables” button. In the “Environment Variables” dialog
  7. Under the “User variables” group, verify that the “TI_TRACE_LOGGING” environment variable exists and has a value of 6. Create it if it is not there.
  8. Click “OK” in all dialogs. Restart CCS.
  9. Reproduce the problem, noting what steps were performed in what order.
  10. Zip up the log file and send it to TI via the forums. The log file will be in /ccsv7/ccs_base/emulation/analysis/bin/logs/ (WinXP) or /users/<userid>/.TI-trace (Win7). The file name will be something like: ti_trace_log_MMDDYY_PID.txt file.