F Keys (F13 to F24)

Although most keyboards don’t have F13 to F24 keys, these are real keys and can be handy for macros.

Keyboard Maestro is able to recognize up to F20 as a “trigger” for a macro (when programming the macro), but for some strange reason F17-F20 will not actually execute the macro.

It appears that my Mac is not even recognizing F21-F24 at all which is strange, but the F17 to F20 is puzzling since the program acts like it detects the key when programming the macro, but doesn’t actually execute the macro when the key is pressed.


Hey Heber,

What keyboard? (Brand and model.)


I’m using my own product from www.keymouse.com (we make custom keyboard/mouse products).

The keys are all fully programmable. One of the easiest ways to program a Macro to a key is to assign it to an F13 to F24 key (since they are typically keys not used by most programs). For example, I may want a key for “Share Screen in Skype”. I could assign it to F15, and then cause Keyboard Maestro to intercept that key and perform a Keyboard Maestro Macro. It works good unless I program the key in the F17 to F24 range, then they behave as described above.


If you would like to send us one to test, I can see what is going on and what we can do (or perhaps what you can change) to make it work. Contact support by email (support at stairways dot come) if you’re interested.

Is there any movement on this issue? I, too, cannot get KM to recognize F20-F24, when sent as tokens from a Kinesis Edge Pro. It will recognize tokens (not actual F-keys) F1-F20; and of course, it recognizes F1-F12 hardware keys. Maddening, as I want to use those extra four tokens with KM to program the Edge's hotkey set.

No. Without information on the events it sends and how it sends them, there is no way to even make a recommendation, and any recommendation would probably involve changing the firmware on the device.

So, for fun I changed a key to F20, then to F21, observing it in Karabiner EventViewer:


Is this of any help at all? As far as Karabiner is concerned, it's an F21 key; and I can get it to respond; but not KM. Is the code being sent in proper/correct hex?

If not, do you have an app I can monitor with to help you to help me push a request over to the Kinesis team to correct whatever code is being sent? They are pretty motivated to make this a great keyboard; when I asked them, they said as far as they can determine, it is sending F21-24 as expected.

I'd appreciate any help you could give to fix this miscommunication to KM.

Well, son of a gun.

I never though to check "This Device Key:".

Indeed, when I use that setting, it recognizes the Freestyle Edge key as F21. Nice.

Perhaps this should be reposted somehow as a hint for those struggling with similar issues?

1 Like

It may simply be that the Hot Key API does not handle F keys past 20.

@heberallred, see my replies above; using device-specific triggers might help you.

Not sure to whose API you are referring; Kinesis' F20-24 are recognized by numerous other apps that allow for a hotkey to be set; e.g., I was able to set F23 to activate BusyCal; and yet not in KM, or in, e.g., Cardhop's activation shortcut; all this despite Karabiner not only seeing it and able to use it, but showing it as F21(-F24) in its own EventViewer.

Did you mean Apple's Hotkey API? If so, that makes sense; apparently some developer's then are using the official API, while others are doing something different. I also have to wonder if this isn't an OS version issue; I'm on Sierra, FWIW.

Somewhere there is a mismatch between how some apps are implementing shortcut listening for F keys (including KM), and how Kinesis has implemented it (along with, apparently, some other hardware makers, like the one on this thread); while others (perhaps accidentally) "got it right". [w]



Weird. No idea. There are so many variants of Apples event handling systems these days, I guess some are working and some aren't with whatever minor variant of the events the device is sending.

The so called F21~F24 keys are actually Soft1~Soft4 keys in Linux. All OSes (Windows, macOS, Linux, Android) recognize F13~F20. see Key Values - Web API 接口参考 | MDN