CX3 device not renumerating after flashing firmware image to RAM

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Ajitesh_J_S
Level 2
Level 2
10 replies posted 5 questions asked 10 sign-ins

Hello,

I am working with a custom board that has a CYUSB3065-BZXI chip. I am trying to build one of the examples included in the sdk: cycx3_yuy2_ov564. The example builds successfully and the .img file is generated.In the cyusb tool, i choose the cx3 chip and select the program to RAM option and download the generated .img file into the chip. After this, it says programmed successfully,

However, the CX3 chip is now disconnected but it does not enumerate as a UVC device as expected. I have tried other example programs as well, including USBFlashProg and USBBulkSourceSink and even for those the device simply disconnects and doesnt re-enumerate as a different device.I have tried building in both debug and release mode and both give the same result.

What might be the problem and how do I resolve this?

0 Likes
1 Solution

Hello,

The device is expected to enumerate as USB 3.0 device when the second parameter of CyU3PConnectState is CyTrue. If the USB 3.0 link fails, the device is expected to fallback to USB 2.0

To understand the reason of failure, please program the default USBBulkSrcSink example of the SDK and share the UART logs 

Also, please refer to Q3 of this KBA  Trouble Shooting Guide for the FX3/FX3S/CX3 Enumer... - Infineon Developer Community   and check the points mentioned. Also, confirm if design guidelines mentioned in AN70707 is followed for designing the custom board

Regards,
Rashi

View solution in original post

0 Likes
11 Replies
Rashi_Vatsa
Moderator
Moderator
Moderator
5 likes given 500 solutions authored 1000 replies posted

Hello,

Please let me know if the device enumerates as USB 2.0 after programming the firmware 

To check that, kindly change the second parameter of following API , build and program the firmware to FX3

CyU3PConnectState(CyTrue, CyFalse)

Also, please let me know the part number of CX3 chip that is being programmed

Regards,
Rashi
0 Likes

The device renumerates as a USB 2.0 UVC device when i changed the connect state function's second parameter to false. Is there anyway to renumerate it as a usb 3.0 device?

Part number: CYUSB3065-BZXI

0 Likes

Hello,

The device is expected to enumerate as USB 3.0 device when the second parameter of CyU3PConnectState is CyTrue. If the USB 3.0 link fails, the device is expected to fallback to USB 2.0

To understand the reason of failure, please program the default USBBulkSrcSink example of the SDK and share the UART logs 

Also, please refer to Q3 of this KBA  Trouble Shooting Guide for the FX3/FX3S/CX3 Enumer... - Infineon Developer Community   and check the points mentioned. Also, confirm if design guidelines mentioned in AN70707 is followed for designing the custom board

Regards,
Rashi
0 Likes

how do I find the UART logs after programming the USBBulkSrcSink example program?

 

0 Likes

Hello,

AS UART pins on CX3 are on GPIO [46] to GPIO[49]. Please change the IO matrix configuration in the USBBulkSrcSink to

io_cfg.lppMode = CY_U3P_IO_MATRIX_LPP_DEFAULT;

Then you can connect the UART of FX3 to any USB serial bridge or use a UART to USB connector to get the debug prints on the serial com port (Host PC)

Regards,
Rashi
0 Likes

I am working on a custom pcb board and GPIO pins 46-49 have not been connected

0 Likes

Hello,

From your earlier responses it seems that the there is some problem with USB 3.0 link.

Ideally, if the USB 3.0 link fails the device should fallback to USB 2.0  but that too doesn't happen in your case. 

I understand that you have configured the PMODE lines as PMODE[2:0] = Z11 (USB boot). Is my understanding correct?

If yes, please check if power supply on both USB3.0 power pins (U3TXVDDQ and U3RXVDDQ) is connected to  1.2V with a ferrite bead

Regards,
Rashi
0 Likes

It does renumerate as a USB 2.0 device after I changed to CyU3PConnectState(CyTrue, CyFalse). 

The PMODE lines have been configured correctly as PMODE[2:0] = Z11.

The above mentioned USB3.0 power pins have been connected to 1.2v with a ferrite bead

0 Likes

Hello,

Please confirm if the device doesn't come up as a USB 2.0 device after USB 3.0 enumeration fails.

Please check the voltage levels on U3TXVDDQ and U3RXVDDQ pins when the is seen

Regards,
Rashi
0 Likes

The device renumerates as a USB2.0 device successfully when I changed CyU3PConnectState(CyTrue, CyFalse). I have been continuing work on the project with the device renumerating as a USB2.0 device.

However I would like to know if there is a way to renumerate the chip as a USB3.0 device

0 Likes

Hello,

Please let me know if the device enumerates (comes up in device manager) as USB 2.0 when CyU3PConnectState(CyTrue, CyTrue) is used

Regards,
Rashi
0 Likes