May 15, 2026

Keychron Q8 -- Layers

As shipped, the keyboard has 5 layers, only 3 of which are active. I read that up to 16 layers can be set up, but this involves C programming and flashing new firmware (QMK).

I use the keyboard on my Linux system with "the switch" on the back of the keyboard set to Mac mode. This means that I am working on Layer 0 without explicitly selecting another layer.

As shipped, layers 1 and 3 are set up for Windows and are not accessible to me.

I get to layer 2 by using the fn1 button (which is configured as MO(2) as shipped). Layer 2 has what I consider "silly stuff", like the keyboard LED configuration.

I get to layer 4 by using the fn2 button (which is configured as MO(4) as shipped). This is largely empty, but has the Fn keys, which I do use.

If you use VIA, you will see at the upper left a way to select which layer you are fooling with.

VIA also has a Layers tab, which offers MO(x), TG(x), TT(x) and so on for x=0 to 9. This implies 10 layers, but with only 0 to 4 available at the upper left, it would seem that you could go to layer 9, but there is no way to configure that layer. What I read is that you will need to mess with QMK to get beyond layer 4.

TG says to "toggle" into the layer, i.e. shift to that layer and stay there until you use the same key to toggle out of it.

Here are the 6 layer switching options:
MO(n) - momentary switch to layer while pressed
TG(n) - toggle layer on/off
TT(n) - tap toggle -- acts like MO until you tap 5 times
OSL(n) - one shot switch
TO(n) - turn on layer and turn off all others
DF(n) - make layer the default

An experiment

I make the "windows button" (left CMD) a MO(1) key. I also make the "M" key on layer 1 to be "1". It works! I am not limited to just the 3 layers, but by defining shift keys using MO() I can get to layers 1 and 3 that the default configuration calls "windows" layers.
Have any comments? Questions? Drop me a line!

Adventures in Computing / tom@mmto.org