Issues with composite VCP+MSC: VCP not working
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2016-05-01 8:49 AM
Posted on May 01, 2016 at 17:49
Hello,
I am stuck in implementing USB composite (VCP+MSC) using FS-Device_Lib_V4.0.0 (STM32L151). Individually both works but when I try composite VCP+MSC, MSC works well but PC can't communicate via VCP (although it can recognize as COM port). I've edited .inf file and updated device descriptions. What else I am missing to config? I request your suggestion how to fix this issue. Thank you in advance. NB: I'm using ENDP1 in+out for MSC, ENDP3 in+out for VCP, ENDP2 in for VCP interrupt. End point address combined as:#define BTABLE_ADDRESS (0x00)
#define ENDP0_RXADDR (0x0040) #define ENDP0_TXADDR (0x0080) /* EP1 MSC */ #define ENDP1_TXADDR (0x0150) #define ENDP1_RXADDR (0x0190) /* EP2 VCP Int*/ #define ENDP2_TXADDR (0x0100) /* EP3 VCP*/ #define ENDP3_TXADDR (0x00C0) #define ENDP3_RXADDR (0x0110)
This discussion is locked. Please start a new topic to ask your question.
2 REPLIES 2
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2016-05-01 8:52 AM
Posted on May 01, 2016 at 17:52 The original post was too long to process during our migration. Please click on the provided URL to read the original post. https://st--c.eu10.content.force.com/sfc/dist/version/download/?oid=00Db0000000YtG6&ids=0680X000006I6k0&d=%2Fa%2F0X0000000buN%2FwwkqVG180MUzuyHFf8iAMNYdTI.a45Af62SZo9aubug&asPdf=false
Options
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content
‎2016-05-01 8:57 AM
Posted on May 01, 2016 at 17:57
To include VCP interfaces (interface 0 for MSC, 1 and 2 for VCP int), I've edited stmcdc.inf file of virtual com port driver like this:
[Version] Signature=''$Windows NT$'' Class=Ports ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318} Provider=%PRVDR% CatalogFile=stmcdc.cat DriverVer=04/25/2010,1.3.1 ;[SourceDisksNames] ;1=%DriversDisk%,,, ;[SourceDisksFiles] [Manufacturer] %MFGNAME%=DeviceList,NT,NTamd64 ;[DestinationDirs] ;DefaultDestDir = 12 ; ========== VID PID =========== [DeviceList.NT] %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_00 %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_01 %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_02 [DeviceList.NTamd64] %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_00 %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_01 %DESCRIPTION%=DriverInstall,USB\VID_0483&PID_5741&MI_02 ; ========== Class definition =========== [ClassInstall32] AddReg = ClassInstall_AddReg [ClassInstall_AddReg] HKR,,,,%ClassName% HKR,,NoInstallClass,,1 HKR,,IconPath,%REG_MULTI_SZ%,''%systemroot%\system32\setupapi.dll,-20'' HKR,,LowerLogoVersion,,5.2 ; =================== Installation =================== [DriverInstall.NT] Include=mdmcpq.inf CopyFiles=FakeModemCopyFileSection AddReg=DriverInstall.NT.AddReg [DriverInstall.NT.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,usbser.sys HKR,,EnumPropPages32,,''MsPorts.dll,SerialPortPropPageProvider'' [DriverInstall.NT.Services] AddService=usbser, 0x00000002, DriverServiceInst [DriverServiceInst] DisplayName=%SERVICE% ServiceType = 1 ; SERVICE_KERNEL_DRIVER StartType = 3 ; SERVICE_DEMAND_START ErrorControl = 1 ; SERVICE_ERROR_NORMAL ServiceBinary= %12%\usbser.sys LoadOrderGroup = Base [Strings] PRVDR = ''STMicroelectronics'' MFGNAME = ''STMicroelectronics.'' DESCRIPTION = ''STMicroelectronics Virtual COM Port'' SERVICE = ''STM Virtual COM Port'' DriversDisk = ''STM Drivers Disk'' REG_MULTI_SZ = 0x00010000 ClassName=''Universal Serial Bus devices''