cancel
Showing results for 
Search instead for 
Did you mean: 

USB Low-Full-High Speed Peripherals

Anonymous
Not applicable

Hello,

I'm working on a FX3 firmware using isosrcsnk (usb2.0), when I set the HS device descriptor to isod3 using this line in  cyfxisosrcsink.c:

    /* Endpoint descriptor for producer EP */

    0x07,                           /* Descriptor size */

    CY_U3P_USB_ENDPNT_DESCR,        /* Endpoint descriptor type */

    CY_FX_EP_PRODUCER,              /* Endpoint address and description */

    CY_U3P_USB_EP_ISO,              /* ISO endpoint type */

    0x00,0x14,  /* Max packet size = 1024 bytes, mult CY_FX_ISO_PKTS */

    0x01,                           /* Servicing interval for data transfers */

    /* Endpoint descriptor for consumer EP */

    0x07,                           /* Descriptor size */

    CY_U3P_USB_ENDPNT_DESCR,        /* Endpoint descriptor type */

    CY_FX_EP_CONSUMER,              /* Endpoint address and description */

    CY_U3P_USB_EP_ISO,              /* ISO endpoint type */

    0x00,0x14,  /* Max packet size = 1024 bytes, mult CY_FX_ISO_PKTS */

    0x01                            /* Servicing interval for data transfers */

I get a refusal from Host controller when I do set_Altarnate_Setting 1 using libusb1.0 telling me "no available bandwitdh" .

this cannot be the case becuse there aren'nt any devices connected to the host controller that can take much bandwidth, only keyboard and mouse.

this happenes only when using xhci host controller. older ehci works fine.

am I doing anything wrong ?

thanks,

Tal

0 Likes
Reply
2 Replies
Anonymous
Not applicable

Hi!,

The endpoint descriptors are correct.

We have seen this issue ('Insufficient bandwidth') with some of the Host Controllers. Can you test with another PC or reduce the MULT to 2 (i.e. CY_FX_ISO_PKTS =2)

0 Likes
Reply
Anonymous
Not applicable

Hi,

when testing it with ehci controllers I could not see the issue.

testing it on other PC's with xhci the problem remains.

when setting CY_FX_ISO_PKTS to 2 -  I can see ISOD2 transfers properly.

I need to use the total throughput of the device so ISOD3 is important to me

0 Likes
Reply