1 Reply Latest reply on May 21, 2020 1:33 AM by YashwantK_46

    Vendor ID, Product ID confusion




      I have been studying this example https://www.cypress.com/documentation/application-notes/an84868-configuring-fpga-over-usb-using-cypress-ez-usb-fx3 .

      And stuck on some kind of basic theoretical question. In utility source code, there is:

                      myDevice = usbDevices[0x04b4, 0x00F1] as CyUSBDevice;              // check for device with VID/PID of 0x04B4/0x1002

                      myFX3Device = usbDevices[0x04B4, 0x00F3] as CyFX3Device;

      I don't get it. Why there are two devices, if I am connecting superspeed kit. There is only single fx3 chip isn't it. And in the descriptor code for the firmware, there is only 0x00F1 as PID. While 0x00F3 not shown anywhere. From the code, I guess 0x00F3 PID means serial programmer? While 0x00F1 device is just blank device? And I didn't get the comment. 0x1002 PID.



        • 1. Re: Vendor ID, Product ID confusion



          The FPGA Configuration Utility checks for two PID's since it checks for both the Cypress FX3 Bootloader Device with PID = 0x00F3 attached or if the FX3 device is re-enumerating after being programmed with the FX3 firmware in the given project folder comes up as  Cypress FX3 USB StreamerExample Device with PID = 0x00F1.


          The Cypress FX3 Bootloader device VID and PID of FX3 SuperSpeed Explorer kit are as follows:

          The VID and PID mentioned in the FX3 firmware (Cypress FX3 StreamerExample Device) after programming are as follows:

          Since the utility needs to check for both the devices, hence there's two instances of the CyUSBDevice class.


          1 of 1 people found this helpful