Texas Instruments

MSP430  USB Firmware Updater

Release Notes 

Document Revision: 050415.1147

Introduction

The MSP430 USB Firmware Updater is an example application that may be used as-is or as a starting point for building your own firmware updater.  It is written in Python and consists of a graphical user interface and an existing command line interface called python-msp430-tools written by Chris Liechti.    Care has been taken to keep python-msp430-tools and the GUI independent.  As long as no drastic changes are made to the python-msp430-tools command line interface the GUI should work with updated python-msp430-tools.  This Firmware updater should work with all 5xx/6xx devices with a USB connection.

Requirements

Linux:  Python (2.6+) with tkinter (most likely already installed)

Windows: Python (2.6+), pwinusb-0.3.1Python distribute

Mac: XCODE, cython-0.22, cython-hidapi, Python (2.7.9+)

This document is divided into the following sections:

Documentation

  • MSP430 Tools Overview
  • python-msp430-tools command line documentation
  • What's New

    This is an update of the original MSP430 USB Firmware Upgrader and has the following additions:

    The MSP430  USB Firmware Updater contains the following components.

    python-msp430-tools Command line MSP430 Tools
    License_Manifest MSP430  USB Firmware Updater license and manifest
    *.txt HID Demo, Blink Demo, and CDC Demo titext files
    TargetGUI.py GUI Version of  MSP430  USB Firmware Updater
    Python_Firmware_UpgraderGUI.exeGUI executable

    Installation and Usage

    This is installed as part of the MSP430 USB stack installation.  The Python Firware Upgrader tool can be run either by double clicking on the Python_Firmware_UpgraderGUI.exe file (Windows only) or from the command line.   When running from the command line, additional software packages are required for Windows. See below.

    python setup.py install
    python setup.py install

    To install the packages required for the tool to run on Mac:

                                 python setup.py install

                               python setup-mac.py build
                               sudo python setup-mac.py install

    To run this from Linux or Mac, sudo or root is required as it needs to write to a raw HID device.   Example invocations:


    Windows (After installing Python and pwinusb)

     

     All examples are in a command window  from the  MSP430_USB_Firmware_Upgrader directory 

     

    GUI

    set PYTHONPATH=.\python-msp430-tools& python TargetGUI.py 

     

    Command Line

    set PYTHONPATH=.\python-msp430-tools& python -m msp430.bsl5.hid_1 -e -v -P ./5529_LED_Blink.txt

    Linux and Mac

     

     All examples are in an xterm window  from the  MSP430_USB_Firmware_Upgrader directory 

     

    GUI

    sudo PYTHONPATH=./python-msp430-tools python TargetGUI.py

     

    Command Line

    sudo PYTHONPATH=./python-msp430-tools python -m msp430.bsl5.hid_1 -e -v -P ./5529_LED_Blink.txt


    Upgrade Information

    Initial version, no upgrade information but python-msp430-tools may be upgraded by unzipping the zip file while in the  MSP430_USB_Firmware_Upgrader directory.

    Host Support

    This release supports installation and development on Microsoft Windows 7 and Windows 10 Workstations, Ubuntu Linux 11.04+, Mac OSX Yosemite 10.10.1+

    Dependencies

    Python 2.6+, and pwinusb for Windows
    Python 2.7.9+, cython, cython-hidapi for Mac

    Device Support

    This release supports the Texas Instruments MSP430  device family.

    Validation Information

    All functionality for this release has been tested on Windows 7 32 and 64 bits, Windows 10,  Ubuntu 11.04 and 14.04, and Mac OSX Yosemite 10.10.1 with a MSP430F5529 Experimenter's Board and a Target Board with a MSP430F6638.

    Examples

    Blinkie example:
    Linux and Mac
    sudo PYTHONPATH=./python-msp430-tools python -m msp430.bsl5.hid_1 -e -v -P ./5529_LED_Blink.txt
    Windows
    set PYTHONPATH=.\python-msp430-tools& python -m msp430.bsl5.hid_1 -e -v -P ./5529_LED_Blink.txt

    HID Example (This may be used with the HID Demo):
    Linux and Mac
    sudo PYTHONPATH=./python-msp430-tools python -m msp430.bsl5.hid_1 -e -v -P ./5529_HID_echo.txt
    Windows
    set PYTHONPATH=.\python-msp430-tools& python -m msp430.bsl5.hid_1 -e -v -P ./5529_HID_echo.txt

    CDC Example (Note Windows will detect a new CDC device and try to find a driver)
    Linux and Mac
    sudo PYTHONPATH=./python-msp430-tools python -m msp430.bsl5.hid_1 -e -v -P ./5529_CDC_echo.txt
    Windows
    set PYTHONPATH=.\python-msp430-tools& python -m msp430.bsl5.hid_1 -e -v -P ./5529_CDC_echo.txt

    Known Issues

    1) The Python Firmware Upgrader tool  currently does not have the capability to recover from an interrupted firmware upgrade process (ex. when USB cable is pulled during upgrade) where the vector table might become corrupted.  If this is of concern, use the Visual Studio based MSP430 USB Firmware Upgrader Tool.
    2) Hid.py filename in the msp430-python-tools directory conflicted with the hid.py filename in cython-hidapi module during a calls to import hid.  In order to resolve this conflict, hid.py has been re-named to hid_1.py and the original hid.py included as hid_original.py in the msp430-python-tools directory.
    3) On Mac, the user will see a brief flash of progress bar when BSL upgrade is done using command line.    

    Outstanding Defects

    None Found


    Versioning

    This is build 3_00_00_00 of  MSP430 Firmware Updater

    Technical Support and Product Updates

    Support

    Additional Resources

    For more information, visit www.ti.com.