-
1. Re: Create an USB composite device with two VCP and one 'custom' interface
AnkitaS_51 Oct 10, 2018 12:16 AM (in response to user_246598725)Several changes had to be made to the descriptor files, driver .inf files and API for the existing USBUART component
The component no longer automatically generates the required .inf files that are required. As such, if the Product String, Manufacturer String, VID or PID change, both .inf files must be manually edited
Editing the files is simple and can be done at the bottom of each descriptor file(IMAGE ATTACHED)
The descriptor file had to be edited manually .
CDC interfaces have a Interface Association Descriptor (IAD) to define the functionality.
-
Capture_9.PNG 28.4 K
-
-
2. Re: Create an USB composite device with two VCP and one 'custom' interface
user_246598725 Nov 14, 2016 2:12 PM (in response to user_246598725)Hello Anks,
thank you for the reply. However, it seems that there's a missunderstanding: The PSoC 5LP has eight endpoints (aside of the Control endpoint 0). Two CDCs will consume six endpoints, leaving two endpoints. What I want to have is two CDCs and one additional interface with an IN and an OUT endpoint, controllable by the CYUSB.DLL.
So, beside of your modifications of the INF file, I need to have:
- the correct USBFS component setup for the remaining two endpoints (composite device?)
- an INF file which binds the USBSER.SYS driver to the CDCs and the CYUSB.SYS to the other two endpoints
I already managed to have the two CDCs working (at least the first evaluation seems to work), but I've no idea how to setup the USBFS component correctly and how the INF file has to be modified.
Regards,
Ralf
-
3. Re: Create an USB composite device with two VCP and one 'custom' interface
HimaM_31 Nov 14, 2016 9:49 PM (in response to user_246598725)Hello
For a device that uses the iADs, the device is recognized with the PID-VID-and-MI (multiple interface number) combination of the interface in the inf file. Thus, the appropriate inf files have to be altered to include the MI number of the interface. For our example project, the vendor specific interface has MI_00 and the CDC class has MI_01. Thus, we will alter the inf file USBFS_1_CDC .inf to include the MI of the CDC class interface: From: %DESCRIPTION%=DriverInstall, USB\VID_04B4&PID_8051 To: %DESCRIPTION%=DriverInstall, USB\VID_04B4&PID_8051&MI_01
Similarly, the CyUSB.inf will be altered to include the VID and PID and MI of the vendor specific interface: From: %VID_XXXX&PID_XXXX.DeviceDesc%=CyUsb, USB\VID_XXXX&PID_XXXX To: %VID_04b4&PID_8051.DeviceDesc%=CyUsb, USB\VID_04b4&PID_8051&MI_00
The altered inf files can be used to point to the driver for a device. In case if you use the wrong inf file for a device, like using the MI_00 inf file for MI_01 interface. It will throw up the error saying that the inf file does not contain the information for your device
Thanks,
Hima
-
4. Re: Create an USB composite device with two VCP and one 'custom' interface
user_246598725 Nov 15, 2016 9:25 AM (in response to user_246598725)Hello Hima,
thank you for the explanation. With the MI_xx entries, I got it to work (or at least I think so). Now, the remaining problem is the CYUSB.SYS file. My Win7 64-bit doesn't accept it because it's not signed.
So, is there a signed driver package available? Or do you know another way to get it to work? I'll also check if it would be possible to use WinUSB as driver - this wouldn't be my preferred solution, but...
Regards,
Ralf
-
5. Re: Create an USB composite device with two VCP and one 'custom' interface
HimaM_31 Nov 15, 2016 9:11 PM (in response to user_246598725)Hello
CYUSB.SYS and the driver from http://www.cypress.com/documentation/software-and-drivers/ez-usb-fx3-software-development-kit gives signed drivers. But if you are modifying the .inf file then the signature will get lost.
We do not have a signed driver suitable for multi interface.You will have to use Disable Driver Signature Enforcement which is not preferred.
Thanks,
Hima
-
6. Re: Create an USB composite device with two VCP and one 'custom' interface
user_246598725 Nov 16, 2016 12:07 AM (in response to user_246598725)Hello Hima,
you're right, the signature will get lost in this case. I saw that the USBFS component supports Microsoft OS descriptors which enables access by WinUSB driver. So I assume that Cypress have tested this feature and hopefully can provide an example application?
Regards,
Ralf
-
7. Re: Create an USB composite device with two VCP and one 'custom' interface
AnkitaS_51 Nov 21, 2016 1:21 AM (in response to user_246598725)Presently,we dont have example project as we do not have a signed driver suitable for multi interface.
-
8. Re: Create an USB composite device with two VCP and one 'custom' interface
user_246598725 Nov 21, 2016 1:40 AM (in response to user_246598725)Hi Anks,
are there any plans to release a generic driver with signature in the near future?
Regards,
Ralf
-
9. Re: Create an USB composite device with two VCP and one 'custom' interface
AnkitaS_51 Nov 22, 2016 12:15 AM (in response to user_246598725)Hello,
Currently I cant provide you with a definite timeline,but I can make request to other teams for that.
Sorry for the inconvenience.
-
10. Re: Create an USB composite device with two VCP and one 'custom' interface
user_246598725 Nov 22, 2016 12:39 AM (in response to user_246598725)Hello Anks,
no inconvenience, currently I'm experimenting with LibUSB, but it would be nice if there was a out-of-the-box solution provided by Cypress. I think other users might also be interested.
Regards,
Ralf