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.

MSP430F5514: MSP430 USB BSL device was unplugged

Part Number: MSP430F5514

I am having the same issue as this previous post. It seems it was closed without resolution.

Here is screen shot of the USB firmware upgrader I am using

The other symptom is I tried programming (by starting the debugger in CCS8) with the USB FET using the two wire interface and the first couple of times I got an "Unknown Device" message and then one time it worked and the device programmed. After that the USB Firmware Upgrade Tool worked for a time or two, and then started failing again.

Any ideas where I might start to look for what is causing this behavior?

  • Hello Gerry,

    The tool you are using is no longer supported by TI. We recommend using the Python Firmware Upgrader Tool found within the MSP430 USB Developer's Packages download. (www.ti.com/.../msp430usbdevpack ) This tool is regularly updated and maintained with the newest version of the USB Developer's Package.
  • OK, the python upgrader tool worked , however our custom upgrader tool does not work with blank devices but does work when reprogramming a device. It previously worked with both blank and programmed devices. Has the bootloader firmware in the MSP430F5514 been changed recently? Any suggestions of what to look for to get our custom upgrader working with blank devices again?
  • Hello Gerry,

    Recently? not really, but it would depend on what revision of the device you are using now versus what you were before. We only change what is programmed into the device (aka USB BSL updates in this case) with new revision and/or needed changes cause a new revision. There are several USB and BSL errata associated with this part that have been fixed, so this might be your issue.

  • This is creating a big problem for us. We built a custom programming tool for our client and the manufacturer based on the TI supplied Windows libraries at the time (several years ago). Now the Windows libraries are not supported and apparently the old ones do not work with the latest versions of the BSL. This is really quite unacceptable.

    I was able to get the Python executable to run on my Windows 7 machine but my client cannot get it to work on Windows 10. As I understand it, the Python executable is supposed to load and run without installing any other Python tools or libraries. Is this correct?

    The executable starts to load and run but then stops without any error messages. Is there a simple way to debug this?

    We are now looking at the possibility of having to make a new programming tool using Python. How long is TI intending to support this?

    We are hardware and firmware designers and we went out of house to get the last programming tool built. It is not within the scope of the current project to have to do this again.

    We would appreciate elevated support for this. Our manufacturing line is on hold.

    Gerry Kurz
    PxT Technologies Inc.
  • Hello Gerry,

    Yes, the Python tool is supposed to work "out of box" from the download. Just download the zip file and extract to your PC. Then you can double click the .exe to run this. You do need to be sure to extract the files for it to work. Can you describe the errors you are seeing? I'm running the Python .exe on a W10 platform myself and have not seen issues.

    Is the Python GUI not coming up, or is your client having issues connecting to the GUI with a device in BSL mode? How is BSL mode being invoked?
  • Hi Gerry,

    The Python_Firmware_UpgragerGUI tool should run on Windows 10 machine when the .exe file is double clicked.  Perhaps your customer can download a clean installation of the Python_Firmware_Upgrader folder and try again?

    There is no easy way of debugging what is going on with the .exe file, unfortunately.  Some things the customer might look at:

    1) Bring up the Task Manager and see if the task is running. 

    2) If the Task Manager shows that the Python_Firmware_UpgraderGUI is running then it might have been minimized.  Might need to figure out why that is happening.

    If the task does not show up in Task Manager then the only other option is for the customer to download the necessary python packages and run it from the command line.  All the instructions for doing this are listed in the file, 'release_Notes_Example_Python_Firmware_Upgrader.html' included in the Python_Firmware_Upgrader folder.

    Also if the customer chooses to download the Python packages and when it is time to run the command 'python setup.py install' it should be done within each downloaded python package and not from within the Python_Firmware_Upgrader folder. 

    Regards,

    Arthi 

     

  • Is this the correct zip file?

    software-dl.ti.com/.../Python_Firmware_Upgrader-5_20_06_02.zip

    And this is the only file that is required to run the upgrader in a basic Windows 10 environment? No other files, drivers or packages to install prior?

    The command line option is not going to work, the manufacturer does not have the skill to be able to do this. Even I find it confusing and frustrating.

    Expecting non-programmers to run things from a DOS prompt is unacceptable. I can see it's value from a development and test point of view but that's it.

    So what is TI's policy on this? Is it expected that every user of these parts will have to write a custom programmer and then have to maintain it by tracking BSL revisions?

    Or is TI going to provide a supported programming tool?

  • Yes, that is the file that is required.  I downloaded it to my Windows 10 machine and I was able to bring up the tool.  Jace was able to run the tool on his Windows 10 machine.   So we are not sure what is going on with your customer's Windows 10 machine.   Did they re-name any of the files or icons that is part of the Python_Firmware_Upgrader folder?  If the TI_Bug_Icon_Red.ico icon is renamed or not in the folder when the .exe file is clicked, then the GUI will not come up.

    The Python_Firware_Upgrader tool is the TI supported tool and there are no other plans currently for another tool.  

    The Python_Firmware_UpgraderGUI.exe was created to allow customers to simply double click on the executable and bring up the tool without having to install python packages.  The .exe packages the python tool.  We have also released the source code and instructions on bringing up the tool if the .exe fails or the customer wants to personalize the tool for their needs.

    Did your customer check Task Manager to see if the GUI is running in the background? 

     

    Regards,

    Arthi

     

  • The problem seems obvious now that you have told me that the icon file needs to be present.
    I will get my client to retry now.
  • So I would like to send the manufacturer the minimum number of files to have the tool run. Is it just the .exe and .ico files that are required or are there more?
  • OK, it worked on my clients machine so thanks for the help.
    However, I still would prefer to send a minimum of files to the manufacturer, they are pretty low tech....
  • Gerry,

    The download package is pretty minimal already. You could probably get rid of the examples (.txt files), but the rest is essential.
  • OK thanks.

    I am still disappointed that you are not supporting the windows version of the tool. We spent a lot of time and effort building our own tool with these libraries so that we would not have to switch the PUR input to reprogram the devices.

    Now this work will have to be redone.

  • Gerry,

    You can still have the Python tool work with the USB BSLs that don't use the PUR to get into BSL mode. Both the old windows version and the Python version only communicate whit the device once its in BSL mode. Default BSL has to have PUR pulled high, a SW entry, or a Blank Device (Blank reset vector) to invoke the BSL. you can of course change the BSL invoke by customizing the BSL in the device.
  • Yes I know we can modify the Python tool to have it work without PUR, but that is my point, we did this work with the old windows tool and now we have to redo it.

    The one thing I don't understand is why our current windows tool will no longer program a blank device (although it does detect a blank device) but will still reprogram a programmed device by using a SW entry to the BSL. Why does the BSL behave differently depending on the entry method? Once you are in the BSL, shouldn't the interface to the programming tool (whatever it is) be the same?
  • Gerry,

    To clarify, no modification of the Python tool is needed . As long as the device is in BSL mode, the Python tool should be able to communicate with it . Neither the Python tool or the Windows tool can invoke the BSL on the part.

    For the blank device, please make sure that the Reset Vector is blank as this is the check the boot code uses for starting in BSL.

**Attention** This is a public forum