16

This is my current setup:

enter image description here

  • 1 year warranty expired.
  • 90 days warranty warranty expired too.
  • Using external keyboard on top of the internal keyboard for now.
  • I need to disable the built-in one, because using the external keyboard sometimes triggers keystrokes from the internal keyboard.
  • Alternatively, I can rebind some key to act as r

I am looking for a temporary software solution; in particular something like this, but it should lock the keyboard instead of disabling the screen.

  • 1
    Why do you have to lock it? Can't you just ignore it since you are not using it? There probably is a program that could find something unused like an fkey to a normal keystroke, but it would likely be slower than a regular keystroke. So high speed typing might not go smooth, and you could even get out of order letters. – l008com Apr 11 '18 at 11:33
  • 3
    Rebinding some key to act as r can be done using the apps Ukelele or Karabiner. – Tom Gewecke Apr 11 '18 at 13:02
  • 3
    Hardware solution alternative: The Roost Stand to elevate the laptop while using keyboard/mouse separately. – Basil Bourque Apr 11 '18 at 20:57
  • 4
    So the r isn't working on the original keyboard? Have you tried taking the key off and seeing whether you can fix it? – Acccumulation Apr 11 '18 at 21:31
  • 3
    If you have a decent Mac-savvy repair shop nearby they can easily do it. Mine swapped in a used keyboard from someone else's machine. Still works, 3 years later and cost me less than $100. A laptop with an external keyboard is not much of a laptop. – JL Peyret Apr 12 '18 at 15:23
31

You can disable the keyboard by unloading the kernel extension with

sudo kextunload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext/

To reload,

sudo kextload /System/Library/Extensions/AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext/

You didn't say what version of macOS you are using, I believe this syntax works as of 10.10. Some tweaking may be needed depending on your version.

24

Actually you can buy replacement keyboards online, at the very least eBay has a number of them on sale. Have a look at ifixit.com as they show how to do it and it should be able to give you an idea if you will be able to replace it yourself.

The insides of MacBooks can be a bit fiddly but with a little care and the right tools (which ifixit sells) you can probably do it yourself.

  • 12
    This doesn't answer the question- the OP wants to disable their keyboard. not buy a new one. MacBook keyboards are also extremely difficult to replace due to how Apple mounts the keyboard to the case, and certainly isn't something your average joe will be able to do. – AStopher Apr 11 '18 at 18:32
  • 47
    One thing I have learned in supporting computers over the years is that it is important to also answer the question that they didn't ask as an option in case they did not consider an option that they did not think of or think was possible. And one person's extremely difficult is another person's "a bit fiddly." – Steve Chambers Apr 11 '18 at 18:44
  • 5
    It's called the XYProblem: mywiki.wooledge.org/XyProblem – alexgbelov Apr 11 '18 at 20:18
  • 4
    @cybermonkey The fact that the OP mentions expired warranties suggests they would have liked it fixed if feasible (but presumably not at the price Apple would charge). – TripeHound Apr 11 '18 at 20:44
  • 4
    This provides an answer to the original question. If this procedure is followed the keyboard shown in OP's screenshot will be disabled in a way much more definitive than with a software command since it will be removed from the laptop. – Jose Antonio Dura Olmos Apr 12 '18 at 14:25
18

The easiest way is to install "Karabiner Elements".

Once it is installed open the "Preferences" from the menu on the right of your menu bar.

enter image description here

Now in the bottom half of the pane you can now choose to disable the builtin keyboard when your other keyboard is connected.

BTW - you can also use Karabiner Elements to map another key combination to do the same as the broken one, such as ctrl-option-a to s. I did this for quite a while with a broken "\" key on a MacBook Pro.

  • 1
    "easiest" is subjective. This is a way to do it through a graphical interface. – Steve Apr 13 '18 at 1:50
6

Karabiner

via Tom Gewecke

enter image description here

I'm not a hardware guy, I may use unofficial service or gadget insurance.

  • 6
    This does not count as an answer to the question as it is link-only. Instead, please expand your answer explaining the steps to disable or rebind keys using Karabiner. – AStopher Apr 11 '18 at 18:34
  • 1
    @cybermonkey: This isn’t link-only at all! “A picture is worth a thousand words”: this screenshot shows as much as several paragraphs of text would about what Karabiner is and how to rebind keys with it. – PLL Apr 12 '18 at 11:06
  • 3
    @PLL The screenshot does not explain how to add the keybind, if I used Karabiner I wouldn't be able to set-up the appropiate keybind using that screenshot as a guide. – AStopher Apr 12 '18 at 17:01
  • @cybermonkey - please expand your answer explaining the steps - The app is so simple. Screenshot shows exactly where to click. What do you mean? – Mars Robertson Apr 17 '18 at 9:56
  • 1
    @MichalStefanow It may seem simple to you, but to others it may not be. Please remember that you're answering the Q&A and that anyone can have the same question and follow the steps provided in an answer. – AStopher Apr 17 '18 at 11:49
2

Karabiner Elements as another user suggested will do exactly what you want, but have you tried taking it to the Apple store anyway? They often repair out-of-warranty, especially for a recent device like your 2016 Mac, and sometimes even for free. Also the keyboard failures are a bit of a common issue so they probably have some in stock.

0

KeyboardCleanTool

This application will lock your keyboard once you open it and press the "Lock the keyboard" button. It is not meant for locking the keyboard permanently, but might be useful.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .