The short version: … at scale: Multiple types (QMK, ZMK, ), different forks, different branches, different versions Convenient development … And yes, it takes up more disk space and initial bandwidth cost, but XXXX. Original vs. own custom changes Original …

Fully automated setup of multiple QMK projects from scratch, incl. forks and Vial Read more »

The short version: ZMK must be set up for v0.3, not the latest version (as of 2026-06-22), otherwise the result is a compile error. The command line for compiling is: Introduction Keychron released the source code for V6 Ultra 8K on 2026-05-23 …

Compiling and flashing firmware for the Keychron V6 Ultra 8K, incl. setting up a local ZMK environment from scratch Read more »

The short version: After setting up ZMK, for example, with the completely linear pastable command lines provided below, use “west build -b planck//zmk” instead of “west build -b planck_rev6” to build the sample keyboard firmware (to test that building actually …

Hello, World! for ZMK, the latest version Read more »

The short version: It is possible to change the number of Via and Vial macros and change the space for them to be essentially unlimited. Unfortunately, there are many different ways of achieving it, depending on the particular keyboard, the …

Overcoming limitations for macros on Keychron keyboards Read more »

For instance, GitHub pages may be in dark mode when logged out and not when logged in. Sample GitHub page Change to dark mode When logged in, click on the profile picture in the upper right → Settings → Appearance …

Change to ‘dark mode’ on GitHub 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 »