Intel EHCI Host Controller Issue – Total Phase
Intel EHCI Host Controller Issue

There is a known issue with certain Intel chipsets that cause devices to appear as if they've been disconnected in the software even though the device is still physically connected. The situation occurs when two devices are connected to the same EHCI host controller. If one device is unplugged, the other device will appear to have also been unplugged.

This affects the Beagle Analyzer when the analyzer is on the same high-speed bus as the target device. When the target device is unplugged during a capture, a USB communication error will be reported back through the Data Center software or through the API. In fact, the device that is unplugged does not even need to be the target device. Any device on the same host controller that is unplugged during a capture will cause the problem.

As of June 2008, this problem has been seen on (but is not limited to) the following machines:

  • Dell Latitude D610
  • Dell Inspiron 630m
  • Intel based Apple machines:
    • Mac Mini
    • MacBook
    • MacBook Pro
      • Note: The MacBook Pro actually has two EHCI host controllers, one for each side of the machine. Therefore, to avoid this problem, one can plug the Beagle into one side of the machine and the target device into the other.

To determine if your machine has an Intel EHCI host controller and may affected by this problem, open the Device Manager and under USB Serial Bus controllers find the Enhanced Host Controller device. If the Enhanced Host Controller device is labeled as an Intel device, then this issue may be causing the communication errors you are experiencing.

To work around this issue, we recommend using separate host controllers for communicating with the Beagle analyzer and with the target device. For laptops this will probably mean using completely separate machines while desktops can usually be expanded with an additional PCI based USB host controller.

Another option is to connect the target device through a high-speed hub to the host controller. You can then monitor the link between the hub and the target device, or the link between the host controller and hub.

Have more questions? Submit a request