CCSTUDIO-THEIA: Once part of System Project a project's Build action no longer works in CCS Theia

Part Number: CCSTUDIO-THEIA
Other Parts Discussed in Thread: CCSTUDIO, TMDSCNCD28388D

Dear support team,

I am very happy with the implementation of the System Project user interface in the new CCStudio version 21.0. Unfortunately, a related issue that was already present in the previous version 20.5, where I was using a 'system.xml' project imported from the last non-Theia CCS, is still present.

When you have assigned an existing project in the workspace, e.g. for CPU1, to the corresponding core in the System Project, the Build Projects and the Re-build Projects actions on the 'child' project no longer work. That is, the Info-panel with message Building... does appear, but after a second or so disappears, and no file is compiled.

Strangely, the Clean Projects action still works, as well as Debug Project. But the build that is normally done before launching the debug session is skipped, so you might end up debugging an outdated version of the executable(s).

Once part of a System Project, the only way to make sure individual core projects are compiled is a Build via the System Project. When you disconnect the core project from the System Project, normal behaviour is restored.

I could not find a message in the ccs_theia.log that would relate to this issue.

Note: I posted this earlier in the C2000 microcontrollers forum, but this forum suits better.

  • Hello,

    When you have assigned an existing project in the workspace, e.g. for CPU1, to the corresponding core in the System Project, the Build Projects and the Re-build Projects actions on the 'child' project no longer work. That is, the Info-panel with message Building... does appear, but after a second or so disappears, and no file is compiled.

    I was not unable to reproduce this. Please see my attached video attempting to reproduce this. Are you trying the same thing but the re-build option does not actually rebuild the project?

  • Dear Ki,

    This morning I investigated the issue a little further in a separate test workspace and I think to have found the edge case:

    the child project needs to be in (at least?) two System Projects to trigger the issue.

    In my regular workspace I have also two System Projects, one for the demo board and one for our own prototype board.

    These are the steps I used to investigate:

    • use CCStudio Version: 21.0.0.14__1.12.0 with C2000 support installed
    • start a new workspace "temp"
    • Create New SDK Example Project...
      • for the TMDSCNCD28388D kit
      • Driverlib Empty Dual Example CCS Project
    • Build both projects for the CPU1 and CPU2: result OK
    • Create New Empty Project.. with name "System"
      • Output type System
      • Assign to CPU1: the Driverlib Empty Dual Example CCS Project with build config CPU1_RAM
      • Assign to CPU2: the empty_c28x_dual_driverlib_project_cpu2 with build config CPU2_RAM
    • Build / Rebuild the System Project as well as the CPU1 and CPU2 projects: all results OK (like in your video)
    • Create (another) New Empty Project.. with name "System2"
      • Output type System
      • Assign to CPU1: the Driverlib Empty Dual Example CCS Project with build config CPU1_FLASH
      • Assign to CPU2: the empty_c28x_dual_driverlib_project_cpu2 with build config CPU2_FLASH
    • Rebuild project "System": result OK (both RAM targets built)
    • Rebuild project "System2": result OK (both FLASH targets built)
    • Build / Rebuild project for CPU1: result NOT OK (selecting either build config gives same result)
      • Clean does work, but does not help making (Re)Build work
    • Likewise for the project for CPU2

    Now, let us reduce the number of system projects for the CPU2 project:

    • In "System2" assign to CPU2: the Driverlib Empty Dual Example CCS Project with build config CPU1_FLASH
    • Build / Rebuild project for CPU1: result NOT OK (selecting either build config gives same result)
    • Build / Rebuild project for CPU2: result OK (selecting either build config gives same result)

    And check the other way around:

    • In "System2" assign to CPU2 again: the empty_c28x_dual_driverlib_project_cpu2 with build config CPU2_FLASH
    • and also to CPU1: the empty_c28x_dual_driverlib_project_cpu2 with build config CPU2_FLASH
    • Build / Rebuild project for CPU1: result OK (selecting either build config gives same result)
    • Build / Rebuild project for CPU2: result NOT OK (selecting either build config gives same result)

    Hope this helps. Let me know if you need e.g. the 'temp' workspace content or other details.

    With kind regards,

    Ernst

  • the child project needs to be in (at least?) two System Projects to trigger the issue.

    Thanks. Yes, this is the key.

    I filed a ticket for this. Tracking link: https://sir.ext.ti.com/jira/browse/EXT_EP-13611

    Thanks

    ki