We are developing USB devcie with FX3 and plan to use CyUSB3.sys.
I would like to use CyUSB3.sys only for our device.
This mean CyUSB3.sys for our device and other developer's FX3 device coexist independently
on the same system.
Accoring to "Cypress CyUsb3.sys Programmer's Reference",
I plan to create our own .INF file.
Anybody know how to create own .INF file?
I plant to
- Copy CyUSB3.inf
- Modify VID/PID, Strings and GUID.
- Replace CyUSB3.sys to renamed one
- Replace CyUSB3.cat to renamed one
In addition, do we need to rename service?
(Addservice and KmdfService line)
I think some registry keys are added at
so this will be overrided by other FX3 device's driver
if we do not rename the serivce.
Hi, you can follow the steps mentioned to change the .inf in the programmers reference guide. What are your requirements. If you just want a custom VID/PID (non Cypress) to bind to the drivers, then you need to add the VID/PID following the steps mentioned. You can changes the GUID, Catalog too. Please do not change the services as it defines the dependencies. Yes, you can have two driver packages in one system. Your device will come up and bind as per the VID/PID in it.
Please note that changing anything in the driver package, you will loose the Microsoft driver certification
Thank you for reply, Aditya.
I followed the instrudtions Programmer's references say:
If you plan to do more than just add your device's VID/PID to the CYUSB3.INF file,
it is strongly recommended that you create your own .INF file and a copy of CYUSB3.SYS
that you have re-named.
The remaining instructions assume that you have created your own .INF file
to match your newly named copy of CYUSB3.SYS.
So, I renamed "CyUsb3.sys". (For example in this post, renamed one is "MyUsb.sys")
I tried the following test with own .INF (MyUsb.inf) that uses the same service name "CYSUB3" as CyUsb3.inf.
1. Connect My Device and install "MyUsb.sys" by "MyUsb.inf", and restart the system.
At this point, my device works fine.
2. Connect FX3 DEV-KIT device and install "CyUsb3.sys" by "CyUsb3.inf",
and restart the system.
At this point, The registry "HKLM\SYSTEM\CurrentControlSet\services\CYUSB3"
was overrided by CyUSB3.inf's one. But my device works fine.
3. Remove FX3 DEV-KIT and un-installe "CyUsb3.sys", and remove "CyUsb3.sys" from \\Windows\system32\drivers folder.
and re-start the system.
After this, my device have error on the device manager, and can not work.
According to the event viewer, it seems that my device try to use "CyUsb3.sys".
My question is, "How sholud I modify .inf file, if I rename the CyUsb3.sys"?
According to my test, I think I need to modify service name on .inf file.
I would like to get advice for customizing the CyUSB3 driver.
How did you customize the CyUSB3.inf for your own device?
Just add VID/PID and change GUID, or rename CyUSB3.sys too, etc.