MSP430 USB Firmware Updater
Release Notes
Document Revision: 050415.1147
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.
Linux: Python (2.6+) with tkinter (most likely
already installed)
Windows: Python
(2.6+), pwinusb-0.3.1, Python distribute
Mac: XCODE, cython-0.22, cython-hidapi, Python (2.7.9+)
This document is divided into the following sections:
MSP430 Tools Overview
python-msp430-tools
command line documentation
This is an update of the original MSP430 USB Firmware Upgrader
and has the following additions:
- BSD licensed source code
- Runs on Linux, Windows and Mac
- Does not require Visual Studio or Windows DDK
- Updated with the RAM_BSL.00.07.88.38.txt file
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.exe | GUI executable |
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
(2.6+)
- Add the python installed location to Class Path in the environment variables
- Python distribute
- Untar/Unzip anywhere on your system
- In command window, navigate to python distribute
directory and run the following install command
- pwinusb-0.3.1
- Unzip anywhere on your system
- In command window, navigate to pywinusb-0.3.1 directory
and run the following install command
- If
/pwinusb-0.3.1/pywinusb folder is not installed
in /python/ Lib/site-packages, copy and paste the folder to
this location
To install the packages required for the tool to run on Mac:
- Cython-0.22
- In command window, navigate to Cython directory and run the following command:
python setup.py install
- Cython-hidapi
- In command window, navigate to Cython hidapi directory and run the following commands:
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
|
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.
This release supports installation and development on
Microsoft Windows 7 and Windows 10 Workstations, Ubuntu Linux 11.04+, Mac OSX Yosemite 10.10.1+
Python 2.6+, and pwinusb for Windows
Python 2.7.9+, cython, cython-hidapi for Mac
This release supports the Texas Instruments MSP430
device family.
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.
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
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
This is build 3_00_00_00 of MSP430 Firmware Updater
Support
Additional Resources
For more information, visit www.ti.com.