Maximum endpoints of the FX3

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

cross mob
jach_4066871
Level 1
Level 1

hi there,

     I want to know the maximum endpoints I can use in the FX3. In my project, there are 3 endpoints, 2 for in and 1 for out. Now I need add one endpoint for out and I had modified the number of endpoints in interface descriptor in the cyfxusbdscr.h and add descriptor information. What bothers me is that there are 4 endpoints but the FX3 failed connect the PC, and when I modified to the 3 endpoints, it works. And only the first three endpoints connect successfully, no matter which three endpoints I put forward. I know the maximum number of the endpoints isn't just 3 but what is the reason limits the number?HemanthR_06SrinathS_16

0 Likes
1 Solution

Hello,

- Two software can access the same device using the VID/PID combination used in the device firmware.

- Also, to distinguish devices with the same VID/PID, the device descriptor can be added with a serial number string descriptor and the same can be obtained on the host application using the CyUSB.USBDevice.SerialNumber string.

Best regards,

Srinath S

View solution in original post

0 Likes
4 Replies
SrinathS_16
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hello,

FX3 can support a maximum of 31 endpoints. Please share the descriptor file that you have used for enumerating 4 endpoints.

Best regards,

Srinath S

0 Likes
lock attach
Attachments are accessible only for community members.

Hello,

Here are the descriptor files and the whole project. My device used the USB3.0 interface. At the beginning, more endpoints can be used but as the code increasing I can only use 3 endpoints. I want to know if the recourse of the RAM isn't enough or other reasons.

Thanks.

0 Likes

Hello,

thanks for your support, I have tackled this problem. Because I didn't modify the length of the descriptor after I add a new endpoint descriptor. But I have  a new question, if I want the software FPGA configuration utility to recognize a new firmware whose VID/PID are not same as the ConfigFpgaSlaveFifoSync firmware. Do I just modify the myDevice and usbDevice of the GetDevice function in the C# express Edtion?

The condition is that I have to recognize two software with one firmware, one is FPGA configuration utility and the other is a demo software whose function can't be modified. At the beginning, I use two set of the VID/PID of the firmeware to recognize two software, but it makes some trouble so I want to use one VID/PID to recognize these two software. 

0 Likes

Hello,

- Two software can access the same device using the VID/PID combination used in the device firmware.

- Also, to distinguish devices with the same VID/PID, the device descriptor can be added with a serial number string descriptor and the same can be obtained on the host application using the CyUSB.USBDevice.SerialNumber string.

Best regards,

Srinath S

0 Likes