- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi
I have to implement a composite super speed USB device on an FX3 that combines a SlaveFifo function (similar to the slfifoasync example) with a virtual UART function (similar to cyfxusbuart example).
I have both functions working separately, i.e. I can create a working SlaveFifo function from a composite device context (EF-02-01) if I leave out the COMx function, and vice versa.
But when I try and instantiate both to operate at the same time, both fail: The COM port does not show up and the SlaveFifo device says "This device cannot start. (Code 10). An invalid parameter was passed to a service or function."
I have tried following the instructions from https://community.infineon.com/t5/USB-Superspeed-Peripherals/How-to-configure-FX3-USB-device-with-mu...
There are a number of things in these posts that do not make sense to me:
1) Step #3: There is no CX3-UVC device listed by the Device Manager. I assumed that it should refer to the Streamer Example Device?
2) Step #15: I do not have an "USB Serial Port" option at this step.
Upon following the instructions to the best of my ability, my laptop semi-freezes up until I uninstall the device.
I am developing on a Windows 10 laptop.
I have not modified any INF files.
I would REALLY appreciate any help/advice.
Solved! Go to Solution.
- Labels:
-
USB Superspeed Peripherals
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
After selecting Show All Devices, click on Have Disk:
Then click on Browse:
And select the .inf from the FX3 SDK (C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\driver\bin\Win10\x64)
Then click on OK:
You will find the Cypress FX3 USB StreamerExample Device as an option, select that and then click on Next:
In the Update Driver Warning window, click Yes:
You will get a message that Windows has successfully updated your driver. It will appear in the Device Manager as Cypress FX3 USB StreamerExample Device.
Please let me know if you have any queries.
Best Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello,
Please refer to the following KBA:
The above KBA also has an example project. This project will make the device enumerate as a composite device having a vendor and a CDC class interface. You can develop your application on top of this or modify your project by referring to this project. Please let us know if this helps.
Jayakrishna
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
And should there not be 0xEF-0x02-0x01 sequences in the device descriptors?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
Correct, the sequence should be 0xEF-0x02-0x01 in the device descriptor.
Please keep uninstalling the device till it is coming up as FX3 USB StreamerExample Device in the device manager. While uninstalling, kindly make sure the checkbox is ticked as shown below:
After uninstalling the cyusb3 driver properly, reset the device and reprogram with the .img file. The device will come up as FX3 in Other Devices section as shown below:
Best Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Allow me to observe that I find the documentation at point #4 of https://community.infineon.com/t5/Knowledge-Base-Articles/Adding-Communication-Device-Class-Interfac... a little bit vague on how to proceed to “Bind the cyusb3 driver to FX3 that appears in the Other Devices section of the Device Manager. Choose the model Cypress FX3 USB StreamerExample Device”. I THINK I have tried all the possible ways and have been unable to find any reference to a “Cypress FX3 USB StreamerExample Device”.
This is the most obvious of the things I have done:
After a reset, the Device Manager shows that both the FX3 and COM17 devices are present:
I then right-click FX3 and select Properties:
I then click Change Settings, provide my admin credentials and get:
I then click on Update Driver and get
I then click on Browse my computer for driver software and get:
I then click on Let me pick from a list … and get:
With Show All Devices selected, I click Next and scroll down to Cypress:
At this point I am expecting to see Cypress FX3 USB StreamerExample Device as an option, but fail to do so.
- Could you please elaborate on point #4?
- Perhaps there is a need for a line like “%VID_04B4&PID_00F1&MI_00.DeviceDesc%=CyUsb3, USB\VID_04B4&PID_00F1&MI_00” to the cyusb3.inf file?
I would sincerely appreciate your feedback!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
After selecting Show All Devices, click on Have Disk:
Then click on Browse:
And select the .inf from the FX3 SDK (C:\Program Files (x86)\Cypress\EZ-USB FX3 SDK\1.3\driver\bin\Win10\x64)
Then click on OK:
You will find the Cypress FX3 USB StreamerExample Device as an option, select that and then click on Next:
In the Update Driver Warning window, click Yes:
You will get a message that Windows has successfully updated your driver. It will appear in the Device Manager as Cypress FX3 USB StreamerExample Device.
Please let me know if you have any queries.
Best Regards
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The last elaboration on step #4 sorted out my issue. I now have a working composite SlvFifo+VirtUART USB device driver.
MANY thanks!