USB MSC Device Enumeration Problem

Discussion created by lpcware Employee on Jun 15, 2016
Content originally posted in LPCWare by rlund on Tue Feb 10 13:10:10 MST 2015
I am using the code from the MSC device example project, and incorporating it into my own project.  Unfortunately, I am not successfully getting all the way through enumeration.  Here is the setup and what I have gathered so far:

PC: Windows 7
Board/Chip: LPC Xplorer 1837
Code: Ported from the msc example, with the addition of other drivers an initialization code not currently being utilized.
Power Source: Have tried powering two different ways, once over USB1 and once using an external DC power supply, both with the same result
Problematic Behavior: The readme states that the disk should show up as an unformatted drive in my computer when the program is run.  It doesn't.

Drive mapping: The disk does sometimes show up in the device manager under disk drives, but not under the computer tab with a letter mapped to it.  I tried to manually assign the letter, but the drive didn't show up in disk management, so there was no option to do that.  It also sometimes appears very momentarily, in the computer tab, with a mapped letter, when you disconnect the board.
USB Packets: I put a Beagle USB 480 in the middle to sniff packets going back and forth, and compared the proper enumeration of a flash drive to what I was seeing with the LPC board.  I found that when connecting, the LPC board is typically failing partway into the "SCSI Inquiry" command part of enumeration.  I did see a more "orphaned" packets though, and repeated transactions with the LPC board, which I didn't experience with the normal flash drive, so maybe noise could be a contributor.

It seems like we're 90% of the way there, but just not quite all the way there.  Is there are particular .ini/.inf file I should be using in conjunction with the MSC device example?  I've read the data sheet and don't see any obvious setting issue, particularly since we're getting successfully part-way through enumeration.

Thanks for your help.