KM won't accept hyper key as a hotkey

I am trying to use the Hyperkey app to map the caps lock to shift/option/control/command. this worked when I used better touch tool to initiate the hyperkey, but it KM doesn't accept it when I try to set it as a hot key in a new macro. Also, it won't accept it when I just hold down all keys plus a letter key. Any ideas? (I'm running M1 iMac with sonoma).

I'm uncertain if you are still using BetterTouchTool to implement the Hyper key. Keyboard Maestro can't create a Hyper Key, but it can utilize one if it has been implemented using BetterTouchTool (or Karabiner-Elements).

If you cannot set a hot key when holding down Command, Control, Shift, Option and pressing a letter, then there are problems with your setup and you should look at what software you have installed that is messing around with your keyboard layout and mappings.

1 Like

I use Hyperkey with Keyboard Maestro without any problems. It should be the same for you.

1 Like

Did you read their FAQ?

FAQ

Why can't I record my shortcut with Hyperkey in Keyboard Maestro?

  • Keyboard Maestro's shortcut recorder works a little differently than most, BUT if you just record your shortcut physically pressing all the modifiers, then the hyper key configured in Hyperkey (or Superkey) will properly trigger what you have configured in Keyboard Maestro.

I'm having the same problem as the OP. After using Karabiner for a couple of years, and Better Touch Tool for another year or so, I started using Hyperkey a couple of weeks ago to try something simpler. It worked fine for a while, but a few days ago it lost the ability to create new triggers that work with Keyboard Maestro. (I did update Sonoma a few days ago. Could that be the problem?)

I am definitely holding all four modifiers when recording the hot key in Keyboard Maestro.

Old triggers work fine, and it the KM macros run when I hold all four modifiers, but holding the caps lock no longer works. Nothing happens, and there’s no error listed in the KM engine log.

At Peter's suggestion I’ll dig around, but where would I even start to see what might be affecting keyboard layout and mappings? What type of app might do that? Is there a utility that would tell me what the Mac is really seeing when I press a key combination?

And if there’s some interference, wouldn’t they have also affected my use of Better Touch Tool for a hyperkey?

I’m no longer running Better Touch Tool, and I also booted into safe mode, then started KM and Hyperkey, and it still didn't work.

I'm also running M1 iMac with Sonoma.

I now have a better idea of what's happening!

When macro contains an insert text action, the first letter of that text string is executed as a hyperkey.

For instance, I have a "Capture palette" that I open with hyperkey-C.

If I make a macro (triggered with hyperkey B) that contains an insert text action that inserts the word "carbon," the "Capture palette" appears, and a letter C is not inserted.

This occurs with all of my macros triggered with the Ctrl Opt Sh Cmd modifiers.

This did not happen when I was using Better Touch Tool to provide hyperkey functionality, but started as soon as I switched to the Hyperkey app.

I don't know how the Hyperkey app works, but sounds like the juice is not worth the squeeze if Karabiner/BTT were working without a conflict. Try putting a Pause action at the top of your macro that is triggered with hyperkey B.

I was thinking about this while driving down to Denver today, and it did occur to me that the macro was triggering like it should, but Hyperkey was still doing its thing when the insert text by pasting occurred.

So yes, I think you're right: a delay can make it work. Getting back home, I tested this and it appears .4 sec. is reliable, but .3 only works about 70% of the time. .2 not at all.

Perhaps it depends on the speed of the processor. Maybe the Apple Silicon
Macs have outpaced the original design of the Hyperkey app.

Anyway, i'll try this for a while. The delay isn't really noticeable, given my uses of hyperkey.

You could try something like this:

...and if KM is picking up Hyperkey as though it were "normal" key presses, your macro will pause as long as is needed and no longer.

I'll keep this idea in mind, but for now I've stopped using an extra app to provide hyperkey functionality.

Instead, realizing that I very rarely use the option key to type special characters, I set the caps lock key (in system keyboard settings) to function as an option key. Then changed the modifier on all my hyperkey triggers to just "option."

I created a group of "paste text" macros for the 10-12 special characters I can conceive of ever using, and used a show palette of macros action to display them and a pallete. I trigger that with my new hyperkey-S (for special characters).

It's simple, apparently stable, and doesn't require any extra code to create a hyperkey.

Do you see any potential issues with this approach?

Best,
Russell