Hi, this is Vivek Gupta again from the USB team. In my last post on whether devices get reset on system resume, I talked about how some devices might get negatively impacted by the behavioral changes in USB core stack in Windows7. To make it easier for users to fix such devices, we have extended the new Windows7 device stage troubleshooting functionality. Let us find out how to use the troubleshooter.
This USB Troubleshooter is built on the Windows Troubleshooting Platform. If a user is having a problem with a USB device after the system resumes from sleep, he or she can choose to troubleshoot the device through the Devices and Printers UI (Detailed steps provided at the end). This will invoke our USB Troubleshooter which will, based on some heuristics, put the device on the list of devices that need reset on resume. From that point on, whenever the system resumes from sleep, the device will be always be reset and should start working. It should be noted that the decision to apply the reset behavior on a device is based on a certain heuristic method. Therefore it is recommended that the user should troubleshoot a device only if he or she is actually experiencing problems with the device.
To launch USB Troubleshooter on a device, Open Devices and Printers by clicking the Start button and then, on the start menu, clicking Devices and Printers. Then right-click on the target USB device, and click Troubleshoot. USB Troubleshooter, along with any other applicable device troubleshooters, will automatically get downloaded and launched; wait for the Troubleshooter to finish. When it finishes, it will inform you if it applied the reset on resume behavior change on the device. Note that the system needs to be online and configured to get the latest online troubleshooters. By default, the system should already be configured in this manner. This can be verified by clicking the start button and then, on the start menu, searching and clicking Troubleshooting. On the bottom of the page, the checkbox to get the latest troubleshooters should be set.