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.

CODECOMPOSER: Unable to debug BLE Wi-Fi Provisioning Example on Non-default Workspace

Part Number: CODECOMPOSER

Hi,

I am trying to flash and debug the 'BLE Wifi Provisioning' example from the SimpleLink Wi-Fi SDK. When I import the example into my default workspace, it flashes and debugs perfectly fine. (Note that the workspace level launch.json file contains the "loadDebugSymbols" variable set as true for the default workspace) (See Screenshot 1)
However, when I import the project using the "Add folder to workspace" option, I am unable to load the program onto the board. When I open the folder level launch.json file (folder -> .theia -> launch.json), I find that there is not "loadDebugSymbols" variable set. (See Screenshot 2)
When I manually set the "loadDebugSymbols" as true in the folder level launch.json, the example loads onto the board.

Screenshot 1:
Screenshot 2026-06-01 215300.png

 

Screenshot 2:

Screenshot 2026-06-01 214123.png

 

 

 

 

 

 

 

May I know why the non-default workspace does not configure the same way as the default workspace and how this may be solved / any workaround to configure non-default workspaces properly?
Thank You

  • Hello,

    I am trying to flash and debug the 'BLE Wifi Provisioning' example from the SimpleLink Wi-Fi SDK. When I import the example into my default workspace, it flashes and debugs perfectly fine. (Note that the workspace level launch.json file contains the "loadDebugSymbols" variable set as true for the default workspace) (See Screenshot 1)

    In screenshot 1, I see the "loadSymbolsOnly" parameter set to "true". That means only the debug symbols are loaded to the debugger. Nothing is loaded to the actual target/device.

    In screeshot 2, that parameter not set. So the debugger defaults to "false" - which means it will try to load both debug symbols to the debugger and program code to the device/target. It is the program load to the device that is failing (specifically a verification error).

    When I manually set the "loadDebugSymbols" as true in the folder level launch.json, the example loads onto the board.

    When you do this, NOTHING is loaded to the board.

    May I know why the non-default workspace does not configure the same way as the default workspace and how this may be solved / any workaround to configure non-default workspaces properly?

    I can't reproduce the issue you mentioned regarding the "loadSymbolsOnly" parameter when I create a multi-root workspace. That behavior is the same. I'm not sure how that happened in your environment. Somehow that loadSymbolsOnly option is being set. However, note that by adding that parameter, only symbols are loaded and no target code. I'm not sure if that is your desired intent. If it is not and then you are getting verification errors without it, then that is a different matter.

  • Thank you for the reply Ki,

    I can't reproduce the issue you mentioned regarding the "loadSymbolsOnly" parameter when I create a multi-root workspace. That behavior is the same. I'm not sure how that happened in your environment. Somehow that loadSymbolsOnly option is being set.

    Just wanted to share the screen recordings of the issue so that the loadSymbolsOnly option being set in the default workspace is clear. 
    In the first video, it is also seen that the Simplelink toolbox is launched properly (and the overall demo runs smoothly) when program is debugged via the default workspace (where the loadSymbolsOnly option is automatically set)


    Whereas in the second video, when I imported the folder outside the default workspace and attempt to debug, the launch.json does not contain the loadSymbolsOnly option being set, and consequently the load fails.


    I am not sure why the running of the demo depends on the loadSymbolsOnly option being set, and why the setting of that option depends on the type of workspace (default / multiroot).
    May I know if I am missing any settings to be configured for multiroot workspaces / what might be the actual issue?

  • In the first video, it is also seen that the Simplelink toolbox is launched properly (and the overall demo runs smoothly) when program is debugged via the default workspace (where the loadSymbolsOnly option is automatically set)

    loadSymbolsOnly is never set for me. I followed similar steps and this is what happened for me:

    And yes, I get the same data verification error as you do when it tries to load the program.

    Anyway, I'm not sure why that option is getting set in your case. Can you try cleaning your CCS caches?

    https://software-dl.ti.com/ccs/esd/documents/users_guide_ccs/ccs_faqs.html#i-want-to-restart-code-composer-studio-with-a-fresh-environment-how-do-i-do-this

    I am not sure why the running of the demo depends on the loadSymbolsOnly option being set,

    I don't know why the verification issue is happening. I will defer to an device/SDK expert. I will bring this thread to their attention.

  • Hi Ki,

    Anyway, I'm not sure why that option is getting set in your case. Can you try cleaning your CCS caches?

    I did try clearing up the cache too (I deleted the .ccs-server, .TI-trace folders) and retried importing it. It still set the loadSymbolsOnly options yet again.

    Thanks for the follow-up, I will wait for any solutions.

  • Hi Suhani and Ki,

    May I know why the non-default workspace does not configure the same way as the default workspace and how this may be solved / any workaround to configure non-default workspaces properly?

    Our backend team is aware of this issue and has planned to remedy this in a future release. For now, we can only recommend to manually add loadSymbolsOnly: true to your launch.json file. 

    I am not sure why this is required, but I believe it is something to do with the XDS debugger that is used in conjunction with the CC35xx device for flashing application code. Can you confirm that adding this line item allows you to flash to your device?

    Best Regards,

    Josh Prushing

  • I am not sure why this is required, but I believe it is something to do with the XDS debugger that is used in conjunction with the CC35xx device for flashing application code. Can you confirm that adding this line item allows you to flash to your device?

    Note that when "loadSymbolsOnly" is set to true, then that is telling the debugger to not load/flash the target at all. It is only loading debug symbols to the debugger. The debugger assumes that the code has already been flashed via other method and hence no need to re-flash again.

  • Hi Ki,

    That makes sense, as we use the simplelink toolbox for flashing our device. I'm not quite sure how this interaction takes place in CCS, I imagine there is some protocol to disable/workaround the CCS flashing procedure and call the simplelink toolbox flashing procedure.

    Neglecting to include loadSymbolsOnly: true will prevent a connection to the device (my hypothesis is our security prevents CCS from flashing since it is seen as an 'un-authorized' source).

    Best Regards,

    Josh Prushing 

  • That makes sense, as we use the simplelink toolbox for flashing our device.

    ah ok, that clears things up in my head. Flashing is done elsewhere and when debug visibility is needed you can attach the debugger and load the debug symbols to the debugger but no need to try to flash the program again.

  • Hi Josh,


    Thanks for the quick follow up, it now makes sense, and yes adding the 'loadSymbolsOnly' item allows me to flash/debug and launches the Simplelink Toolbox, after which the example runs as desired.

    Regards,

    Suhani Tandle

  • Hi Suhani,

    Sure thing, please let me know if you run into any more issues!

    Best Regards,

    Josh Prushing