Change VID/PID info so USB works on Windows.

This commit is contained in:
Damien 2013-10-14 00:03:29 +01:00
parent fee89d520f
commit 5dd455d06d
2 changed files with 25 additions and 9 deletions

View File

@ -52,13 +52,10 @@
/** @defgroup USBD_DESC_Private_Defines /** @defgroup USBD_DESC_Private_Defines
* @{ * @{
*/ */
/*
#define USBD_VID 0x0483 // TODO set VID #define USBD_VID 0x0483 // TODO set VID
#define USBD_PID 0x5720 // TODO set PID #define USBD_PID 0x5720 // TODO set PID
/** @defgroup USB_String_Descriptors
* @{
*/
#define USBD_LANGID_STRING 0x409 #define USBD_LANGID_STRING 0x409
#define USBD_MANUFACTURER_STRING "STMicroelectronics" // TODO set #define USBD_MANUFACTURER_STRING "STMicroelectronics" // TODO set
#define USBD_PRODUCT_HS_STRING "VCP/MSC in HS Mode" // TODO set #define USBD_PRODUCT_HS_STRING "VCP/MSC in HS Mode" // TODO set
@ -69,10 +66,27 @@
#define USBD_INTERFACE_HS_STRING "VCP/MSC Interface" // TODO set #define USBD_INTERFACE_HS_STRING "VCP/MSC Interface" // TODO set
#define USBD_CONFIGURATION_FS_STRING "VCP/MSC Config" // TODO set #define USBD_CONFIGURATION_FS_STRING "VCP/MSC Config" // TODO set
#define USBD_INTERFACE_FS_STRING "VCP/MSC Interface" // TODO set #define USBD_INTERFACE_FS_STRING "VCP/MSC Interface" // TODO set
*/
/** /**
* @} * @}
*/ */
// seems we need to use this VID/PID to get it to work on windows
#define USBD_VID 0x0483
#define USBD_PID 0x5740
#define USBD_LANGID_STRING 0x409
#define USBD_MANUFACTURER_STRING "STMicroelectronics"
#define USBD_PRODUCT_HS_STRING "STM32 Virtual ComPort in HS mode"
#define USBD_SERIALNUMBER_HS_STRING "00000000050B"
#define USBD_PRODUCT_FS_STRING "STM32 Virtual ComPort in FS Mode"
#define USBD_SERIALNUMBER_FS_STRING "00000000050C"
#define USBD_CONFIGURATION_HS_STRING "VCP Config"
#define USBD_INTERFACE_HS_STRING "VCP Interface"
#define USBD_CONFIGURATION_FS_STRING "VCP Config"
#define USBD_INTERFACE_FS_STRING "VCP Interface"
/** @defgroup USBD_DESC_Private_Macros /** @defgroup USBD_DESC_Private_Macros
* @{ * @{

View File

@ -71,7 +71,7 @@
#include "usbd_msc_bot.h" #include "usbd_msc_bot.h"
#include "usbd_msc_mem.h" #include "usbd_msc_mem.h"
#define USB_PYB_CONFIG_DESC_SIZ 98 #define USB_PYB_CONFIG_DESC_SIZ (98)
#define MSC_EPIN_SIZE MSC_MAX_PACKET #define MSC_EPIN_SIZE MSC_MAX_PACKET
#define MSC_EPOUT_SIZE MSC_MAX_PACKET #define MSC_EPOUT_SIZE MSC_MAX_PACKET
@ -150,7 +150,7 @@ __ALIGN_BEGIN static uint8_t usbd_pyb_CfgDesc[USB_PYB_CONFIG_DESC_SIZ] __ALIGN_E
HIBYTE(USB_PYB_CONFIG_DESC_SIZ), HIBYTE(USB_PYB_CONFIG_DESC_SIZ),
0x03, // bNumInterfaces: 3 interfaces 0x03, // bNumInterfaces: 3 interfaces
0x01, // bConfigurationValue: Configuration value 0x01, // bConfigurationValue: Configuration value
0x00, // iConfiguration: Index of string descriptor describing the configuration 0x04, // iConfiguration: Index of string descriptor describing the configuration
0x80, // bmAttributes: bus powered; 0xc0 for self powered 0x80, // bmAttributes: bus powered; 0xc0 for self powered
0xfa, // bMaxPower: in units of 2mA 0xfa, // bMaxPower: in units of 2mA
@ -163,7 +163,7 @@ __ALIGN_BEGIN static uint8_t usbd_pyb_CfgDesc[USB_PYB_CONFIG_DESC_SIZ] __ALIGN_E
0x00, // bFunctionClass: ? 0x00, // bFunctionClass: ?
0x00, // bFunctionSubClass: ? 0x00, // bFunctionSubClass: ?
0x00, // bFunctionProtocol: ? 0x00, // bFunctionProtocol: ?
0x00, // iFunction: index of string for this function 0x04, // iFunction: index of string for this function
//-------------------------------------------------------------------------- //--------------------------------------------------------------------------
// Interface Descriptor // Interface Descriptor
@ -252,9 +252,9 @@ __ALIGN_BEGIN static uint8_t usbd_pyb_CfgDesc[USB_PYB_CONFIG_DESC_SIZ] __ALIGN_E
USB_INTERFACE_DESCRIPTOR_TYPE, // bDescriptorType: interface descriptor USB_INTERFACE_DESCRIPTOR_TYPE, // bDescriptorType: interface descriptor
0x02, // bInterfaceNumber: Number of Interface 0x02, // bInterfaceNumber: Number of Interface
0x00, // bAlternateSetting: Alternate setting 0x00, // bAlternateSetting: Alternate setting
0x02, // bNumEndpoints*/ 0x02, // bNumEndpoints
0x08, // bInterfaceClass: MSC Class 0x08, // bInterfaceClass: MSC Class
0x06, // bInterfaceSubClass : SCSI transparent*/ 0x06, // bInterfaceSubClass : SCSI transparent
0x50, // nInterfaceProtocol 0x50, // nInterfaceProtocol
0x00, // iInterface: 0x00, // iInterface:
@ -397,6 +397,7 @@ static uint8_t usbd_pyb_Setup(void *pdev, USB_SETUP_REQ *req) {
// Standard Device Request --------------------------------------------- // Standard Device Request ---------------------------------------------
case (USB_REQ_TYPE_STANDARD | USB_REQ_RECIPIENT_DEVICE): case (USB_REQ_TYPE_STANDARD | USB_REQ_RECIPIENT_DEVICE):
/*
switch (req->bRequest) { switch (req->bRequest) {
case USB_REQ_GET_DESCRIPTOR: case USB_REQ_GET_DESCRIPTOR:
{ {
@ -409,6 +410,7 @@ static uint8_t usbd_pyb_Setup(void *pdev, USB_SETUP_REQ *req) {
return USBD_CtlSendData(pdev, pbuf, len); return USBD_CtlSendData(pdev, pbuf, len);
} }
} }
*/
break; break;
// Standard Interface Request ------------------------------------------ // Standard Interface Request ------------------------------------------