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/TMDSCNCD28027: GUI Composer deleted all the widget bindings in my application

Part Number: TMDSCNCD28027
Other Parts Discussed in Thread: TMS320F28027

Tool/software: Code Composer Studio

Yesterday I was working on my GUI Composer application (version 2.9.0, TI Cloud Tools).  It was driving a TMDSCNCD28027 control card in the TMDSHVRESLLCKIT.  After returning to the bench after a couple of hours away, the GUI Composer had timed out and I had to log in again.  When I did so, the application that was working fine earlier in the day did not work at all.  I found that every widget binding had disappeared!  After I added all the bindings again, the application worked.

The project properties are:

  • Device: TMS320F28027
  • connection: XDS100v1 debug probe
  • executable:  HVLLC.out

The GUI uses several buttons, toggle buttons, and number boxes to interact with controller global variables using the "ti_model_prog" bindings.  All these bindings were mysteriously deleted.  I use a Javascript file in the application, and this was not affected.  Also manual edits that I had previously made to the index.gui file in the text editor were not affected.

What caused my bindings to disappear?

While I have your attention, I would also like to request that the timeout period for the GUI Composer be made longer.  It's annoying to get logged out several times during the working day, especially if I have unsaved edits that are lost when I am forcibly logged out.

Thanks,

Ciaran

  • Hello Ciaran,

    Ciaran Brennan said:
    After returning to the bench after a couple of hours away, the GUI Composer had timed out and I had to log in again.  When I did so, the application that was working fine earlier in the day did not work at all.  I found that every widget binding had disappeared!  After I added all the bindings again, the application worked.

    Unfortunately that is expected if you did not explicitly save your solution before the timeout. That said...

    Ciaran Brennan said:
    .  Also manual edits that I had previously made to the index.gui file in the text editor were not affected.

    This part confused me. Your bindings are tied to the index.gui file. If this file is not saved before the timeout, both your bindings and any other edits to the file would be lost when you log back in.

    Can you describe the steps you took to see this issue? What kind of manual edits did you make to index.gui that was not explicitly saved but preserved after logging back in?

    Ciaran Brennan said:
    While I have your attention, I would also like to request that the timeout period for the GUI Composer be made longer.

    What would be a good length for this?

    Thanks

    ki

  • ki,

    This part confused me. Your bindings are tied to the index.gui file. If this file is not saved before the timeout, both your bindings and any other edits to the file would be lost when you log back in.

    Thanks for the answer.  I saved the application before the timeout.  It's an application I've been using over several weeks, so it has been saved many times as I've edited it.  But when I logged back on to Gui Composer this time, all the widget bindings were gone.  This is the only time this has happened - I've saved many times and been logged out many times.  

    If I had forgotten to save, it would just have reverted to the previous version before my latest edits, but that version had all the bindings in it.

    Can you describe the steps you took to see this issue? 

    I was working with an application that I've been using for weeks.  I made a few edits to it - I added a numberbox to monitor another controller program variable and another numberbox to monitor a value computed in the Javascript code.  I changed the Javascript code to compute a couple of additional values and save them to the streamsaver file.  I saved the .gui and .js file (I have a habit of typing Ctrl-S everytime I do anything because I've been logged out and lost edits before.)  Everything was working fine.  I went away to do something else for a few hours, and when I came back I had to log in again.  Then I immediately found that my gui wasn't working, and all the bindings were gone.

    What kind of manual edits did you make to index.gui that was not explicitly saved but preserved after logging back in?

    I have some code related to the streamsaver, such as:

    <link rel="import" href="components/ti-widget-streamsaver/ti-widget-streamsaver.html">

    and I added the "onclick" property to some button widgets like this:

            <ti-widget-button id="Abort_DL_button" onclick="saveAbort()" label="Abort Data Log" raised></ti-widget-button>

    What would be a good length for this?

    I vote for 12 hours, so you can just log in once during the work day.

    - Ciaran

  • It looks like some corruption of the file occurs. I'm checking to see if there is some way we can recover some of the lost data...

  • Hello all,

    Oddly the same loss of widget bindings could occur inside GUI composer v1.1. After this happened a few times I found it prudent to save the app.json script file as a GUI project backup. Seemingly the Cloud version uses similar JAVA code being ported as web page view and has the same issue.

    I recall issue has something to do with the folder path to main.html file not being shown as the root folder in GUI composer explorer.

  • BP101,

    BP101 said:
    After this happened a few times I found it prudent to save the app.json script file as a GUI project backup.

    In the cloud version of Gui Composer (v2) you can't see where the bindings are stored when working in the web interface.  When I exported the project to my PC, found them in the index.json file for the project.  That must be the equivalent of the app.json file you mentioned.  

    I guess it's a good idea to backup the project by exporting it to the local PC occasionally.

    BP101 said:
    I recall issue has something to do with the folder path to main.html file not being shown as the root folder in GUI composer explorer.

    I don't think applies to the cloud version.

  • Ciaran Brennan said:
    I guess it's a good idea to backup the project by exporting it to the local PC occasionally.

    I would since the bigger the project becomes the cloudier the mind becomes over time!

  • Ciaran, it may be too late by now but just in case this is helpful - In GC under 'Project -> Recover' you can go back to your last several saves try to restore your environment. If you already have redone your work or have made multiple saves since then, then it wouldn't be as useful.

  • Ki,

    Thanks for that tip.  I'll try it if it happens again.  I just re-edited all the widgets with bindings and added the bindings back, and its been working OK since.