If you can afford it, I would recommend replacing the topcase and keyboard as Apple suggests. If like me, you can't afford it or are open to a hack fix, then read on.
Yesterday, a little water spilt on my 13" MBP keyboard. I turned it around immediately, drained out the water and used tissue to suck it all up but the keyboard was still acting funny. I turned it off and left it out in the sun for a couple of hours and turned it on again but problems remained. My warranty had run out just a month ago and I knew Apple would not cover this under warranty. I tried to clean the shift keys and left it overnight with some rice on them with hopes that the moisture might get sucked out. Nothing worked. (The rice bit is an urban legend that seems to work with some electronics). Went to the Apple Store this morning and was told that they wouldn't even take out the key and clean it, and that the entire top case would have to be replaced. A total bill of 156 Euros which I cannot afford. I had a USB keyboard that would let me use the Mac for the moment so I decided to try to work out a fix.
- Boots in safe mode everytime (which I later found out was because the shift key is pressed)
- Cannot login because password is in lower case or has numbers
- Cannot boot in super user mode and try to disable keys or override password as some commands won't work in uppercase (I wouldn't recommend this anyway because its super user mode)
- All text is in caps and numbers are symbols as though shift key is always pressed
- Audio doesn't work
- Keyboard viewer would not always show the shift key pressed. The key seemed to get pressed at random
Hold the Option button down on boot to bypass the Safe Mode ensure a normal boot
At the login screen, plug in a USB keyboard and enter your password to login. Switch to “French- Numerical” keyboard and use the Caps Lock key to invert uppercase to lowercase. Note the layout of this keyboard is different, make sure to look up an image of this layout before you type in your original password.
Change your password to one that uses all caps and no numbers
Download and install KeyRemap4MacBook .
Use a combination of the functionalities of the Keyboard Viewer and KeyRemap4MacBook to figure out which shift key is the problem. In my case, I found out that it was only my left shift key.
Disable the left/right shift key on KeyRemap4MacBook and click on the 'Reload XML' button to make that take effect.
If only one shift key was the problem, then you are done. If both shift keys were shorted, then its likely other keys are too. In which case you should probably just replace the entire thing. If you think other keys are not affected, then you can use KeyRemap4MacBook itself to remap the shift functionality to a lesser used key like the Left Option key.
Under System Preferences > Users & Groups > Login Items , add KeyRemap4MacBook as an application that should start on login. This will ensure that your disable/remap of the shift key is active every time you login.
Usage change/Things to remember
- Remember to hold down the Option key everytime the computer boots or
reboots to bypass safe mode. The fix above is at the software level.
The key is physically still shorted at the hardware level and will
- Remember that at the login screen, the disable/remap is not
active. So your password now has to be all caps and only letters.
As soon as I can save some money, I will get my topcase and keyboard replaced but until then this solution works great with minimal change. Hope this helps!