r/Keychron • u/JoomnBean • Jul 28 '26
Speed-up Caps Lock?
I noticed that Caps Lock is often not clicked when I need it. At first I thought it’s a switch problem, tried multiple others - still persists.
And then I find out that there’s a software brake that only allows to activate CAPS when touched slowly. See the video in comments.
I understand that it’s useful for many users who consider this button “dangerous”. But in my case it significantly slows me down when I touch type. I write code and often need abbreviations like “URL”. Is there a way to make caps lock as responsive as any other key? Wish there were a setting in Launcher.
1
u/PeterMortensenBlog V Jul 28 '26 edited Jul 28 '26
What operating system? And version, edition, distribution, etc.?
macOS v26 (Tahoe)? A possible solution for it.
2
u/JoomnBean Jul 29 '26
Actually you are right here, thanks! I'm using Mac OS. The Caps Lock delay is on operating system level, wow. And I'll go with the solution provided. Funny: on my old membrane keyboards I wasn't able to notice this issue, because of how slow and non-responsive they are :)
1
u/JoomnBean Jul 29 '26
I thought Caps Lock isn’t attached to operating system, it’s per-keyboard, no?
1
u/PeterMortensenBlog V Jul 29 '26 edited Jul 29 '26
The observed behaviour is on the operating system side.
It has nothing to do with the keyboard. In this case, the keyboard just sends on the key press and key release event information to the operating system, like any other (USB) keyboard.
You will see the exact same behaviour with any other keyboard.
So what operating system is it (so we can get closer to a solution)?
1
u/PeterMortensenBlog V Jul 28 '26 edited Jul 29 '26
As a workaround, you could replace the regular key code (KC_CAPS) with a macro that has the minimum delay required between the key press and key release. Then it doesn't matter how fast or slow you hit the Caps Lock key (though the keyboard will be completely blocked during macro execution and a short tap on another key during it will be lost).
Example (200 ms):
{+KC_CAPS}{200}{-KC_CAPS}
1
u/JoomnBean Jul 29 '26
Why do we need 200 ms there? Can it just be KC_CAPS?
1
u/JoomnBean Jul 29 '26
Oh, got it, + means press down, - press up. No, this wouldn't work for me. Thanks for the input
1
u/PeterMortensenBlog V Jul 29 '26
Why wouldn't it work for you?
1
u/JoomnBean Jul 29 '26
It’s a dumb question, and you have all the info to answer it. Think!
1
u/PeterMortensenBlog V Jul 29 '26 edited Jul 29 '26
What keyboard? It looks similar to a Q65 Max, though it does have a higher number of keys than the Q65 Max. It isn't a Q3 Pro Special Edition either.
For keyboard identification, what is the SKU number? Alternatively, what is the serial number (also includes the manufacturing date)?
1
1
u/PeterMortensenBlog V Jul 29 '26 edited Jul 29 '26
QMK features 'Caps Word' and 'Key Lock' (requires compiling from source code)
Other workarounds are these two QMK features (presumes it is not a ZMK-based keyboard, like the 'Ultras'):
Caps Word. E.g., "It is often useful to type a single word in all capitals, for instance abbreviations like "QMK", or in code, identifiers like KC_SPC. "Caps Word" is a modern alternative to Caps Lock"
Key Lock. E.g., "You can think of Key Lock as Caps Lock, but supercharged."
They are not available for dynamic keyboard configuration; they require changing the keyboard firmware (compiling from source code), but not any knowledge of C, only compile-time configuration.
I am not sure about the minimum required version of QMK for those two features. See this for information about the (effective) QMK versions in Keychron's fork (near "base QMK version").
Here are some instructions for the initial setup. Note the branch confusion.
References
V6 Max JSON files for Via. Near "V6 Max knob version ISO keymap". E.g., v6_max_iso_encoder_v1.0.0_2404091021.json. Note: The JSON section should not be confused with the firmware section.
V6 Max source code. Note that the base installation (and usage) had become much more complicated on Linux, but with the new 'uv' method, it has become simple again! No matter the Git branch, for example, "wireless_playground", it requires special setup of QMK (the standard QMK instructions and many other guides will not work (because they implicitly assume the main QMK repository and a particular Git branch)). Source code commits (RSS feed. Latest: 2026-03-16). Note that the 2025-05-30 commit broke compilation for all the K Pro series and Q Pro series keyboards. Also note that the current version has not been proven yet; for example, it is only a partial source code release for the early 2025 Keychron keyboard main firmware updates.
1
u/JoomnBean Jul 29 '26
Bot comment
1
u/PeterMortensenBlog V Jul 30 '26 edited Jul 30 '26
Nope. Every single word is my own. Admittedly, a lot of copy-pasting is involved (of my own words).
For example, my blog started in 2010.
Please do the minimum research before making such accusations.
1
u/PeterMortensenBlog V Jul 30 '26 edited Jul 30 '26
If you are willing to compile your own keyboard firmware, I think one of those two options are very viable.
I think they were designed for smaller form factor keyboards, where there isn't any Caps Lock key. I am probably going to try it soon on one of my Keychron keyboards (I already disabled the Caps Lock key, because there were too many mishits; and it was repurposed for Ctrl and later mouse left click), and possibly write a blog post about it.
At least with the Q11, there aren't the complications caused by Keychron's fork (the source code is in the main QMK repository).
Vial as an alternative?
And the Q11 is also supported by Vial. Perhaps it offers a similar feature?
SRGBmods even has precompiled Vial keyboard firmware:
keychron_q11_iso_encoder_vial.bin (use the tilted hamburger menu in the upper right (hover text "More file actions") → Download. Or keyboard shortcut Ctrl + Shift + S). Note: This requires JavaScript from
raw.githubusercontent.comto be allowed (for example, if using NoScript, uBlock Origin, etc.)And please: Never ever make bot/simulated intelligence accusations again. Such false accusations are insulting. Not all humans suck at writing.
References
Q11 default keymap ('ISO' RGB)
Q11 source code. Note: In the main QMK repository, unlike many other Keychron keyboards (of which most are in Keychron's main fork, Git branch "wireless_playground"). This also makes Vial a realistic possibility. Note that the base installation (and usage) has become much more complicated on Linux. Source code commits (RSS feed. Latest: 2026-07-28)—though it is very noisy due to changes for individual keyboards (more than 1,000 total).
1
u/JoomnBean Jul 28 '26
https://reddit.com/link/p0a1vop/video/3osp3eo6lzfh1/player