Texas Instruments

MSP430 USB Developers  Package 5_00_00 Release Notes

This release note is divided into the following sections:

Introduction

MSP430 USB Developers Package Version 5_00_00  is a full release with support for CDC, HID, MSC, PHDC and composite devices.

MSP430 USB Developers Package provides APIs that make it easy to implement a simple USB data connection between an MSP430 and a USB host. It includes support for these common USB device classes:

• Communications Device Class (CDC)
• Human Interface Device class (HID)
• Mass Storage Class (MSC)
• Personal Healthcare Device Class (PHDC)

Users must read the “Updating and Compatibility Information” below, and follow the instructions to port their application to this new release. 

back to top


PackageContents

back to top

Documentation

Here are links to various documentation

Programmers_Guide_MSP430_USB_API
Examples_Guide_MSP430_USB
API_Function_Reference

back to top

What's New

MSP430 USB Developers Package 5_00_00 Release

Defects Fixed in 5_00_00:


Bug IDSummary
10668USB stack and examples need to follow ONeMCU coding standard
10670Re-write Descriptor tool


back to top

Versions of dependent package and IDEs

back to top


Known Issues

There are some known issues with importing and building USB examples with older/newer versions of CCS and IAR.

CCS
1.  Build Errors
2. Build Warnings
3. MSP430 GCCCommand Line GCC

1.  Build Errors
IAR
back to top

Benchmarks

USB Developers Package Code Metrics

The USB stack code metrics were performed with the CCS 4.3.1 compiler, IAR 6.10 compiler and MSPGCC 4.9.1 compiler with different optimization settings. Users may see different code sizes depending on their project settings so it is best to perform the benchmarks within the project itself.  Code metrics for the USB stack code can be viewed here:

Metrics.html




Performance

MSC Performance (Single Buffering)

File Size Read (MB/sec) Write (MB/sec)
4096 0.20 0.12
8192 0.22 0.13
16284 0.21 0.12
32768 0.22 0.12
65536 0.22 0.15
131072 0.22 0.13
262144 0.21 0.15
524288 0.20 0.15

MSC Performance (Double Buffering)

File Size Read (MB/sec) Write (MB/sec)
4096 0.23 0.11
8192 0.25 0.12
16284 0.27 0.12
32768 0.27 0.12
65536 0.27 0.12
131072 0.26 0.14
262144 0.27 0.16
524288 0.28 0.15


VDBENCH application used for MSC benchmarking. No validation of transfer done.  Measured in Mega Bytes/sec.

CDC Performance

Direction Speed (Kbps) CPU frequency (MHz)
RX 69.421 1
RX 140.660 2
RX 274.005 4
RX 475.060 8
RX 598.844 12
RX 677.156 16
RX 675.738 20
RX 674.130 25
TX 67.005 1
TX 136.044 2
TX 271.304 4
TX 530.643 8
TX 704.830 12
TX 803.014 16
TX 800.531 20
TX 797.851 25

Tranfer size for CDC benchmarks is 2048 arrays with 1024bytes/array.
The MSP430 application used calls USBCDC_rejectData() for any data it receives.  The is to nearly eliminate the device application from being a factor.  If the application rejects the data, it doesn’t use any time to move the data.  In contrast, any real application must handle the data, and thus will get considerably less, probably closer to the 200-500KB/sec range. 

Interrupt Latency


Interrupt Source#Cycles
ENDPOINT0 Receive Data224
ENDPOINT0 Transmit Data415
USB_RESET455
USB SUSPEND121
USB RESUME504
CDC Receive Data1601
CDC Transmit Data246
HID Receive Data1566
HID Transmit Data106
MSC Receive Data647
MSC Transmit Data1758

Special benchmark applications were used with code inserted to measure latency  using a timer.
Applications made use new USE_TIMER_FOR_RESUME to reduce interrupt latency for resume interrupt.
Without the use of  USE_TIMER_FOR_RESUME resume interrupt can take arounbd 13000 cycles.

back to top

Upgrading from previous versions of USB Developers Package

     Version 5_00_00 release of USB Developers Package will only work with version 2.00.00.16 driverlib library. (See driverlib release_notes.html file for changes).   

     If existing users want to update to 5_00_00, then the following should be done:.

1.  Copy/Replace stack files.2. Re-generate Descriptor Tool Output
3.  Replace deprecated driverlib APIs in all other files with their equivalent as listed in the driverlib release_notes.html file and APIS_REMOVED.html file.
back to top


Updating driverlib to a new version.

Simply replace the entire driverlib folder with the new version.

back to top

Versioning

All releases have 4 digits (M.mm.pp.bb). This includes GA and pre-releases (engineering, alpha/EA, beta, etc.). Pre-releases are denoted with a suffix (e.g. 6.30.00.00-eng or 6.30.00.10-beta).

This product's version follows a version format, M.mm.pp.bb, where M is a single digit Major number, mm is 2 digit minor number, pp is a 2 digit patch number, and b is an unrestricted set of digits used as an incrementing build counter.

To support multiple side-by-side installations of the product, the product version is encoded in the top level directory (e.g. MSP430_USB_Developers_Package_3_0_0_0).

Subsequent releases of patch upgrades will be identified by the patch number, ex.  3.0.1.05 with directory MSP430_USB_Developers_Package_3_0_1_05. Typically, these patches only include critical bug fixes.

back to top


Command Line GCC and Makefile

To run the GCC examples from the command line, two variables in the each example makefile has to be updated.  See the Examples Guide for more details


back to top

Technical Support and Product Updates

back to top


Last updated: 021015.0923

Copyright 2013, Texas Instruments Incorporated