The Fix

The Microsoft Knowledge Base article that references the USB power drain problem also provides a solution to the problem, a simple registry edit that prevents the USB devices from keeping the processor from moving to lower power states.  The entire text of the KB article was actually anonymously posted in a Slashdot thread, and thus, is now publicly available.  As with any changes to your Windows Registry, be sure to hang onto a backup copy and make any modifications at your own risk:
A Windows XP SP2-based portable computer uses its battery power more quickly than you expect when a USB 2.0 device is connected

View products that this article applies to.

Partner Only Article Article ID : 899179

Last Review : July 12, 2005

Revision : 1.0

Important: This article contains information about how to modify the registry. Make sure to back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs. For more information about how to back up, restore, and modify the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 (https://premier.microsoft.com/kb/256986/) Description of the Microsoft Windows registry


SYMPTOMS

Consider the following scenario. You install Microsoft Windows XP Service Pack 2 (SP2) on a portable computer. Then, you connect a USB 2.0 device to the computer. In this scenario, the computer uses its battery power more quickly than you expect.

CAUSE

Windows XP SP2 installs a USB 2.0 driver that initializes any connected USB device. However, the USB 2.0 driver leaves the asynchronous scheduler component continuously running. This problem causes continuous instances of memory access that prevent the computer from entering the deeper Advanced Configuration and Power Interface (ACPI) processor idle sleep states. These processor idle sleep states are also known as C states. For example, these include the C3 and C4 states. These sleep states are designed, in part, to save battery power. If an otherwise idle portable computer cannot enter or maintain the processor idle sleep states, the computer uses its battery power more quickly than you expect.

RESOLUTION

Warning: Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall your operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk. To resolve this problem, add the EnIdleEndpointSupport entry to the USB registry key. To do this, follow these steps:
  1. Click Start, click Run, type regedit, and then click OK.
  2. Locate, and then click the following registry subkey:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Servic es\USB

    Note: If the USB subkey does not exist, create it. To do this, follow these steps:
    a. Select the Services key. On the Edit menu, point to New, and then click Key.
    b. Type USB in the New Key #1 box to name the new key "USB."

  3. Right-click USB, point to New, and then click DWORD Value.
  4. In the New Value #1 box that appears, type EnIdleEndpointSupport, and then press ENTER.
  5. Right-click EnIdleEndpointSupport, and then click Modify.
  6. In the Value data box, type 1, leave the Hexadecimal option selected, and then click OK.
  7. Quit Registry Editor.
STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.

APPLIES TO

  Microsoft Windows XP Service Pack 2, when used with:

  • Microsoft Windows XP Professional
  • Microsoft Windows XP Home Edition
Unfortunately, the solution isn't completely ready for public deployment, as there are apparently still some scenarios where it doesn't fix the problem.  There may be issues with the problem re-appearing after putting your system to sleep, which are presently being worked on.  However, for the majority of situations, this simple registry modification should, in theory, take care of things.  With the solution in hand, and five notebooks to play with, we went to work.

Starting at the Beginning The Notebooks and the USB Devices
Comments Locked

61 Comments

View All Comments

  • krwilsonn - Wednesday, February 15, 2006 - link

    I just read their new article and apparently they were tipped off by some "insider" about the problem and then went ahead and "discovered" and published it. That is what it says at the end of their article, anyway. Their forum thread that is linked has some comments from an editor or someone that are also interesting. I'm sure everyone is checking it out but for those that haven't you should for the sheer humor of it.
  • mino - Tuesday, February 14, 2006 - link

    1.) Installed new hp6220 custom configured an hour ago.
    Platform i915G - Sonoma

    Provided Perfmon detects C3 correctly (showing curve around 98% at idle) this system may not bee affected.

    I've installed HP's "System Enhancements Disk" package, so some workaround by HP may have been included. (the regfix is not present)

    However I have no way to prove Perfmon is correct.

    2.) nx6125 I've upgraded from home to Pro last week so it is HP install just a little sripped one

    the system spend around 96% of its time at idle in C1, seems wierd to me. No time is spent in C3 also. Maybe somne HP stuff keep the CPU busy.

    Both systems are used with Bluetooth mouse via an integrated adapter.
  • mino - Tuesday, February 14, 2006 - link

    Just now I observed on nx6125 that the moment Intellimouse Explorer for Bluetooth goes into power save mode (after ~1 minute of inactivity) Turion goes from 96% in C1 to 96% in C2.
    Strange as it may seem nothing like this happens on Sonoma platform. I sense ATI SB400 does have something say about it.

    Another thing is that the moment CPU starts using C2 intensively, the idle power consumption goes from ~15.6W to 13.2W which is pretty serious amount of power wasted.


    Anand, I suggest you do not waste your time by testing battery life when you revisit this issue, to prove assumptions you may use Perfmon's Battery Drain counter.

    HMM, funny is, the nc6220 does not show the battery counter present in Perfmon.
  • mino - Tuesday, February 14, 2006 - link

    WE MISS EDIT !

    sripped == stripped

    ;D
  • artifex - Tuesday, February 14, 2006 - link

    as soon as you get an MBP in for testing :)
  • zsouthboy - Tuesday, February 14, 2006 - link

    Not that its as big a deal for desktops, but mine seems to be doing the same thing when my USB 2.0 mouse/kb is plugged in...

  • krwilsonn - Tuesday, February 14, 2006 - link

    Are you being serious??
  • kmmatney - Tuesday, February 14, 2006 - link

    Yeah, I've noticed my Prescott's been running a little hot as well. Damn USB 2.0!
  • blwest - Tuesday, February 14, 2006 - link

    Yay, yet another "feature". If you run Microsoft Winders, we gurantee shorter battery life.
  • dualathlon - Tuesday, February 14, 2006 - link

    Hi, i own an dell inspiron 9300, pen M 760, geforce 6800go. When i enable that registry key, i experience heavy pointer delay when playing Counter Strike Source. I tried both logitech mx510 (wired) and logitech mx900 (bluetooth wireless, paired with dell internal BT and logitech hub as well).

    I see no delay in office apps, FYI. I haven't test battery life with that key though.

Log in

Don't have an account? Sign up now