SLAA457B September   2013  – October 2018 MSP430F5500 , MSP430F5501 , MSP430F5502 , MSP430F5503 , MSP430F5504 , MSP430F5505 , MSP430F5506 , MSP430F5507 , MSP430F5508 , MSP430F5509 , MSP430F5510 , MSP430F5513 , MSP430F5514 , MSP430F5515 , MSP430F5517 , MSP430F5519 , MSP430F5521 , MSP430F5522 , MSP430F5524 , MSP430F5525 , MSP430F5526 , MSP430F5527 , MSP430F5528 , MSP430F5529 , MSP430F5630 , MSP430F5631 , MSP430F5632 , MSP430F5633 , MSP430F5634 , MSP430F5635 , MSP430F5636 , MSP430F5637 , MSP430F5638 , MSP430F5658 , MSP430F5659 , MSP430F6630 , MSP430F6631 , MSP430F6632 , MSP430F6633 , MSP430F6634 , MSP430F6635 , MSP430F6636 , MSP430F6637 , MSP430F6638 , MSP430F6658 , MSP430F6659 , MSP430FG6425 , MSP430FG6426 , MSP430FG6625 , MSP430FG6626

 

  1.   Starting a USB Design Using MSP430™ MCUs
    1.     Trademarks
    2. 1 USB and the Art of Making Something Complex Look Simple
      1. 1.1 What Has Made USB So Successful?
      2. 1.2 But It Looks So Simple!
      3. 1.3 TI's Approach for MSP430 USB
    3. 2 MSP430 USB Silicon
      1. 2.1 How MSP430 Devices are Documented
      2. 2.2 USB-Equipped MSP430 Derivatives
      3. 2.3 MSP430 USB Module
      4. 2.4 USB Certification of the Silicon
    4. 3 Software
      1. 3.1 USB Developers Package: Overview
      2. 3.2 USB API Stacks: Features
      3. 3.3 MSP430 USB Descriptor Tool
      4. 3.4 Host Software, and the Java HID Demo App
      5. 3.5 USB API Programmer's Guide and Examples Guide
      6. 3.6 MSP430 USB Field Firmware Upgrade Tools
    5. 4 MSP430 USB Hardware Design
      1. 4.1 TI Reference Design for USB Interface
      2. 4.2 Selecting a Power Configuration
      3. 4.3 Selecting a Clock Configuration
        1. 4.3.1 Choosing a Source
        2. 4.3.2 Choosing a Frequency
      4. 4.4 Other Reference Design Commentary
    6. 5 MSP430 USB Software Design
      1. 5.1 How to Choose a USB Device Class
      2. 5.2 How to Select a Vendor ID (VID) and Product ID (PID)
        1. 5.2.1 What are the VID and PID?
        2. 5.2.2 How are They Chosen (or Obtained)?
        3. 5.2.3 Using VIDs and PIDs During Development
    7. 6 Getting Started: Evaluating MSP430 USB
      1. 6.1 Software Development Environments
      2. 6.2 F5529 LaunchPad Development Kit
      3. 6.3 MSP430F5529 USB Experimenter's Board
      4. 6.4 FET Target Boards
    8. 7 More Information
  2.   A USB Glossary
  3.   Revision History

USB Glossary

  1. Bulk Transfers: One of four data transfer types on the USB bus. Bulk transfers are designed for moving high volumes of data. They are capable of using any free bandwidth on the bus (that is, bandwidth not already used by the other transfer types). This allows them to achieve the highest data rates; but they are given no reserved bandwidth, so on a busy bus, bulk transfers might receive small bandwidth or experience high latency. Transfer types are determined by the choice of USB interface type; for example, CDC and MSC interfaces use bulk transfers.
  2. Composite USB Device: A physical USB device (one USB connector) that contains more than one USB interface – for example, two CDC interfaces or CDC+HID. The host enumerates each interface as a separate logical entity.
  3. Control Transfers: One of four data transfer types on the USB bus. Control transfers handle the administrative tasks of setting up the connection, like reporting USB descriptors. The host also sends other USB device requests, and the device responds using control transfers. There is a USB endpoint dedicated for these transfers: endpoint 0 (EP0).
  4. Device Class: A defined USB protocol for a particular class of devices. Common device classes include the Communications Device Class (CDC), Human Interface Device (HID) class, and Mass Storage Class (MSC).
  5. Device Installation: The first time a USB device is enumerated, the host may perform one-time functions to install the device. For example, Windows records information about the device in the system registry, using the device's VID and PID as an index. In subsequent enumerations, the host draws from the registry for much of its information about the device. Device installation may be silent (mostly invisible to the end user) or, in the case of CDC on Windows, may require user action.
  6. Endpoint: The end of a pipe. It acts as a "mailbox" on the USB device for that pipe. A device usually has more than one active endpoint. When the host communicates on the bus, it first identifies the physical USB device, then the endpoint number within that device that it wishes to speak to. Endpoints are assigned specific functions according to the USB interfaces that were created. HID/MSC each use one IN and one OUT endpoint, while CDC uses two IN and one OUT endpoint. In the MSP430 API stacks, endpoint management is fully automated by the Descriptor Tool.
  7. Enumeration: The process by which a host interrogates a physical USB device to determine what it is and loads an appropriate driver so that the host application can interface with it. Enumeration happens every time the device is attached.
  8. Interrupt Transfers: One of the four USB data transfer types. Interrupt transfers are designed for guaranteed latency, bandwidth, and delivery. However, the bandwidth is limited to only a single USB packet (64 bytes for full-speed USB) per frame (1 ms). Transfer types are determined by the choice of USB interface type; for example, HID interfaces use interrupt transfers.
  9. Isochronous Transfers: One of the four USB data transfer types. Isochronous transfers provide guaranteed latency and bandwidth but not delivery. That is, if error checking shows corrupted data, the attempt is not retried. This type is intended for streaming audio and video -- applications in which a retry would result in an interruption and thus be more noticeable to the user than simply missing the packet.
  10. INF (*.inf) file: A text-based file required during any USB device installation on Windows, allowing Windows to associate the device with a particular driver. For some device classes, Windows contains the INF internally, allowing for a silent device installation. For CDC, Windows prompts the end user for the INF file.
  11. Pipe: A single line of communication between host and device. Pipes are either IN (into the host) or OUT (out of the host). They are characterized by a particular transfer type (for example, bulk or interrupt).
  12. Product ID (PID): A unique 16-bit value assigned by a USB hardware vendor to one of its products. A VID and PID pair uniquely identifies a product type. (As a rule of thumb, if the USB descriptors of two products differ in any way, they should have different PIDs.)
  13. USB-IF: The USB Implementers Forum. This is the standards body that defines USB specifications, governs USB certification, runs compliance workshops, and owns the legal rights to the USB logo.
  14. USB Host: USB is hierarchal, with one (and only one) host that controls all communication.
  15. USB Device: Also called a USB function. This is a logical or physical entity on the bus that contains one or more USBinterfaces. It possesses one upstream-capable USB connector.
  16. USB Hub: A device that provides communication between one upstream connector and multiple downstream connectors, allowing more USB devices to be attached to a host. In any given bus configuration, a device is either a host, device, or hub.
  17. USB Interface: A logical USB entity that performs a particular function. An interface is typically associated with a particular device class – for example, a "CDC interface".
  18. USB Descriptors: Data structures contained within a physical USB device that describe the device (including the interfaces it supports) and its capabilities. The host reads these during enumeration.
  19. USB Serial Number: A unique string that allows a host to differentiate between devices attached to it that contain the same VID and PID values.
  20. USB speeds: A USB connection is characterized by one of four speeds: low-speed (1.5 Mbps), full-speed (12 Mbps), high-speed (480 Mbps), or super-speed (4.8 Gbps). MSP430 MCUs are USB 2.0 full-speed devices. All MSP430 USB traffic is full-speed.
  21. VBUS: The host is required to make 5-V power available to the device through the USB cable. The name of this power rail is VBUS. In addition to sourcing power, the USB device uses VBUS to determine whether or not an active host is present. Devices often respond to a VBUS-on event by asserting their presence to the host by pulling up the D+ signal.
  22. Vendor ID (VID): A unique 16-bit value assigned by the USB Implementers Forum to a particular USB hardware vendor.