Hello,
I am having trouble porting a working USB composite device application from the LPC54114 to the LPC11U68.
Problem Background:
In this application, the device is either enumerated as CDC only, or a composite CDC + MSC device. The problem occurs in enumerating as a composite device.
- Testing with a host machine running Windows 10
- Using the LPC Open ROM API V3.03
- a COM port device and Mass Storage device both appear in device manager upon enumerating the composite device, however, I cannot connect to the Vcom port in any serial terminal, and after a minute or so, Windows declares the device unrecognizable
- Using a debug probe, I can see the MCU enters the hard fault handler after USB initialization, and before entering any CDC or MSC callbacks.
Debugging steps:
- I am familiar with the USBD ROM examples and have tried different PIDs and endpoint addresses according to the examples and also AN11232.
- implemented ROM driver bug workarounds: (MSC) artf45032, (CDC) artf44835. artf32219, artf32289. --see usb_init.c
- checked the USB0 controller ERROR register from the hard fault handler. (reports no error)
- I know from debugging that the hardfault occurs after the usb initialization function runs and before any interface callbacks are invoked.
I'd like to confirm that the device descriptor file and implementation of the ROM driver bug workarounds are both correct. Further debugging steps would be appreciated.
Thank you,
Gabriel