Sunday, January 31, 2010

Windows 7 Slow PS/2 Keyboard Scrolling

Howto: Windows 7 and Vista's default keyboard driver seems too slow; scrolling and cursor speeds lag.

Symptoms:
On a Windows 7 (and Vista) machine, I noticed cursor-scrolling speeds were too slow. Pressing the down-arrow key in a long document lagged. This problem is particularly noticeable if you have an old-style PS/2 keyboard with a DIN plug.

If you have a laptop and it cannot keep up with your typing or if keystrokes are skipped; keystrokes not registered, or slow typing on screen, then you likely have a bad battery. Details, below.


Solutions:There are several possible solutions to this problem, with the most likely listed first. Try each solution with a reboot to see if the problem has been resolved.

1. Laptop Battery:

Oddly, a bad laptop battery can cause keyboard problems, where some letters are skipped (this is somewhat different than a slow keyboard). Microsoft's power API goes a little crazy as it receives thousands of power-management interrupts; this impacts the keyboard's speed. See this link.

Testing is easy: Remove the laptop battery, running only on A/C. Reboot. If the keyboard speed improves, it is time to buy a new battery.


2. Desktop Bug and Registry hack

For desktop computers with a PS/2 DIN plug keyboard (or with that keyboard and a USB adapter), there is a keyboard bug in Vista and Windows 7 that was originally fixed with a registry change. When Microsoft released Windows automatic update KB977074, the registry change broke and then alternately worked, depending on subsequent Microsoft updates. This is the fix that I am currently running and this resolved my keyboard-speed problem.

Update: Recent Microsoft patches in late April, 2010 or early May, 2010, and again in June, 2010, have done and then undone the changes recommended in this registry hack. I have now switched this solution one way or the other on three separate occasions; each time it fixed the problem. Since June, 2010, it has been solid. Read below for more details.

a. Start, Run, "Regedit"
If the RUN command is not visible, see this link.

b. Tunnel to this key:
Hkey_LocalMachine/System/CurrentControlSet/Services/i8042prt/Parameters

c. On the detail side, "other-mouse-click" a blank area and add a new Dword-32 value. Name the key "PollStatusIterations" (no quotes)

Set value to Hex = 1

Caution, there are other registry keys with similar names.

d. Close Regedit and reboot.

e. If this value is already in the Registry, disable the key by renaming it to "xxPollStatusIterations" (Other-mouse-click, Rename). Reboot and test.

Reason: Depending on which MS patch has been applied, this registry change can re-introduce a slow keyboard problem. You will have to experiment with adding or removing this patch. I've switched this value on or (x) off three times. This is unfortunate. But in each case, it has dramatically fixed scrolling problems.

(Click image for larger view, "Back" to return)

Clearly, Microsoft is having troubles in this area. Expect to return to this value as Microsoft continues to work on this.


3. Keyboard Scrolling Speed

Consider this minor Control Panel change:

Start Menu, Control Panel, Keyboard.
Peg the Repeat Delay and Repeat Rate to the far-right




4. Windows Control Panel "Ease-of-Access" and "Filter Keys"

This is a known-keyboard issue that may have been inadvertently set on by a well-meaning person.

a. Control Panel, "Ease of Access Center"
b. Choose "Make the Keyboard easier to use"
Confirm "[ ] Uncheck "Turn on Filter Keys

While you are here, you should also turn off "[ ] Turn on Toggle Keys by holding down the Numlock key for 5 seconds."

5. Mouse Drivers

Although this article is primarily concerned with keyboard/cursor scrolling speeds, mouse scrolling speeds may also be slow due to default Microsoft Mouse and touch-pad drivers. (The default drivers installed by Windows 7 are inadequate and they should be upgraded.)

Confirm Mouse Drivers are current:
In the Control Panel, under "Mice and other Pointing Devices," look at the installed Mouse Driver's Properties. For most, it should read "Microsoft Intellipoint" or a Logitech driver. If the driver appears to be a generic Microsoft PS/2 driver, you should upgrade:
This article does not contain a link for Logitech drivers.

Similarly, for laptops, confirm the Touchpad drivers are current. Two common vendors are Alps Touchpad and Synaptics. For my Dell computers, with Windows 7 x64, here is the link I have used: Dell Vista 64-bit Alps. Ideally, download the specific driver for your brand of computer; I have no confidence the Dell driver works everywhere (reader comments?). I keep current 64-bit driver information in this article: XPS M1530 Windows 7 64-bit Drivers (be aware this is for a particular laptop).

6. Video HotKey Drivers - ATI2EVXX

If you have an ATI video card (see Control Panel, Device Manager, Display Adapter), the Video Card ATI service, ATI2EVXX.exe causes Keyboard problems and this program should be un-installed. ATI2EVXX is a hot-key polling service and is not needed because all of its features can be accessed via the control panel.

To disable the program, un-install the Video drivers (Control Panel, Programs and Features), then re-install the ATI drivers, choosing the Advanced installation. Uncheck the hotkey options (I have not tested these steps - TRW).

Optionally, disable an existing ATI Hotkey Poller Service with these steps:

1. Start, Run, "Services.msc"
2. In the Services (local) list, locate Ati Hotkey Poller
3. Double click the Ati Hotkey Poller service
4. Change the Startup dropdown menu from Automatic to "Disabled"
5. Click OK, reboot

Disabling this service will not cause any problems. Others have reported that ATI can accidentally have two copies of ATI2EVXX.exe running -- and this is bad. De-install and re-install should fix this problem.

NVidia cards also have a hotkey process that is causing known keyboard problems. As with the ATI drivers, un-install and re-install NVidia drivers, and choose custom installation. When installing the drivers, install only the base video drivers (Update: 2010.08: NVidia acknowledged a keyboard/response problem with their drivers. Download newer NVidia drivers to resolve this issue.


7. Dell Media Direct

Dell Media direct (Cyberlink Corp; service: PCMService) is a program distributed with many Dell desktop and laptop computers. Custom buttons on the laptop's keyboard (or on a desktop's keyboard) enable various multi-media features. All of these features are available via other mechanisms and this program should be removed.

To diagnose this, look in Task Manager for PCMService or in Control Panel, "Programs and Features (add-remove), look for MediaDirect. Consider uninstalling the program - or at the very least, disable the PCMService (Start, run "MSCONFIG.EXE", Services Tab). This disables the multi-media buttons on those fancy Dell keyboards -- but who uses them?

Additional comments: Several have reported this was definitely a problem on their computers.


8. Virus and Spyware Problems


If your computer is infected with a lot of spyware, all operations will be sluggish -- but you would already know about this problem. See these Keyliner articles for removal steps that work with most programs: Removing Viruses and Fixing Slow Computers. You may also have a virus/key-logger installed.


9. Video Drivers

Although not as likely as the options above, slow video drivers can also cause slow scrolling if the screen cannot refresh fast enough.

Often, Windows 7 does not detect the video hardware properly on install. Symptoms: a Windows Experience Index (speed test: Control Panel, System, Performance) shows a speed of "1.0" . Your system may need a different driver, depending on which Video Card was installed. Check your system's hardware shipping manifest to see which video card is installed.

In Windows Control Panel, Device Manager, expand the Display Adapter section. If it shows a generic Microsoft driver, install a better version.

The two most common drivers are:
NVidia: NVidia.com Downloads
ATI: ATI Downloads

When downloading vendor drivers, watch for variations - Video-card manufacturers have different drivers for different models and be sure to choose properly between 32 and 64-bit Windows 7.


Related articles and links:
Fixing Slow USB Drives
Windows 7 Streamline Start Menus
Fixing Slow Computers


4 comments:

  1. In addition to changing PollStatusIterations to one, which helps but doesn't completley solve the problem, doubling the values of PollingIterations , PollingIterationsMaximum , and ResendIterations helps a WHOLE lot.

    ReplyDelete
  2. I'm losing my head over a similar problem: after installing Win7 32 bits on an Asus L3000 L3D laptop, the keyboard doesn't work at all. It shows as Standard PS/2 Keyboard with a 2006 version of the driver (!??) and "This driver works correctly" but pressing keys has no effect. The keyboard works when booting the system and in the BIOS...any idea what I could do?

    ReplyDelete
  3. AA: The keyboard driver dated 2006 is the correct one (standard keyboards have not changed much in the past many years).

    You might consider doing the following: From Control Panel, Device Manager, delete the keyboard and reboot the computer (using the mouse); it might be handy to have a USB keyboard, just incase you get trapped. This should re-install the keyboard driver.

    To confirm: You are telling me you have an actual PS2 keyboard port on this laptop -- or do you have one of those PS2/USB keyboard converters. If you do, I know that the simple PS2-->computer USB adapters do not work well. You'll have to spend money ($30) and buy a more sophisticated adapter in order to make the older PS2 keyboard work on the newer USB slots. The electronics have something to do with the keyboard keepalive.

    With all this said, I'm using an original IBM PS/2 keyboard and have been using this same keyboard for something like 24 years; I'm typing on that keyboard right now. But this PC is the last PC made with a real PS/2 keyboard port... alas.

    ReplyDelete
  4. The author comments on an advertising comment left earlier this week in which "Reader" Sunny wrote: Do you find your windows system become more and more slowly after used it a few month, the reason is your windows registry stored much rubbish and it becomes bloated. To solve this problem, you can use windows registry cleaners software. (with a link to their registry cleaning product).

    To which the author replies: Pure rubbish. I deleted the message.

    ReplyDelete

Comments are moderated and published upon review.