Unshaky tries to address an issue on the butterfly keyboard (Macbook & MacBook Pro 2016 or later): Double Key Press (See "User complaints" below).
Apple made it difficult to replace only the keyboard and it costs hundreds of dollars. Unshaky might save your keyboard by dismissing such "second key hits" (any key presses that occur no later than x milliseconds after the previous effective one). I fixed my "w" key with Unshaky, and if it does not work for you, open an issue here. The image below illustrates how Unshaky works.
[June 2018] Good news, Apple launched a Keyboard Service Program for MacBook and MacBook Pro, and go get your keyboard fixed, maybe temporarily.
Complaints about this issue
- Keyboard 'B' key double hit problem
- MacBook Pro 2016 Random Key Repeat Keyboard Issue
- MacBook Pro 13" 2016 Double Key Press
- 1 key - 2 letters macbook pro 2016 and 2017
- The new and improved MacBook keyboards have the same old problems
- Reddit: MBP 2018 15" Sticky Key Problem!
- Reddit: My Experience with Macbook Pro 2018 Keyboard
- Reddit: Anyone. with heir MBP 2018. keyboard. that. had. problems but is getting worse? Does a keyboard cover fix this?
- Reddit: 2018 Known Keyboard Issue - repeating/sticky keys, silicone covers, compressed air
How-To (Video Walkthrough)
Click the image below to watch it on YouTube
Can't watch by clicking the image above? Download mp4 (13MB) file here
First, move the "Unshaky.app" to your "/Applications" folder.
Grant Accessibility Permission
Follow the instruction when you first open Unshaky. If the instruction does not work for you, go to System Preferences -> Security & Privacy -> Privacy (Tab) -> Accessibility (Left panel) and add "Unshaky.app." Make sure it is checked.
Launch at Startup (Optional)
Go to System Preferences -> Users & Groups -> Login Items (Tab) and add "Unshaky.app".
Configure delays for your defective keys
Click Unshaky icon in the menu bar and select "Configure" to configure delays for the defective keys.
How to pick an appropriate delay?
I don't think there is a universal delay value for all people. If you type very fast, you might want to have a shorter delay. I use 40 ms since I am a fast typer. With a long delay, I cannot type "apple" because the second "p" is likely to be blocked. Some users found 60 ms a sweet spot and some have no issue with 80 ms. My suggestion is to start with a short delay (like 40 ms) and gradually increase it.