This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

USB HID Control Transfer Speed Vary Issue

Hi, Don't know if it is proper to post here.

Currently I'm on a project with USB HID function. The function works well without any error except that the USB HID has speed vary issue. The speed will vary depending on host PCs.

Using USB View, I found that for fast speed, the device has been assigned to be controlled by USB2 Enhanced Host Controller(EHC) Full Bus Speed, however, for slow speed, the device has been assigned to be controlled by USB Universal Host Controller(UHC) Full Bus Speed(Same Hardware&Firmware).

The confusing thing is what makes the host controller decides that the device should be assigned to be controlled by EHC or UHC.

Any idea and suggestions for this issue?

Thanks.

Parents
  • Thanks, Tsuneo,

    Exactly as what you said, the Full Speed USB HID device is assigned to UHCI when the device is directly connected to the Host with Intel USB Host Controller, If the device is connected to the Host through a USB2.0 Hub, the host interface with the USB hub using EHCI, using Transaction Translator, the speed is fast. For OHCI, several PCs have been tested, the transfer speed is as fast as the EHCI.

    So the end result is:
    For Host with Intel USB Host Controller, if the device is directly connected to the PC, the Speed will be slow; if the device is connected to the host through a USB2.0 Hub, the speed will be fast. For Host With Open Host Controller, the speed will be fast.

    I know that this speed vary issue is due to the host side control, device side can do nothing about that, I'm wandering are there any walk around for this speed vary issue?

    Thanks.
    ssrs.jrzs

Reply
  • Thanks, Tsuneo,

    Exactly as what you said, the Full Speed USB HID device is assigned to UHCI when the device is directly connected to the Host with Intel USB Host Controller, If the device is connected to the Host through a USB2.0 Hub, the host interface with the USB hub using EHCI, using Transaction Translator, the speed is fast. For OHCI, several PCs have been tested, the transfer speed is as fast as the EHCI.

    So the end result is:
    For Host with Intel USB Host Controller, if the device is directly connected to the PC, the Speed will be slow; if the device is connected to the host through a USB2.0 Hub, the speed will be fast. For Host With Open Host Controller, the speed will be fast.

    I know that this speed vary issue is due to the host side control, device side can do nothing about that, I'm wandering are there any walk around for this speed vary issue?

    Thanks.
    ssrs.jrzs

Children