Can't register hyper + ESC as trigger

I can register ⇧⎋, ⌃⎋, ⌥⎋ and ⌘⎋. I can register ⇧⌃⌥⎋, ⇧⌃⌘⎋, ⇧⌥⌘⎋ and ⌃⌥⌘⎋.

But I can not register ⇧⌃⌥⌘⎋ as a trigger. Not using the Hyper key, and not using the four individual modifiers. Nothing happens. Why?

When recording the key sequence, there's no key down event for the ⎋ key (both using hyper and the individual keys).

Weird, seems to work fine here

Is the esc key maybe already remapped somehow?

⌥⌘⎋ goes to Force Quit (system default).
⌃⌥⌘⎋ goes to Supercharged "Clear top visible notification".
In iTerm, ⎋ alone sends ⌃C.

Nothing else as far as I know.

Supercharged didn't recognize ⇧⌃⌥⌘⎋ (for the same reason I guess). That's why I set it to ⌃⌥⌘⎋ in Supercharged and intended to bounce to it in BTT.

No change in behavior if I remove it from Supercharged.

Karabiner can see the ⎋ key down (using its own hyper key):

If you have Karabiner still running my first guess would be that is somehow catching the event because all other apps should not be able to catch it before BTT does :-/
Karabiner is running at a lower level and would be able to "steal" it.

Possibly also check whether you can record that shortcut in System Preferences => Keyboard => Keyboard Shortcuts

I have a single rule in Karabiner - the hyper key to right ⇧⌃⌥⌘.

Nothing about ESC in Karabiner setttings.

Turned off Karabiner and manually pressed ⇧⌃⌥⌘⎋. No change in behavior. Karabiner's event viewer can still see the ⎋ key down, BTT can not.

No, I can not record ⇧⌃⌥⌘⎋ in System settings keyboard shortcuts.

The weird thing is that you can record shortcuts with esc just not with these specific modifiers.
If you can't record it in System Preferences while BTT is quit, we can at least rule out that the issue is caused by BTT.

Recording the key sequence and create a trigger doesn't work. It is not triggering when I press the keys.

Adding a fake ⎋ key down doesn't help, still not triggering:

Quit BTT, and I can still not record the shortcut in System settings. So no, this is not caused by BTT. I just don't understand why something would swallow the ⎋ key down on the way between Karabiner and BTT / the rest of the world.

Me neither :-/
Is there a way to temporarily disable Karabiner to see whether it changes anything? I can't think of many other apps that would be able to swallow the key in such a specific way.

I quit Karabiner and there was no change in behavior (except that Hyper key was no longer working of course).

I think it still keeps the virtual keyboard driver active even if Karabiner itself is quit. (I remember users having similarly weird issues in the past, and it was not easy to completely disable Karabiner, but I haven't used it myself)

I disabled all the Karabiner extensions. The behavior stayed the same.

Oh wait, I just realized that it also doesn't work here when using the right modifier keys.
Very interesting, seems like macOS itself is blocking this at some level.

Backspace also doesn't work in this situation

The problem seems to be that in this scenario the down-event is somehow filtered out for whatever reason. The standard macOS hotkey implementation always requires a key-down event, and so does the BTT implementation.

I think I can add a special case to make it work at least when releasing the esc key.

Bummer. Backspace seems to be a very probable candidate for a hyper-shortcut in my case.

I also don't really understand why the key sequence trigger doesn't work? If BTT can record it, why doesn't it fire? I can setup a key sequence for Hyper + 1 or something, and it works fine. But the Hyper + Esc (with only key up for Esc) won't trigger, no matter if the Esc key up is required or not, and no matter if I add a fake key down or not. I also tried removing the Esc key up, to no avail.

if a key up event appears, BTT expects there must have been an associated down event. If that is not the case it assumes something went wrong. (Which is usually true :sweat_smile:)

FYI: For me the behavior is the same with the left modifiers. But good that you're able to reproduce it some way.

5.588 should allow to recognize it via a normal keyboard shortcut.

You might however need to copy in the json manually because the recorder field doesn't support this yet. Also it will only work on key release because the down-event is missing.

[
  {
    "BTTLastUpdatedAt" : 1757074000.4576411,
    "BTTTriggerType" : 0,
    "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut",
    "BTTUUID" : "A277713F-5034-4CCE-9DDB-D80CCEFDABDC",
    "BTTAdditionalConfiguration" : "1974356",
    "BTTShortcutScope" : 0,
    "BTTShortcutKeyboardType" : 1573,
    "BTTTriggerOnDown" : 1,
    "BTTLayoutIndependentChar" : "ESCAPE",
    "BTTShortcutKeyCode" : 53,
    "BTTShortcutAdvancedModifierKeys" : "1974356",
    "BTTShortcutModifierKeys" : 1966080,
    "BTTOrder" : 3,
    "BTTAutoAdaptToKeyboardLayout" : 0,
    "BTTActionsToExecute" : [
      {
        "BTTLastUpdatedAt" : 1757070896.4591579,
        "BTTTriggerParentUUID" : "A277713F-5034-4CCE-9DDB-D80CCEFDABDC",
        "BTTIsPureAction" : true,
        "BTTTriggerClass" : "BTTTriggerTypeKeyboardShortcut",
        "BTTUUID" : "C89C8FB6-8B1F-458B-8940-1FEEFBAE5A12",
        "BTTPredefinedActionType" : 254,
        "BTTPredefinedActionName" : "Show HUD Overlay",
        "BTTHUDActionConfiguration" : "{\"BTTActionHUDBlur\":true,\"BTTActionHUDBackground\":\"0.000000, 0.000000, 0.000000, 0.000000\",\"BTTIconConfigImageHeight\":100,\"BTTActionHUDPosition\":0,\"BTTActionHUDDetail\":\"\",\"BTTActionHUDDuration\":0.90000000000000002,\"BTTActionHUDDisplayToUse\":0,\"BTTIconConfigImageWidth\":100,\"BTTActionHUDSlideDirection\":0,\"BTTActionHUDHideWhenOtherHUDAppears\":false,\"BTTActionHUDWidth\":220,\"BTTActionHUDAttributedTitle\":\"{\\\\rtf1\\\\ansi\\\\ansicpg1252\\\\cocoartf2865\\n\\\\cocoatextscaling0\\\\cocoaplatform0{\\\\fonttbl\\\\f0\\\\fnil\\\\fcharset0 SFPro-Bold;\\\\f1\\\\fswiss\\\\fcharset0 Helvetica;\\\\f2\\\\fnil\\\\fcharset0 SFPro-Regular;\\n}\\n{\\\\colortbl;\\\\red255\\\\green255\\\\blue255;\\\\red0\\\\green0\\\\blue0;}\\n{\\\\*\\\\expandedcolortbl;;\\\\cssrgb\\\\c0\\\\c0\\\\c0\\\\c84706\\\\cname labelColor;}\\n\\\\pard\\\\tx560\\\\tx1120\\\\tx1680\\\\tx2240\\\\tx2800\\\\tx3360\\\\tx3920\\\\tx4480\\\\tx5040\\\\tx5600\\\\tx6160\\\\tx6720\\\\pardirnatural\\\\qc\\\\partightenfactor0\\n\\n\\\\f0\\\\b\\\\fs80 \\\\cf2 test\\n\\\\f1\\\\b0\\\\fs24 \\\\\\n\\\\pard\\\\tx560\\\\tx1120\\\\tx1680\\\\tx2240\\\\tx2800\\\\tx3360\\\\tx3920\\\\tx4480\\\\tx5040\\\\tx5600\\\\tx6160\\\\tx6720\\\\pardirnatural\\\\qc\\\\partightenfactor0\\n\\n\\\\f2\\\\fs48 \\\\cf2 test2}\",\"BTTActionHUDBorderWidth\":0,\"BTTActionHUDTitle\":\"\",\"BTTActionHUDHeight\":220}",
        "BTTShortcutKeyboardType" : 0,
        "BTTShortcutKeyCode" : -1,
        "BTTOrder" : 3,
        "BTTAutoAdaptToKeyboardLayout" : 0
      }
    ],
    "BTTTriggerConfig" : {
      "BTTLeftRightModifierDifferentiation" : 1
    }
  }
]

It will work on ⎋ key release, but before modifiers release?

Could this be why it is not working:

Holding Shift, Option, Command, and Esc together for three seconds will immediately force quit the currently focused application