Recent Posts

Making Windows keyboard programming tools work for macOS

On of the first things I noticed, when I started to get into the mechanical keyboard hobby, was the lack of support for macOS. Most of the more “mainstream” mechanical keyboard manufacturers are still using proprietary programming software that only runs on Windows. This poses a problem for someone who typically uses macOS. Lucky for me, I still own machines that run Windows. However, even this doesn’t help when it comes to the proprietary weirdness that is Apple.

I use the same key combo a few times per day, CTRL + SHIFT + EJECT. In macOS, this shutoff the display and locks the computer. Any time I get up from my computer, I just lock it with those three keys out of habit. Sure, the odds of someone trying to get access to my work computer without someone noticing in a small office of less than 10 people is pretty slim, but I just consider it a good security habit at this point.

That key combo presents an issue. The eject button on an Apple keyboard does not actually send a key code. This wasn’t a problem when I was using QMK, but it does present a problem when I’m limited to these proprietary programming tools that most companies offer. How can I map a key to a key code that doesn’t exactly exist? I thought I would flex my intelligence and use QMK to solve the problem. I decided I’d use my KBParadise V60 Type R to send the KC_POWER key code to the Windows programming tool. It only seemed logical as KC_POWER was the solution to locking macOS using a QMK macro.

… Except it didn’t work. It seems that the Drevo programming software was only designed to accept a predefined range of key codes, and KC_POWER was not within that range. Back to the drawing board. Maybe I could send KC_EJCT? Maybe there was another key combo that could accomplish the same task?

Well… several failed ideas/attempts later I discovered that CTRL + CMD + Q would lock the computer, but it would not shutoff the display. I could then use ESCAPE to shutoff the display. While this was now a two-step process, it was not a process that only used key codes recognized by Windows and Drevo’s software. I managed to record a macro that would send CTRL + CMD + Q followed by ESCAPE a few milliseconds later, and it worked. The solution was more convoluted that I would have hoped for, but I managed to get this Drevo Calibur to recreate the result of a key combo that the manufacturer’s software was not capable of recognizing.

* pats self on back *

In the world of mechanical keyboards the phrase, “where there’s a will, there’s a way,” holds true. Sometimes you need to think outside the box and explore counterintuitive options, but the desired result is almost always achievable with a bit of persistence.