I’m sure nobody cares about this. I’m just writing it down because it took me way too long to figure it out.
I’ve had my new PC for about a year and a bit now, and I’ve never been able to resume from S3 sleep using the keyboard. I originally thought it was an X64 problem. I briefly used a PS/2 keyboard which had a dedicated wake up button, and that worked, so I figured there must be some way to do this.
BIOS settings:
- Standby Mode: S3 only
- Plug’n’Play OS: Yes
- USB Legacy Emulation: Disabled
Not really sure even if all of these actually matter. The first one definitely does.. setting this to Auto causes WinXP to do weird things (namely refuse to shutdown any time you have the “allow this devices to wake the computer” checkbox checked for any USB device).
Finally, the most important part is to add a registry key described in this Microsoft KB article. This tells XP that it’s ok for it to enter S3 even if you have a USB device that’s set to wake up the system. Why is this needed? Well according to the article, older bioses and devices were too crappy that this feature didn’t work well. Going into S3 would sometimes kill the power altogether, or result in other undesirable side effects. They’re solution was to say, “if you want to wake from a usb device, then you only get S1”.
Well it turns out that without this special flag, and a BIOS that is set only to support S3, the device manager stops even showing you the “Power Management” tab for each USB device’s properties screen. This is the part that the KB article doesn’t tell you, and that had me stumped for a long time.
For posterity, here is a .reg file that you can use to add this key to your registry.