cancel
Showing results for 
Search instead for 
Did you mean: 

USB Superspeed Peripherals

ANM_4109281
New Contributor

We are trying to bring up our custom FX3 board which is supposed to interface with an FPGA board. However , due to mistake in the PCB footprint of the USB3.0 B-type connector, the pin numbers have been swapped. (USB3.0 B-type connector has 10 pins, and pin number 1 is where pin number 10 was supposed to be, similarly pins 2-9, 3-8 and so on). Right now to be able to check other functionalities and connections, we modified the cable and board such that, the FX3 is detected as a USB2.0 device. With the board  and cable modifications, the device is detected in device manager as Cypress FX3 USB BootLoader Device as well as on the USB Control Center.

However when I try to flash an FX3 example firmware to the device through USB Control Center, I get a message saying Programming Failed. However the same firmware when I flash to the RAM of superspeedkit, I get a Programming Succeeded message. I have verified the PMODE pins, which are kept as F1F, (I2C flash is present, but does not contain a valid firmware as of now).

1) Is there a log produced by USB control center which gives reasons for the failure of the programming

2) If there was an error in the cable modification (say D+ and D- are swapped), will the device be detected at all by the PC?

3) Any other hardware issue, which can cause the programming failure

Any other points which can help in further analysis of the issue will be a lot of help

0 Likes
1 Solution
Rashi_Vatsa
Moderator
Moderator

Hello Aneesh,

As you are using the custom board, please follow AN70707 Application Note for hardware design guidelines and check that the schematic of your board with the checklist given in the application note.

https://www.cypress.com/documentation/application-notes/an70707-ez-usb-fx3-fx3s-hardware-design-guid...

Regards,

Rashi

Regards,
Rashi

View solution in original post

0 Likes
3 Replies
ANM_4109281
New Contributor

Just an update: I guess the D+ and D- are not swapped, because the communication with PC is happening

(I used a USB sniffer software to record all the packets sent and they seem to be fine). Attached is the log of the same.

0 Likes
Rashi_Vatsa
Moderator
Moderator

Hello,

Yes, it seems there is no problem in the USB lines as the device is enumerated  correctly.

As per the PMODE[2:0] line = Z1Z, you are using I2C booting with USB fallback enabled.

Please refer to the section 3 of  Troubleshooting SPI / I2C Programming in FX3 – KBA94604 thread.

To check the I2C connection and whether the I2C flash is compatible with the vendor commands sent, program the RAM with the I2Cregmode example from the SDK, pass the vendor commands and check if it works.

Please let me know if any queries.

Regards,

Rashi

Regards,
Rashi
0 Likes
Rashi_Vatsa
Moderator
Moderator

Hello Aneesh,

As you are using the custom board, please follow AN70707 Application Note for hardware design guidelines and check that the schematic of your board with the checklist given in the application note.

https://www.cypress.com/documentation/application-notes/an70707-ez-usb-fx3-fx3s-hardware-design-guid...

Regards,

Rashi

Regards,
Rashi

View solution in original post

0 Likes