Bootloader confirmation is slow on FX3.

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

cross mob
TAKA_2056991
Level 1
Level 1
Welcome! 10 replies posted 5 replies posted

Hi,

"FX3Device-> IsBootLoaderRunning ()" returns quickly when it is a boot loader, but it takes a lot of time otherwise.

I want to know how to make it faster.

Regards,

Takao

0 Likes
1 Solution
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi Takao,

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.

Regards,

Hemanth

Hemanth

View solution in original post

0 Likes
3 Replies
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi Takao,

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.

Regards,

Hemanth

Hemanth
0 Likes

Hi Hemanth,

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.

Regards,

Takao

0 Likes

Resolved.

Thank you for your support.

You may close the case.

Regards,

Takao

0 Likes