We checked the API on our side and it returned within few micro seconds. How much time it took on your side?
I hope you are using your own custom C++ Host application based on CyAPI library. Please confirm.
- What firmware was running on FX3, when the API took lot of time to return on the Host app? Is the connection established USB 3.0 or USB 2.0?
- When IsBootLoaderRunning () is called in the Host app, 0xA0 vendor command is sent from the Host to FX3. If FX3 is not in bootloader mode, it STALLs the vendor command. So, please take a wireshark trace and look for this command to check where is the delay.
With bootloader it takes less than 1ms, otherwise it takes 10 seconds.
I'm using CyAPI in SDK v1.3.4.
The FX3 firmware controls the registers of the FPGA via GPIF.
The connection is established via USB 3.0.
Is it the OS that STALLs when it's not a bootloader, or is it the CyFx3 library's job?
I get a 0xA0 vendor command sent to me and I can check it in the Firmware vendor command callback function, should I respond here?
I'm going to try WireShark.
Thank you for your support.
You may close the case.