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.

can't get rid of default ccxml file with a project

Other Parts Discussed in Thread: TMS320F2810

Hello,

I am using CCS V5.1, and debugging a TMS320F2810 project.  Somehow, a "TMS320F2810.ccxml" debug configuration has become associated with the project.  I don't want that, as I've created my own .ccxml file for this project.  But no matter what tried, I cannot get rid of that TMS320F280.ccxml.  I try to physically remove it from the directories, I try to delete it in the "Target Configurations" menu, etc.  But still comes back everytime I startup CCS V5.1.  Please advise - how to get rid of it permanently?

Robert

  • Hi Robert,

    Robert56682 said:
    Somehow, a "TMS320F2810.ccxml" debug configuration has become associated with the project.  I don't want that, as I've created my own .ccxml file for this project. 

    Is  your own ccxml file you created in your project ? If so, and you are pressing the "Debug" button, it should use your ccxml file. If  you don't have your ccxml file in your project, it will use whatever is set to default. You can try explicitly setting your ccxml file to default. Or you can try launching your ccxml file directly with a project-less debug session. Slides 6-8 of the Target Configuration training module detail the options I suggested: http://processors.wiki.ti.com/index.php/Category:CCS_Training

    Robert56682 said:
    But no matter what tried, I cannot get rid of that TMS320F280.ccxml.  I try to physically remove it from the directories, I try to delete it in the "Target Configurations" menu, etc.  But still comes back everytime I startup CCS V5.1.  Please advise - how to get rid of it permanently?

    That is really strange. When you delete it from the Target Configurations view, it should be GONE. You can try deleting it from the file system (i.e. windows explorer). The User Defined location is in either:

    Windows 7: C:\Users\<user>\ti\CCSTargetConfigurations OR C:\Users\<user>\user\CCSTargetConfigurations

    XP: C:\Documents and Settings\<user>\ti\CCSTargetConfigurations OR C:\Documents and Settings\<user>\user\CCSTargetConfigurations

    Thanks

    ki

  • Thanks for the reply.  There was something called a .launch file with name TMS320F2810, when I checked all of the C:\Users directories (Win 7), but no .ccxml files.  I deleted it.  I also deleted TMS320F2810.ccxml once again from Target Configurations.  I then exited CCS, and restarted it.  Exiting CCS saves everything, right?  That is not clear on CCS 5.1.  I think an improvement would be to have a "Save All" or something so the user know thier setup is being saved.

    But when I restarted CCS, once again TMS320F2810.ccxml is listed in my project, as shown below:

     

    I know how to launch my ccxml file, but wish to have this TMS320F2810.ccxml permanently removed from the project.

    Please advise,

    Robert

  • My apologies, I thought it was in the User Defined location. that persistent ccxml file is in your project folder. 

    ...and I see the behavior you describe. Very strange and not what i expected.... need to look at this more.

  • As a workaround for now, make sure the ccxml you do want to use is set to [Active]. This will make CCS use that one instead of the one that keeps coming back.

  • That suggestion is not working.  For explanation: I have 2 projects in CCS V5.1.  Let's call them project A and project B.  project A has A.ccxml and project B has B.ccxml.  Project B also still has TMS320F2810.ccxml.  Project B is the one I am working on now.

    Before trying your suggestion, A.ccxml and TMS320F2810.ccxml were both listed [Active].  When I set B.ccxml to [Active], project A.ccxml still reads as [Active] also.  TMS320F2810.ccxml is not listed as [Active] after. 

    Then when I exit CCS, and re-enter, A.ccxml and TMS320F2810.ccxml are once again [Active], and B.ccxml is not [Active].  CCS refuses to remember B.ccxml is the desired [Active].  It also refuses to remove [Active] from A.ccxml, and remove TMS320F2810.ccxml.

    I am having a lot of troubles with CCS V5.

    Robert

  • Robert56682 said:

    That suggestion is not working.  For explanation: I have 2 projects in CCS V5.1.  Let's call them project A and project B.  project A has A.ccxml and project B has B.ccxml.  Project B also still has TMS320F2810.ccxml.  Project B is the one I am working on now.

    Before trying your suggestion, A.ccxml and TMS320F2810.ccxml were both listed [Active].  When I set B.ccxml to [Active], project A.ccxml still reads as [Active] also.  TMS320F2810.ccxml is not listed as [Active] after. 

    Then when I exit CCS, and re-enter, A.ccxml and TMS320F2810.ccxml are once again [Active], and B.ccxml is not [Active]. 

    Got it, thanks for the clear description.

    Robert56682 said:
    CCS refuses to remember B.ccxml is the desired [Active]. 

    Yeah I found out that this is a known behavior (or bug depending on how you look at it). If you specified a device and connection type when you created the project, it autogenerated a ccxml file for you. The issue is that the project will also manage this file for you in the sense that if it gets deleted, it will regenerated. This is the root issue. This is expected behavior but as you can see, it can cause all sorts of headaches. And on top of it, it keeps re-setting it as [Active]. argh! So in CCSv5.3, there will be an option to disable this auto-regen of the ccxml file.

    Right now, the only way I see to disable this is to change the project properties so that NO connection type is specified in the 'General' options. And to do that you have to change the device Variant to a generic one (like: Generic 28xx Device). Once you do that, it will clear the connection type. And may reset some of the other options (linker command file). But this will prevent CCS from generating a new ccxml file because it cannot do it for generic variants. if I think of a better workaround I'll let you know. Personally I'd probably just launch a project-less debug session and then load my program.

    Anyway sorry for the pain. It definitely is a pain that is for sure.

    ki

  • Robert56682 said:
    It also refuses to remove [Active] from A.ccxml, and remove TMS320F2810.ccxml.

    I forgot to touch on this in my last post. This is expected behavior. There can be one [Active] ccxml for EACH project. That [Active] designation is to determine which ccxml file  will be used if there are more than one ccxml in the SAME project. So really what you want is A.ccxml being [Active] in project A and B.ccxml being [Active] in project B.

  • Ki,

    I think this issue is resolved.  CCS V5.3 will have a better fix, but for now, changing to Generic 28xx Device removed TMS320F2810.ccxml from the project, as desired.  I use my own specific .ccxml anyways, so doesn't matter if overall project is 'Generic'.

    Thanks,

    Robert

  • I forgot to add I have insight into the other problem: reviewing my description above, CCS was always starting with A.ccxml, for project "A", even though I was debugging project "B", with B.ccxml.  And it was automatically always trying to connect to the target for project A, which is not being used, causing errors every CCS startup.

    As it turns out, this was probably related to scripting.  If you know, with scripting you can say loadJSFile <.js file to load> true.  The "true" means keep loading this script every CCS restart.  Well, I have used scripting on all my projects, including A.  And when I had previously been debugging A, I loaded A script with the "true".  Since I did that before project B, it seems CCS and scripting always started by reloading A script.  And in A script, it started the debugger session (which is for a different target than B).  That is why the A target was always starting, and causing errors when it couldn't find it's target.  The fix appears to have been reloading the script for project A once, but without the "true" at the end.  Now it doesn't restart everytime CCS does, and so the problem doesn't occur ;)

    Robert