AnsweredAssumed Answered

MSC class USB device derived from STM32CUBEMX not enumerating

Question asked by p.ben on Oct 17, 2014
I created a USB project using STM32CUBEMX ver 4.3 based on the Mass Storage Class for the STM32L0 Discovery Board.

When I run the project that Cube creates out of the box on the Discovery board and connect it to my laptop through USB, I see that Windows fails to enumerate the device properly.
I sniffed the USB transactions using USBlyzer and see that the first few steps of the enumeration including retrieval of device descriptor, configuration descriptor and string descriptor and selection of interface goes ok. The enumeration process runs into trouble with the "Class Interface" request upon which the device is returning an error.
The details of the request and the response is listed below.

My questions:
* is the MSC class device known to work properly for CubeMX
* is there anything I need to do for the project that CubeMX creates in order to even past enumeration
* any thoughts on what the error below may be related to
=======================

URB Class Interface issued

Device Object FFFFFA80075856D0h

Driver Object ACPI

URB Function URB_FUNCTION_CLASS_INTERFACE

Request Type Class request from Interface

Request FEh

Value 0000h

Index 0000h

Length 0001h
=======================================

Here's the response from the device
====================================
URB Control Transfer failed 

Device Object FFFFFA80075856D0h

Driver Object ACPI

URB Function URB_FUNCTION_CONTROL_TRANSFER

URB Status USBD_STATUS_XACT_ERROR

Endpoint 0

 

Default Control

Request Type : Class request from Interface

Request FEh

Value 0000h

Index 0000h

Length 0001h

=====================================

=====================================

Outcomes