pragmatist
Patrick Joyce

December 30, 2016

Setting Up Microsoft Surface Ergonomic Keyboard on Mac (El Capitan)

Problem

OSX (at least El Capitan) doesn’t recognize the Microsoft Surface Ergonomic Keyboard as a keyboard out of the box. It pairs, and you can type, but you can’t remap the command keys. As a Mac user that makes the keyboard pretty much unusable as I would be forever typing “ç√” (option-c option-v) instead of copying and pasting (⌘-c, ⌘-v).

Solution

Important note: this will not work on Sierra.

Update - 2017.02.18: I've added instructions for Sierra.

  1. Install Karabiner - Its a key remapping tool that lets you intercept and remap keyboard input.
  2. Edit the ‘private.xml’ file. You can find the ‘private.xml’ file by choosing the Misc & Uninstall tab. Replace private.xml with the contents in this gist. This file defines a keyboard type for the Surface Ergonomic Keyboard and a remapping that only applies for that keyboard (so you don’t change your default keys on your laptop)

Screenshot of finding private.xml

  1. Open Karabiner again to the main ‘Change Key’ tab and tap ‘Reload XML’

Screenshot of Reload XML

  1. There should now be two new options at the top. Enable both options.

Screenshot of Enabling Both Options

  1. Test that everything is working as expected (⌘-c and ⌘-v to your heart’s content)

(Credit to Caleb Hicks for solving a similar problem for the Sculpt. I merely adapted it)

Backstory

I’ve used an old wired Microsoft Ergonomic Keyboard at work for years. Seriously, that keyboard is so old that it is a PS/2 keyboard with a USB adapter.

I’d gotten tired of the squishy key feel on my old behemoth but hadn’t gotten around to upgrading to a Sculpt out of sheer laziness.

I got surprisingly excited when I saw that they were coming out with a new, high quality materials version of the ergonomic keyboard and—after a little bit of trouble—preordered it.

The day before mine is scheduled to be delivered I see these tweets from Marco Arment and get worried.

Sure enough, I pair the keyboard and I can’t remap the command keys.

Thankfully, the internet came to the rescue. I found this article about how to work around a bug introuced in Yosemite 10.11.2 and was able to adapt the instructions to work with the Surface Ergonomic.

Now that I’ve had it working for about a month I’m quite happy with my new toy. It is very comfortable to type on, much quieter than my old keyboard, and looks great on my desk.

Keyboard on my Desk at Work

More Articles on Software & Product Development

Agile With a Lowercase “a”
”Agile“ is an adjective. It is not a noun. It isn’t something you do, it is something you are.
How Do You End Up With A Great Product A Year From Now?
Nail the next two weeks. 26 times in a row.
Build it Twice
Resist the urge to abstract until you've learned what is general to a class of problems and what is specific to each problem.