Question: Certain firmware examples for EZ-USB® FX2LP™ (that come with CY3684 DVK) work on the Cypress DVK (CY3684), but when they are downloaded onto a custom board, do not enumerate. Why?
Firmware examples provided by Cypress to demonstrate the capability of FX2LP are specifically designed for the CY3684 DVK. The DVK uses I/O expander ICs on I2C lines to accommodate the 7-segment LED display and push buttons.
In some of the firmware examples, LED display/buttons are accessed using the EZUSB_WriteI2C(), EZUSB_ReadI2C() and EZUSB_WaitForEEPROMWrite() APIs. On custom boards, such a design may not exist and EZUSB_WaitForEEPROMWrite() API being a blocking function causes the firmware to freeze; therefore enumeration fails.
Firmware Examples affected:
To overcome this issue, remove the following API calls from the firmware: