This was written as it happened (though not necessarily in the same order) when I was new to ZMK, on day 1 of getting the Keychron B6 Pro. Some pros: Independence of a web service. More permanent configuration of the …

Customising the ZMK-based Keychron B6 Pro keyboard without the Via clone Read more »

The short version: A wireless QMK-based Keychron keyboard can provide the information about the battery state, e.g. “81%”, to the operating system, just like, for example, a wireless computer mouse. Though the operating system may have to be configured for …

The battery state of a wireless Keychron QMK-based keyboard can be displayed in the operating system Read more »

Version 1.93 (August 2024 release, received 2024-09-05) fixed a problem with very slow (minutes instead of seconds) Git operations in Visual Studio Code. This problem was introduced with a recent release, probably the previous release one month earlier, 1.92 (July …

Git operations in Visual Studio Code are no longer slow (August 2024) Read more »

The idea is to capture the Via macro execution in function dynamic_keymap_macro_send() (in file quantum/dynamic_keymap.c) and instead feed the information into an existing QMK macro engine that has cancelling macros and repeating macros as features. Introduction It is relatively straightforward …

The basis for cancelling Via macros in progress and for making Via macros repeat Read more »

The divergence of QMK software development can be confusing, but there is a systematic way to find which branch a particular feature or folder is in (instead of manually switch to each branch and manually look for the information). Example: …

Comprehensive search in QMK source in all branches, incl. forks and forks of forks Read more »

This is mostly to have a page where the Keychron keyboard model numbers can be very quickly found with a straight text search, no matter the notation, for example, “V6C3” vs. “V6-C3”. Encoding The model number’s second-last position (only K8 …

Product numbers for Keychron keyboards, e.g., V6C3 for V6 with tactile (brown) switches Read more »