We're designing a board with the 5529 and a USB interface.
We downloaded the CDC+HID API Stacks from the 5529 product page (slac285.zip) and copied the USB_CDC_API, USB_HID_API and USB_Common code from one of the examples into our project. While debugging, I see that there are actually differences between the USB code modules in the different Example directories. (see USB_Common/usb_eventHandling.c) Particularly disturbing is the comment in USBCDC_Example6/USBCDC_Constructs.c suggesting that receiveDataInBuffer() is not supported. Of these 6 examples, which one is "the right stuff?" Is there a newer version than 1.12 (20-Jul-2009)?
The document "Starting a USB Design Using MSP430 MCUs" describes the USB module as a "full speed USB device (12 Mbps)," but it also qualifies device classes in Table 1, saying that CDC is "Fast (hundreds of KB/sec)" Right now we're only getting about 27 KB/sec, which seems kind of slow. Should we expect more?
We think we've run into a couple of bugs. Has anyone else experienced these issues?
1. Bulk data transfer through CDC intermittently causes a reset, until we configured the code to only send 64 bytes at a time.
2. It appears that we have to activate/deactivate the USCI in USB_handleVbusOnEvent() and USB_handleVbusOffEvent() to get correct behavior when plugging/unplugging the USB cable.
Thanks,
Bob Techentin