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/CC3220SF-LAUNCHXL: Windows VirtualBox Debug

Part Number: CC3220SF-LAUNCHXL
Other Parts Discussed in Thread: CC3220SF, UNIFLASH

Tool/software: Code Composer Studio

I am attempting to run CCS inside a Windows VM using VirtualBox.  I was able to get everything setup and I was able to build the CC3220 provisioning project.  I can also program this project to the CC3220SF Launchpad using Uniflash, so I know I have the USB passthrough working in VirtualBox.  However, when I attempt to Debug a project, I get the error below.  I've checked the file location it mentions, and that .dll does exist.  I've also ran a connection test on a target configuration and posted those results below.  I think that confirms that CCS can indeed see the Launchpad, but for some reason I just can't Debug.  

Cortex_M4_0: GEL Output:
Memory Map Initialization Complete
Cortex_M4_0: Error initializing flash programming: Failed to load C:\ti\ccsv7\ccs_base\DebugServer\bin\FlashCC3220SF.dll: The specified module could not be found.
 
Cortex_M4_0: GEL Output:
Target Reset
Cortex_M4_0: Loader: One or more sections of your program falls into a memory region that is not writable.  These regions will not actually be written to the target.  Check your linker configuration and/or memory map.
Cortex_M4_0: File Loader: Verification failed: Values at address 0x01000800 do not match Please verify target memory and memory map.
Cortex_M4_0: GEL: File: C:\Users\Matt\workspace_v7\provisioning_CC3220SF_LAUNCHXL_freertos_ccs\Debug\provisioning_CC3220SF_LAUNCHXL_freertos_ccs.out: a data verification error occurred, file load failed.

[Start: Texas Instruments XDS110 USB Debug Probe_0]

Execute the command:

%ccs_base%/common/uscif/dbgjtag -f %boarddatafile% -rv -o -S integrity

[Result]

-----[Print the board config pathname(s)]------------------------------------

C:\Users\Matt\AppData\Local\TEXASI~1\CCS\

    ti\0\0\BrdDat\testBoard.dat

-----[Print the reset-command software log-file]-----------------------------

This utility has selected a 100- or 510-class product.

This utility will load the adapter 'jioxds110.dll'.

The library build date was 'Jul 21 2017'.

The library build time was '19:36:41'.

The library package version is '7.0.48.0'.

The library component version is '35.35.0.0'.

The controller does not use a programmable FPGA.

The controller has a version number of '5' (0x00000005).

The controller has an insertion length of '0' (0x00000000).

This utility will attempt to reset the controller.

This utility has successfully reset the controller.

-----[Print the reset-command hardware log-file]-----------------------------

The scan-path will be reset by toggling the JTAG TRST signal.

The controller is the XDS110 with USB interface.

The link from controller to target is direct (without cable).

The software is configured for XDS110 features.

The controller cannot monitor the value on the EMU[0] pin.

The controller cannot monitor the value on the EMU[1] pin.

The controller cannot control the timing on output pins.

The controller cannot control the timing on input pins.

The scan-path link-delay has been set to exactly '0' (0x0000).

-----[Perform the Integrity scan-test on the JTAG IR]------------------------

This test will use blocks of 64 32-bit words.

This test will be applied just once.

Do a test using 0xFFFFFFFF.

Scan tests: 1, skipped: 0, failed: 0

Do a test using 0x00000000.

Scan tests: 2, skipped: 0, failed: 0

Do a test using 0xFE03E0E2.

Scan tests: 3, skipped: 0, failed: 0

Do a test using 0x01FC1F1D.

Scan tests: 4, skipped: 0, failed: 0

Do a test using 0x5533CCAA.

Scan tests: 5, skipped: 0, failed: 0

Do a test using 0xAACC3355.

Scan tests: 6, skipped: 0, failed: 0

All of the values were scanned correctly.

The JTAG IR Integrity scan-test has succeeded.

-----[Perform the Integrity scan-test on the JTAG DR]------------------------

This test will use blocks of 64 32-bit words.

This test will be applied just once.

Do a test using 0xFFFFFFFF.

Scan tests: 1, skipped: 0, failed: 0

Do a test using 0x00000000.

Scan tests: 2, skipped: 0, failed: 0

Do a test using 0xFE03E0E2.

Scan tests: 3, skipped: 0, failed: 0

Do a test using 0x01FC1F1D.

Scan tests: 4, skipped: 0, failed: 0

Do a test using 0x5533CCAA.

Scan tests: 5, skipped: 0, failed: 0

Do a test using 0xAACC3355.

Scan tests: 6, skipped: 0, failed: 0

All of the values were scanned correctly.

The JTAG DR Integrity scan-test has succeeded.

[End: Texas Instruments XDS110 USB Debug Probe_0]

  • Hi,

    As a general statement, our XDS Debug Probes are not validated to be used in a VM environment, therefore be mindful of that during debugging. Details are at the page below:
    processors.wiki.ti.com/.../VMware_with_CCS

    That said, the issue you are seeing is due to a Data Verification error, which can have multiple causes. Please check the reference below that contains a troubleshooting guide:
    processors.wiki.ti.com/.../Troubleshooting_CCS_-_Data_Verification_Errors

    Hope this helps,
    Rafael
  • Thanks for that information, however I'm not really sure I understand what I really need to do.  I am just trying to run the example codes in the CC3220 SDK, so I haven't modified any of the GEL files or memory maps.  Also, this does work on my host machine outside my VM. 

    If I just launch the target configuration CC3220SF.ccxlm in the provisioning project and then right click on Texas Instruments XDS110 USB Debug Probe in the Debug window and click connect, I get the below error.  Seems logical that this error should be resolved first, and then worry about the data verification error that comes later, unless they are one in the same.

    Cortex_M4_0: GEL Output:
    Memory Map Initialization Complete
    Cortex_M4_0: Error initializing flash programming: Failed to load C:\ti\ccsv7\ccs_base\DebugServer\bin\FlashCC3220SF.dll: The specified module could not be found.

  • I figured out the problem by inspecting the .dll and searching for any .dll files it referenced. FlashCC3220SF.dll references MSVCP100.dll and MSVCR100.dll, which are found in Microsoft Visual C++ 2010 SP1 Redistributable Package. The CCS installer did not install this as part of the installation process. Once I downloaded and installed it from Microsoft, it worked.