docs: replace non-ASCII characters with ASCII equivalents to suppress Gitea warnings
Replace all ambiguous Unicode characters in wiki pages with ASCII equivalents (box-drawing -> +/-/|, arrows -> ^/v/</->, em-dashes -> --, special symbols -> ASCII approximations). Add a note to Chord-Unicode.md explaining that its Unicode content is intentional.
+3
-1
@@ -1,6 +1,8 @@
|
||||
# Chord Unicode
|
||||
|
||||
The Chord Unicode system lets you type special characters, symbols, and emoji by typing a short mnemonic sequence — no copy-paste or OS character picker needed.
|
||||
> **Note:** This page intentionally contains Unicode characters (symbols, emoji, and special signs). The "ambiguous Unicode characters" warning shown by Gitea is expected here -- the Unicode content is the subject of this page.
|
||||
|
||||
The Chord Unicode system lets you type special characters, symbols, and emoji by typing a short mnemonic sequence -- no copy-paste or OS character picker needed.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+6
-6
@@ -13,7 +13,7 @@ This page documents every custom keycode implemented in the firmware.
|
||||
| Action | Output |
|
||||
|--------|--------|
|
||||
| **Tap** (no modifier) | `Escape` |
|
||||
| **Hold** (no modifier, past tapping term) | `Left Ctrl` — acts as a regular Ctrl while held |
|
||||
| **Hold** (no modifier, past tapping term) | `Left Ctrl` -- acts as a regular Ctrl while held |
|
||||
| **`Shift` + Tap** | Toggle CapsLock |
|
||||
| **`Alt` + Tap** | Toggle [Caps Word](Features#caps-word) |
|
||||
| **`GUI` + Tap** | Toggle [Autocorrect](Features#autocorrect) on/off |
|
||||
@@ -26,7 +26,7 @@ This page documents every custom keycode implemented in the firmware.
|
||||
|
||||
## BSP_DEL
|
||||
|
||||
**Location:** Not currently assigned to any key by default — available for mapping via VIA.
|
||||
**Location:** Not currently assigned to any key by default -- available for mapping via VIA.
|
||||
|
||||
`BSP_DEL` is a dual-function Backspace/Delete key.
|
||||
|
||||
@@ -52,11 +52,11 @@ These keys are found on the **number row** when FN1, FN2, FN3, or FN4 is active.
|
||||
|
||||
**How locking works:**
|
||||
|
||||
- Press `LCK_FN1` while FN1 is active → FN1 stays on even after you release the FN1 key.
|
||||
- Press `LCK_FN1` again while FN1 is locked → unlocks FN1 and returns to BASE.
|
||||
- Press `LCK_FN1` while FN1 is active > FN1 stays on even after you release the FN1 key.
|
||||
- Press `LCK_FN1` again while FN1 is locked > unlocks FN1 and returns to BASE.
|
||||
- Only one layer can be locked at a time. Pressing a different `LCK_*` key unlocks the current one.
|
||||
- `LCK_BASE` clears all locks unconditionally.
|
||||
- The **`, + . + /` combo** also clears all locks and returns to BASE as an emergency fallback. See [Features — Combos](Features#combos).
|
||||
- The **`, + . + /` combo** also clears all locks and returns to BASE as an emergency fallback. See [Features -- Combos](Features#combos).
|
||||
|
||||
> **TT() vs LCK:** The `FN1` and `FN2` keys on the bottom row use QMK's `TT()` (tap-toggle). A **single tap + hold** activates momentarily; a **double-tap** locks the layer on. The `LCK_*` keys are an additional explicit locking mechanism that works from inside any layer.
|
||||
|
||||
@@ -75,7 +75,7 @@ These keys implement a smart Alt+Tab window switcher:
|
||||
|
||||
**Smart Alt-hold behaviour:** The first rotation press registers and holds `Left Alt`. Each subsequent rotation tap sends another `Tab` (or `Shift+Tab`). Alt is **automatically released** 750 ms after the last rotation event, committing the window selection.
|
||||
|
||||
This means you can spin the encoder multiple notches to skip several windows, and the moment you stop turning for ¾ of a second the switcher closes — no need to press anything to confirm.
|
||||
This means you can spin the encoder multiple notches to skip several windows, and the moment you stop turning for 3/4 of a second the switcher closes -- no need to press anything to confirm.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+10
-10
@@ -7,11 +7,11 @@
|
||||
**Activate:** `Alt` + `CAPS_MOD` (tap)
|
||||
**Deactivate:** Same combination, or press any non-word key, or complete a word (Space, Enter, etc.)
|
||||
|
||||
Caps Word is a "smart" uppercase mode. Once active, every letter key you press is automatically capitalised — but Caps Word turns itself **off** the moment you press a key that doesn't belong in a word, such as Space, Enter, Tab, or punctuation. This makes it ideal for typing `ALL_CAPS_CONSTANTS` or `MY_VARIABLE_NAME` without fumbling with Shift.
|
||||
Caps Word is a "smart" uppercase mode. Once active, every letter key you press is automatically capitalised -- but Caps Word turns itself **off** the moment you press a key that doesn't belong in a word, such as Space, Enter, Tab, or punctuation. This makes it ideal for typing `ALL_CAPS_CONSTANTS` or `MY_VARIABLE_NAME` without fumbling with Shift.
|
||||
|
||||
**Keys that keep Caps Word active** (do not terminate it):
|
||||
- Letters (`A`–`Z`)
|
||||
- Digits (`0`–`9`)
|
||||
- Letters (`A`-`Z`)
|
||||
- Digits (`0`-`9`)
|
||||
- `Backspace`
|
||||
- `-` and `_` (useful for `SCREAMING_SNAKE_CASE`)
|
||||
|
||||
@@ -29,7 +29,7 @@ Caps Word is a "smart" uppercase mode. Once active, every letter key you press i
|
||||
|
||||
QMK's built-in autocorrect silently fixes common typos as you type. It uses a dictionary of known mistyped sequences and replaces them on the fly as soon as the full misspelling is detected.
|
||||
|
||||
Autocorrect runs entirely on the keyboard — no software is needed on the host computer. It works in any application that accepts keyboard input.
|
||||
Autocorrect runs entirely on the keyboard -- no software is needed on the host computer. It works in any application that accepts keyboard input.
|
||||
|
||||
**[LED indicator](LED-Indicators#caps-key-led-55):** The CapsLock key LED lights **purple** while autocorrect is **disabled**. When autocorrect is on (default), the LED is off (or shows CapsLock/CapsWord state if those are active).
|
||||
|
||||
@@ -43,15 +43,15 @@ Combos trigger an action when multiple keys are pressed simultaneously (within a
|
||||
|
||||
| Keys | Action |
|
||||
|------|--------|
|
||||
| `,` + `.` + `/` | `TO(BASE)` — immediately switch to the BASE layer, clearing all layer state |
|
||||
| `,` + `.` + `/` | `TO(BASE)` -- immediately switch to the BASE layer, clearing all layer state |
|
||||
|
||||
This is an emergency escape: if you get stuck in an unexpected layer state and don't remember how to get back, just mash the three bottom-right keys of the main cluster at the same time.
|
||||
|
||||
> The combo is defined to trigger from any layer — the keycodes are resolved against BASE, so it fires regardless of what layer is currently active.
|
||||
> The combo is defined to trigger from any layer -- the keycodes are resolved against BASE, so it fires regardless of what layer is currently active.
|
||||
|
||||
---
|
||||
|
||||
## Tap Dance — Home/End
|
||||
## Tap Dance -- Home/End
|
||||
|
||||
**Location:** The Home/End key in the right navigation cluster (numpad row)
|
||||
|
||||
@@ -78,8 +78,8 @@ By default the keyboard operates in 6KRO (6-key rollover) mode for compatibility
|
||||
|
||||
The firmware is built with VIA support enabled. This means you can remap any key, adjust lighting, and manage macros **live** without reflashing the firmware, using either:
|
||||
|
||||
- **Keychron Launcher** — Keychron's own browser-based configuration tool
|
||||
- **VIA** — the universal QMK configurator at `usevia.app`
|
||||
- **Keychron Launcher** -- Keychron's own browser-based configuration tool
|
||||
- **VIA** -- the universal QMK configurator at `usevia.app`
|
||||
|
||||
Changes made through VIA/Launcher are saved to the keyboard's EEPROM and persist across power cycles. The firmware's 6 layers are all editable through VIA.
|
||||
|
||||
@@ -93,7 +93,7 @@ The keyboard maintains a bidirectional communication channel with a host-side ap
|
||||
- **Volume / brightness reporting:** The host can report system volume and screen brightness to the keyboard for future RGB indicator use.
|
||||
- **Active app detection:** Planned for a future update.
|
||||
|
||||
This feature is transparent during normal use — it only activates when the companion host application is running.
|
||||
This feature is transparent during normal use -- it only activates when the companion host application is running.
|
||||
|
||||
---
|
||||
|
||||
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
# Keychron Q5 Max — Custom Firmware Documentation
|
||||
# Keychron Q5 Max -- Custom Firmware Documentation
|
||||
|
||||
This wiki covers the custom QMK firmware built for the **Keychron Q5 Max ANSI Encoder** keyboard. It is intended as a complete reference for anyone who wants to use, understand, or extend the firmware without reading the source code.
|
||||
|
||||
@@ -27,7 +27,7 @@ The firmware is based on Keychron's `wireless_playground` QMK fork with extensiv
|
||||
| Feature | Detail |
|
||||
|---------|--------|
|
||||
| Keyboard | Keychron Q5 Max, ANSI layout, 101 keys |
|
||||
| Encoder | Rotary knob — top-right corner |
|
||||
| Encoder | Rotary knob -- top-right corner |
|
||||
| DIP switches | Two switches on the back next to USB-C: **SW1** selects 2.4G / Wired / Bluetooth; **SW2** selects Win (white LEDs) / Mac (normal RGB) |
|
||||
| Wireless | Bluetooth 5.1 (3 hosts) + 2.4 GHz USB dongle + wired USB-C |
|
||||
| MCU | STM32F401 |
|
||||
@@ -38,7 +38,7 @@ The firmware is based on Keychron's `wireless_playground` QMK fork with extensiv
|
||||
|-------|--------|-----------------|-------------|
|
||||
| BASE | 0 | Default | Normal typing |
|
||||
| FN1 | 1 | Hold / lock `FN1` key | Media, chording, navigation shortcuts |
|
||||
| FN2 | 2 | Hold / lock `FN2` key | Mouse keys, F13–F24 |
|
||||
| FN2 | 2 | Hold / lock `FN2` key | Mouse keys, F13-F24 |
|
||||
| FN3 | 3 | Accessed from FN1 | Media + extended navigation |
|
||||
| FN4 | 4 | Accessed from FN3/FN2 | Media + extended navigation |
|
||||
| KEEB_CTL | 5 | One-shot from FN1, or locked | Wireless, RGB, keyboard settings |
|
||||
@@ -62,5 +62,5 @@ The firmware is based on Keychron's `wireless_playground` QMK fork with extensiv
|
||||
|
||||
- **QMK fork:** Keychron `wireless_playground`
|
||||
- **Keymap:** `keyboards/keychron/q5_max/ansi_encoder/keymaps/via`
|
||||
- **VIA support:** Yes — keys can be remapped live in Keychron Launcher or VIA
|
||||
- **Unicode method:** Linux (`Ctrl+Shift+U` → hex → `Enter`)
|
||||
- **VIA support:** Yes -- keys can be remapped live in Keychron Launcher or VIA
|
||||
- **Unicode method:** Linux (`Ctrl+Shift+U` > hex > `Enter`)
|
||||
|
||||
+12
-12
@@ -4,7 +4,7 @@ The firmware uses two specific keys as dedicated status indicators, plus a full-
|
||||
|
||||
---
|
||||
|
||||
## Escape Key LED (LED 0) — Layer Indicator
|
||||
## Escape Key LED (LED 0) -- Layer Indicator
|
||||
|
||||
The Escape key LED shows which layer is currently active at a glance.
|
||||
|
||||
@@ -12,16 +12,16 @@ The Escape key LED shows which layer is currently active at a glance.
|
||||
|-------|---------------|------------|
|
||||
| BASE (0) | **Off** (dark) | Normal typing |
|
||||
| FN1 (1) | **Blue** | Media / chord / shortcuts |
|
||||
| FN2 (2) | **Green** | Mouse / F13–F24 |
|
||||
| FN2 (2) | **Green** | Mouse / F13-F24 |
|
||||
| FN3 (3) | **Orange** | Media + extended navigation |
|
||||
| FN4 (4) | **Purple** | Media + reset path |
|
||||
| KEEB_CTL (5) | **Red** | Keyboard settings |
|
||||
|
||||
> When BASE is active the Escape key LED is always off — it blends into the background effect and does not distract during normal typing.
|
||||
> When BASE is active the Escape key LED is always off -- it blends into the background effect and does not distract during normal typing.
|
||||
|
||||
---
|
||||
|
||||
## Caps Key LED (LED 55) — CapsLock / Caps Word / Autocorrect
|
||||
## Caps Key LED (LED 55) -- CapsLock / Caps Word / Autocorrect
|
||||
|
||||
The key physically labelled CapsLock (which is mapped to [CAPS_MOD](Custom-Keys#caps_mod)) doubles as a multi-state status indicator for the three Caps-related features. The states are checked in priority order:
|
||||
|
||||
@@ -34,22 +34,22 @@ The key physically labelled CapsLock (which is mapped to [CAPS_MOD](Custom-Keys#
|
||||
|
||||
**Reading the indicator:**
|
||||
|
||||
- **Green** → Caps Word is active. The next word will be typed in uppercase, then it will turn off automatically.
|
||||
- **Purple** → You have disabled Autocorrect (via `GUI`+`CAPS_MOD`). Re-enable it the same way to clear the purple light.
|
||||
- **White** → Standard OS CapsLock is on (toggled via `Shift`+`CAPS_MOD`).
|
||||
- **Off** → Everything is normal: Autocorrect is running, CapsLock is off, Caps Word is off.
|
||||
- **Green** > Caps Word is active. The next word will be typed in uppercase, then it will turn off automatically.
|
||||
- **Purple** > You have disabled Autocorrect (via `GUI`+`CAPS_MOD`). Re-enable it the same way to clear the purple light.
|
||||
- **White** > Standard OS CapsLock is on (toggled via `Shift`+`CAPS_MOD`).
|
||||
- **Off** > Everything is normal: Autocorrect is running, CapsLock is off, Caps Word is off.
|
||||
|
||||
---
|
||||
|
||||
## Win/Mac DIP Switch — Full-Keyboard White Overlay
|
||||
## Win/Mac DIP Switch -- Full-Keyboard White Overlay
|
||||
|
||||
This is **SW2**, the switch closest to the centre of the keyboard when viewed from the back (see [Wireless & Control — DIP Switches](Wireless-and-Control#dip-switches) for the physical layout of both switches).
|
||||
This is **SW2**, the switch closest to the centre of the keyboard when viewed from the back (see [Wireless & Control -- DIP Switches](Wireless-and-Control#dip-switches) for the physical layout of both switches).
|
||||
|
||||
It selects between **Mac mode** (right position, viewed from back) and **Win mode** (left position, viewed from back).
|
||||
|
||||
When **Win mode** is active:
|
||||
- **All LEDs** are overridden to **solid white**, regardless of which RGB effect or colour scheme is configured.
|
||||
- The underlying RGB effect continues to run in the background — it is not changed or reset.
|
||||
- The underlying RGB effect continues to run in the background -- it is not changed or reset.
|
||||
- Layer indicators (Escape key, CapsLock key) are still painted **on top of** the white background, so they remain visible.
|
||||
- Switching back to **Mac mode** instantly restores the configured RGB effect exactly as it was.
|
||||
|
||||
@@ -61,7 +61,7 @@ When **Win mode** is active:
|
||||
|
||||
Keychron's firmware displays wireless status using the dedicated indicator LEDs built into the keyboard's PCB (separate from the per-key RGB matrix). These are driven by Keychron's own indicator system and show:
|
||||
|
||||
- **BT host selection** (hosts 1–3 indicated by their respective indicator LEDs)
|
||||
- **BT host selection** (hosts 1-3 indicated by their respective indicator LEDs)
|
||||
- **2.4 GHz mode** indicator
|
||||
- **Battery level** animation when `BAT_LVL` is pressed
|
||||
- **Low battery** warning
|
||||
|
||||
+50
-50
@@ -1,6 +1,6 @@
|
||||
# Layers
|
||||
|
||||
The firmware has **6 layers**. Lower-numbered layers are always active as the base; higher-numbered layers take priority over them when activated. A key shown as `———` (transparent) falls through to the next active layer below.
|
||||
The firmware has **6 layers**. Lower-numbered layers are always active as the base; higher-numbered layers take priority over them when activated. A key shown as `---` (transparent) falls through to the next active layer below.
|
||||
|
||||
---
|
||||
|
||||
@@ -9,25 +9,25 @@ The firmware has **6 layers**. Lower-numbered layers are always active as the ba
|
||||
The Q5 Max is a full-size 100% keyboard with an integrated side numpad and a rotary encoder in the top-right corner.
|
||||
|
||||
```
|
||||
┌───────┐ ┌────┬────┬────┬────┐ ┌────┬────┬────┬────┐ ┌────┬────┬────┬────┐ ┌──────┬───────┬───────┐ ╔═════╗
|
||||
│ ESC │ │ F1 │ F2 │ F3 │ F4 │ │ F5 │ F6 │ F7 │ F8 │ │ F9 │F10 │F11 │F12 │ │ Del │ PrtSc │ Calc │ ║ Enc ║
|
||||
└───────┘ └────┴────┴────┴────┘ └────┴────┴────┴────┘ └────┴────┴────┴────┘ └──────┴───────┴───────┘ ╚═════╝
|
||||
┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌─────┐ ┌─────┬─────┬─────┬─────┐
|
||||
│ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bspc │ │PgUp │ │ Num │ / │ * │ - │
|
||||
├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬───┤ ├─────┤ ├─────┼─────┼─────┼─────┤
|
||||
│ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ │PgDn │ │ 7 │ 8 │ 9 │ │
|
||||
├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴────┤ ├─────┤ ├─────┼─────┼─────┤ + │
|
||||
│ CAPS │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ │ H/E │ │ 4 │ 5 │ 6 │ │
|
||||
├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴──┬───┤ ├─────┤ ├─────┼─────┼─────┼─────┤
|
||||
│ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / Shift│ ↑ │ │ │ │ 1 │ 2 │ 3 │ │
|
||||
├────┬───┴┬──┴──┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬────┬┴──┬┴──┐ └─────┘ ├─────┴─────┼─────┤Ent │
|
||||
│Ctrl│GUI │ Alt │ Space │FN2│FN1│Ctrl│ ← │ ↓ │ → │ │ 0 │ . │ │
|
||||
└────┴────┴─────┴─────────────────────────┴───┴───┴────┴───┴───┴───┘ └───────────┴─────┴─────┘
|
||||
+-------+ +----+----+----+----+ +----+----+----+----+ +----+----+----+----+ +------+-------+-------+ +=====+
|
||||
| ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 |F10 |F11 |F12 | | Del | PrtSc | Calc | | Enc |
|
||||
+-------+ +----+----+----+----+ +----+----+----+----+ +----+----+----+----+ +------+-------+-------+ +=====+
|
||||
+---+---+---+---+---+---+---+---+---+---+---+---+---+-------+ +-----+ +-----+-----+-----+-----+
|
||||
| ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bspc | |PgUp | | Num | / | * | - |
|
||||
+---+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+---+ +-----+ +-----+-----+-----+-----+
|
||||
| Tab | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | |PgDn | | 7 | 8 | 9 | |
|
||||
+-----++--++--++--++--++--++--++--++--++--++--++--++--+----+ +-----+ +-----+-----+-----+ + |
|
||||
| CAPS | A | S | D | F | G | H | J | K | L | ; | ' | Enter | | H/E | | 4 | 5 | 6 | |
|
||||
+------+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+---+--+---+ +-----+ +-----+-----+-----+-----+
|
||||
| Shift | Z | X | C | V | B | N | M | , | . | / Shift| ^ | | | | 1 | 2 | 3 | |
|
||||
+----+---++--+--+-+---+---+---+---+---+--++--++--+----++--++--+ +-----+ +-----+-----+-----+Ent |
|
||||
|Ctrl|GUI | Alt | Space |FN2|FN1|Ctrl| < | v | > | | 0 | . | |
|
||||
+----+----+-----+-------------------------+---+---+----+---+---+---+ +-----------+-----+-----+
|
||||
```
|
||||
|
||||
> **Note:** `CAPS` = [CAPS_MOD](Custom-Keys#caps_mod) — a multi-function key, not a plain CapsLock.
|
||||
> **Note:** `CAPS` = [CAPS_MOD](Custom-Keys#caps_mod) -- a multi-function key, not a plain CapsLock.
|
||||
> `H/E` = [Home/End tap-dance](Features#tap-dance-homeend).
|
||||
> `FN1` / `FN2` are tap-toggle keys — see [Layer Navigation](#layer-navigation) below.
|
||||
> `FN1` / `FN2` are tap-toggle keys -- see [Layer Navigation](#layer-navigation) below.
|
||||
|
||||
---
|
||||
|
||||
@@ -41,20 +41,20 @@ The Q5 Max is a full-size 100% keyboard with an integrated side numpad and a rot
|
||||
| **Double-tap** `FN1` | FN1 locked on (toggle) |
|
||||
| **Hold** `FN2` | FN2 active while held; returns to BASE on release |
|
||||
| **Double-tap** `FN2` | FN2 locked on (toggle) |
|
||||
| **`LCK_FN1`–`LCK_CTL`** keys | Hard-lock a specific layer; press again to unlock |
|
||||
| **`LCK_FN1`-`LCK_CTL`** keys | Hard-lock a specific layer; press again to unlock |
|
||||
| **`LCK_BASE`** | Clear all locks and return to BASE |
|
||||
| **Combo `,` + `.` + `/`** | Emergency return to BASE from any state |
|
||||
|
||||
> `FN1` and `FN2` use QMK's `TT()` (tap-toggle) behaviour with the default tapping term. See [Custom Keys — Layer Locks](Custom-Keys#layer-locks) for the `LCK_*` keys.
|
||||
> `FN1` and `FN2` use QMK's `TT()` (tap-toggle) behaviour with the default tapping term. See [Custom Keys -- Layer Locks](Custom-Keys#layer-locks) for the `LCK_*` keys.
|
||||
|
||||
---
|
||||
|
||||
## BASE Layer (0)
|
||||
|
||||
Normal typing layer. Nothing unusual except:
|
||||
- **CAPS key** → [CAPS_MOD](Custom-Keys#caps_mod) (multi-function)
|
||||
- **Right-side numpad Home/End key** → [Tap-Dance Home/End](Features#tap-dance-homeend)
|
||||
- **`FN2`/`FN1`** bottom-right → tap-toggle layer access
|
||||
- **CAPS key** > [CAPS_MOD](Custom-Keys#caps_mod) (multi-function)
|
||||
- **Right-side numpad Home/End key** > [Tap-Dance Home/End](Features#tap-dance-homeend)
|
||||
- **`FN2`/`FN1`** bottom-right > tap-toggle layer access
|
||||
|
||||
```
|
||||
ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Del PrtSc Calc Find [Vol]
|
||||
@@ -62,8 +62,8 @@ Normal typing layer. Nothing unusual except:
|
||||
` 1 2 3 4 5 6 7 8 9 0 - = Bspc PgUp Num / * -
|
||||
Tab Q W E R T Y U I O P [ ] \ PgDn 7 8 9
|
||||
CAPS* A S D F G H J K L ; ' Ent H/E* 4 5 6 +
|
||||
Shift Z X C V B N M , . / Shift ↑ 1 2 3
|
||||
Ctrl GUI Alt Space FN2 FN1 Ctrl ← ↓ → 0 . Ent
|
||||
Shift Z X C V B N M , . / Shift ^ 1 2 3
|
||||
Ctrl GUI Alt Space FN2 FN1 Ctrl < v > 0 . Ent
|
||||
```
|
||||
|
||||
---
|
||||
@@ -77,7 +77,7 @@ Activated by holding or double-tapping `FN1`.
|
||||
| Key position | BASE value | FN1 value | Notes |
|
||||
|---|---|---|---|
|
||||
| ESC | Esc | Sleep | Put computer to sleep |
|
||||
| F1–F12 | F1–F12 | Brid/Briu/MCtrl/LnPad/RGB±/Media | macOS media & brightness |
|
||||
| F1-F12 | F1-F12 | Brid/Briu/MCtrl/LnPad/RGB+/-/Media | macOS media & brightness |
|
||||
| `1` | 1 | `LCK_FN1` | Lock/unlock FN1 |
|
||||
| `2` | 2 | `LCK_FN2` | Lock/unlock FN2 |
|
||||
| `3` | 3 | `LCK_FN3` | Lock/unlock FN3 |
|
||||
@@ -88,10 +88,10 @@ Activated by holding or double-tapping `FN1`.
|
||||
| Right Ctrl | Ctrl | `OSL(KEEB_CTL)` | One-shot: next key from KEEB_CTL |
|
||||
| Right FN1 | TT(FN1) | `TG(FN1)` | Toggle FN1 on/off |
|
||||
| Right FN2 | TT(FN2) | `TT(FN3)` | Tap-toggle FN3 |
|
||||
| `←` | Left | Home | |
|
||||
| `→` | Right | End | |
|
||||
| `<` | Left | Home | |
|
||||
| `>` | Right | End | |
|
||||
| Numpad H/E | Home/End | End | Plain End key |
|
||||
| Encoder | Vol ± | Rewind / Fast-forward | |
|
||||
| Encoder | Vol +/- | Rewind / Fast-forward | |
|
||||
|
||||
```
|
||||
Sleep Brid Briu MCtr LnPd VAD VAI Prv Ply Nxt Mute Vold Volu Del PrtSc Calc Find [FF]
|
||||
@@ -99,10 +99,10 @@ Sleep Brid Briu MCtr LnPd VAD VAI Prv Ply Nxt Mute Vold Volu Del PrtSc
|
||||
` L1 L2 L3 L4 L5 6 7 8 9 L0 - = Bspc PgUp Num / * -
|
||||
Tab Q W E R T Y U I O P [ ] \ PgDn 7 8 9
|
||||
CAPS* A S D F G H J K L ; ' Ent End 4 5 6 +
|
||||
Shift Z X C V B N M , . / Shift ↑ 1 2 3
|
||||
Ctrl GUI CHORD Space TT3 TG1 CTL* Home ↓ End 0 . Ent
|
||||
Shift Z X C V B N M , . / Shift ^ 1 2 3
|
||||
Ctrl GUI CHORD Space TT3 TG1 CTL* Home v End 0 . Ent
|
||||
```
|
||||
> `L1`–`L5` = layer lock keys. `L0` = LCK_BASE. `CHORD` = Chord Unicode key. `CTL*` = one-shot KEEB_CTL.
|
||||
> `L1`-`L5` = layer lock keys. `L0` = LCK_BASE. `CHORD` = Chord Unicode key. `CTL*` = one-shot KEEB_CTL.
|
||||
|
||||
---
|
||||
|
||||
@@ -114,12 +114,12 @@ Activated by holding or double-tapping `FN2`. Turns the keyboard into a **mouse
|
||||
|
||||
| Key position | FN2 value | Notes |
|
||||
|---|---|---|
|
||||
| F1–F12 | Power / F13–F24 | ESC = Power off; F-row = F13–F24 |
|
||||
| `1`–`5`, `0` | Layer locks | Same as FN1 |
|
||||
| F1-F12 | Power / F13-F24 | ESC = Power off; F-row = F13-F24 |
|
||||
| `1`-`5`, `0` | Layer locks | Same as FN1 |
|
||||
| PgUp | Mouse Wheel Up | |
|
||||
| PgDn | Mouse Wheel Down | |
|
||||
| Numpad H/E | Mouse Button 3 (middle click) | |
|
||||
| Arrow keys | Mouse movement (↑↓←→) | |
|
||||
| Arrow keys | Mouse movement (^v<>) | |
|
||||
| Right FN2 | `TG(FN2)` | Toggle FN2 |
|
||||
| Right FN1 | `TT(FN4)` | Tap-toggle FN4 |
|
||||
| Numpad `0` | Mouse Button 1 (left click) | |
|
||||
@@ -145,19 +145,19 @@ Ctrl GUI Alt Space TG2 TT4 Ctrl MsLft MsDn MsRgt MBtn1
|
||||
Accessed from FN1 via `TT(FN3)` (right FN2 key while FN1 is active). Media row and navigation, same lock keys, standard arrow/numpad behaviour.
|
||||
|
||||
Identical to BASE except:
|
||||
- **F-row** → brightness, media controls (same mapping as FN1 F-row)
|
||||
- **Number row** → layer locks (same as FN1/FN2)
|
||||
- **Right FN2** → `TG(FN3)` (toggle FN3)
|
||||
- **Right FN1** → `TT(FN4)` (tap-toggle FN4)
|
||||
- **Encoder** → Rewind / Fast-forward
|
||||
- **F-row** > brightness, media controls (same mapping as FN1 F-row)
|
||||
- **Number row** > layer locks (same as FN1/FN2)
|
||||
- **Right FN2** > `TG(FN3)` (toggle FN3)
|
||||
- **Right FN1** > `TT(FN4)` (tap-toggle FN4)
|
||||
- **Encoder** > Rewind / Fast-forward
|
||||
|
||||
---
|
||||
|
||||
## FN4 Layer (4)
|
||||
|
||||
Accessed from FN3 or FN2 via `TT(FN4)`. Identical to FN3 except:
|
||||
- **Right FN2** → `TO(BASE)` — go directly back to BASE (clears all layers)
|
||||
- **Right FN1** → `TG(FN4)` (toggle FN4)
|
||||
- **Right FN2** > `TO(BASE)` -- go directly back to BASE (clears all layers)
|
||||
- **Right FN1** > `TG(FN4)` (toggle FN4)
|
||||
|
||||
> Use FN4 as a "reset to base" escape hatch when you've navigated deep into layers.
|
||||
|
||||
@@ -166,19 +166,19 @@ Accessed from FN3 or FN2 via `TT(FN4)`. Identical to FN3 except:
|
||||
## KEEB_CTL Layer (5)
|
||||
|
||||
The keyboard control layer. Reached via:
|
||||
- `OSL(KEEB_CTL)` on Right Ctrl while FN1 is held — one-shot (affects next key only)
|
||||
- `LCK_CTL` (`FN1` + `5`) — locks KEEB_CTL on
|
||||
- `OSL(KEEB_CTL)` on Right Ctrl while FN1 is held -- one-shot (affects next key only)
|
||||
- `LCK_CTL` (`FN1` + `5`) -- locks KEEB_CTL on
|
||||
|
||||
See [Wireless & Control](Wireless-and-Control) for full details.
|
||||
|
||||
```
|
||||
——— Brid Briu Task File VAD VAI Prv Ply Nxt Mute Vold Volu ——— ——— ——— ——— [RGB±]
|
||||
--- Brid Briu Task File VAD VAI Prv Ply Nxt Mute Vold Volu --- --- --- --- [RGB+/-]
|
||||
|
||||
——— BT1 BT2 BT3 2.4G ——— ——— ——— ——— ——— L0 ——— ——— ——— ——— ——— ——— ———
|
||||
RGBt RGBm VAI+ HUI+ SAI+ SPI+ ——— ——— ——— ——— ——— ——— ——— ——— ——— ——— ——— ———
|
||||
——— RGBr VAD- HUD- SAD- SPD- ——— ——— ——— ——— ——— ——— ——— End ——— ——— ———
|
||||
——— ——— ——— ——— ——— BAT NKro ——— ——— ——— ——— ——— ——— ——— ———
|
||||
——— ——— ——— ——— ——— ——— ——— ——— ↓ ——— EECLR ——— ———
|
||||
--- BT1 BT2 BT3 2.4G --- --- --- --- --- L0 --- --- --- --- --- --- ---
|
||||
RGBt RGBm VAI+ HUI+ SAI+ SPI+ --- --- --- --- --- --- --- --- --- --- --- ---
|
||||
--- RGBr VAD- HUD- SAD- SPD- --- --- --- --- --- --- --- End --- --- ---
|
||||
--- --- --- --- --- BAT NKro --- --- --- --- --- --- --- ---
|
||||
--- --- --- --- --- --- --- --- v --- EECLR --- ---
|
||||
```
|
||||
|
||||
> `BT1`–`BT3` = Bluetooth host 1–3. `2.4G` = 2.4 GHz wireless dongle. `BAT` = show battery level. `NKro` = toggle N-key rollover. `EECLR` = clear EEPROM. `RGBt` = RGB toggle. See [Wireless & Control](Wireless-and-Control) and [RGB Controls](RGB-Controls).
|
||||
> `BT1`-`BT3` = Bluetooth host 1-3. `2.4G` = 2.4 GHz wireless dongle. `BAT` = show battery level. `NKro` = toggle N-key rollover. `EECLR` = clear EEPROM. `RGBt` = RGB toggle. See [Wireless & Control](Wireless-and-Control) and [RGB Controls](RGB-Controls).
|
||||
|
||||
+7
-7
@@ -7,8 +7,8 @@ The Q5 Max has a full per-key RGB matrix with Keychron's extended effect system
|
||||
## Accessing RGB Controls
|
||||
|
||||
RGB keys are on the **KEEB_CTL layer**. Get there with:
|
||||
- **One-shot:** Hold `FN1`, tap Right Ctrl → press one RGB key
|
||||
- **Locked:** `FN1`+`5` (LCK_CTL) → use RGB keys freely → `FN1`+`0` or `LCK_BASE` to exit
|
||||
- **One-shot:** Hold `FN1`, tap Right Ctrl > press one RGB key
|
||||
- **Locked:** `FN1`+`5` (LCK_CTL) > use RGB keys freely > `FN1`+`0` or `LCK_BASE` to exit
|
||||
|
||||
---
|
||||
|
||||
@@ -36,7 +36,7 @@ RGB keys are on the **KEEB_CTL layer**. Get there with:
|
||||
| `RGB_VAD` | `S` | Brightness down |
|
||||
| Encoder CW | (KEEB_CTL layer) | Brightness up |
|
||||
| Encoder CCW | (KEEB_CTL layer) | Brightness down |
|
||||
| `RGB_VAI` / `RGB_VAD` | `F5` / `F6` in F-row | Brightness ± |
|
||||
| `RGB_VAI` / `RGB_VAD` | `F5` / `F6` in F-row | Brightness +/- |
|
||||
|
||||
### Hue (Colour)
|
||||
|
||||
@@ -64,8 +64,8 @@ RGB keys are on the **KEEB_CTL layer**. Get there with:
|
||||
## Summary Layout (KEEB_CTL layer, main cluster)
|
||||
|
||||
```
|
||||
RGBt RGBm VAI+ HUI+ SAI+ SPI+ ··· ··· ··· ··· ··· ··· ···
|
||||
RGBr VAD- HUD- SAD- SPD- ··· ··· ··· ··· ··· ···
|
||||
RGBt RGBm VAI+ HUI+ SAI+ SPI+ ... ... ... ... ... ... ...
|
||||
RGBr VAD- HUD- SAD- SPD- ... ... ... ... ... ...
|
||||
```
|
||||
|
||||
> `RGBt` = toggle, `RGBm` = next mode, `RGBr` = previous mode, `VAI/VAD` = brightness, `HUI/HUD` = hue, `SAI/SAD` = saturation, `SPI/SPD` = speed.
|
||||
@@ -83,7 +83,7 @@ Settings configured in Launcher are saved to EEPROM and survive:
|
||||
- Power cycles
|
||||
- Bluetooth/2.4 GHz transport changes (wireless reconnect)
|
||||
|
||||
> If RGB reverts to the default heatmap after a transport change or power cycle, it indicates an EEPROM issue. The custom firmware specifically fixes this — see the [firmware changelog](https://git.rootiest.dev/rootiest/qmk_firmware/pulls) for details.
|
||||
> If RGB reverts to the default heatmap after a transport change or power cycle, it indicates an EEPROM issue. The custom firmware specifically fixes this -- see the [firmware changelog](https://git.rootiest.dev/rootiest/qmk_firmware/pulls) for details.
|
||||
|
||||
---
|
||||
|
||||
@@ -95,7 +95,7 @@ When EEPROM is cleared (`QK_CLEAR_EEPROM`) the per-key colours reset to the firm
|
||||
|-----------|---------------|
|
||||
| Escape | Red |
|
||||
| CapsLock | Red |
|
||||
| Alpha keys (Q–P, A–L, Z–M, Space) | Blue |
|
||||
| Alpha keys (Q-P, A-L, Z-M, Space) | Blue |
|
||||
| All other keys (modifiers, F-row, numpad, etc.) | Yellow |
|
||||
|
||||
These defaults are set by the `default_per_key_led[]` array in the board source code and can be overridden at any time through Keychron Launcher.
|
||||
|
||||
+21
-21
@@ -4,7 +4,7 @@
|
||||
|
||||
## Connection Modes
|
||||
|
||||
The Q5 Max supports three wireless/wired connection modes. You switch between them using the keys on the **KEEB_CTL layer** (hold `FN1`, tap Right Ctrl, then press the target key — or lock KEEB_CTL with `FN1`+`5`).
|
||||
The Q5 Max supports three wireless/wired connection modes. You switch between them using the keys on the **KEEB_CTL layer** (hold `FN1`, tap Right Ctrl, then press the target key -- or lock KEEB_CTL with `FN1`+`5`).
|
||||
|
||||
| Key | Mode | Notes |
|
||||
|-----|------|-------|
|
||||
@@ -39,11 +39,11 @@ The keyboard also has a **low battery warning**: when the battery drops below a
|
||||
|
||||
---
|
||||
|
||||
## KEEB_CTL Layer — Full Reference
|
||||
## KEEB_CTL Layer -- Full Reference
|
||||
|
||||
The KEEB_CTL layer is the keyboard's settings panel. Reach it by:
|
||||
|
||||
- **One-shot:** While FN1 is held, tap Right Ctrl (`OSL(KEEB_CTL)`) — the next keypress comes from KEEB_CTL, then the keyboard returns to normal.
|
||||
- **One-shot:** While FN1 is held, tap Right Ctrl (`OSL(KEEB_CTL)`) -- the next keypress comes from KEEB_CTL, then the keyboard returns to normal.
|
||||
- **Locked:** Press `LCK_CTL` (`FN1`+`5`) to stay on KEEB_CTL.
|
||||
|
||||
### Wireless Keys (number row)
|
||||
@@ -74,21 +74,21 @@ See [RGB Controls](RGB-Controls) for a full breakdown of the RGB keys.
|
||||
|
||||
| Key | Action |
|
||||
|-----|--------|
|
||||
| F1 | `Brid` — Screen brightness down (macOS) |
|
||||
| F2 | `Briu` — Screen brightness up (macOS) |
|
||||
| F3 | `Task` — Task manager / Mission Control |
|
||||
| F4 | `File` — File manager |
|
||||
| F5–F6 | RGB brightness down / up |
|
||||
| F7–F9 | Previous / Play-Pause / Next track |
|
||||
| F1 | `Brid` -- Screen brightness down (macOS) |
|
||||
| F2 | `Briu` -- Screen brightness up (macOS) |
|
||||
| F3 | `Task` -- Task manager / Mission Control |
|
||||
| F4 | `File` -- File manager |
|
||||
| F5-F6 | RGB brightness down / up |
|
||||
| F7-F9 | Previous / Play-Pause / Next track |
|
||||
| F10 | Mute |
|
||||
| F11–F12 | Volume down / up |
|
||||
| F11-F12 | Volume down / up |
|
||||
| Encoder | RGB brightness down / up |
|
||||
|
||||
---
|
||||
|
||||
## EEPROM Reset
|
||||
|
||||
> ⚠️ **Warning:** This permanently erases all EEPROM data: VIA keymaps, RGB settings, wireless pairings (some may survive — depends on Keychron's implementation), and keyboard configuration. Use only as a last resort.
|
||||
> [!] **Warning:** This permanently erases all EEPROM data: VIA keymaps, RGB settings, wireless pairings (some may survive -- depends on Keychron's implementation), and keyboard configuration. Use only as a last resort.
|
||||
|
||||
`QK_CLEAR_EEPROM` is located at the **numpad `0`** position on KEEB_CTL. After pressing it, the keyboard will restart with factory-default settings. You will need to re-pair Bluetooth devices and reconfigure your layout in VIA/Launcher.
|
||||
|
||||
@@ -99,23 +99,23 @@ See [RGB Controls](RGB-Controls) for a full breakdown of the RGB keys.
|
||||
Both DIP switches are located on the **back of the keyboard**, next to the USB-C connector. When viewing them from the back, the switches read left-to-right as described below. Note that "left from the back" is the right side in normal keyboard orientation.
|
||||
|
||||
```
|
||||
Back of keyboard — USB-C connector side
|
||||
Back of keyboard -- USB-C connector side
|
||||
|
||||
┌──────────────────────────────────────┐
|
||||
│ ··· │ ← USB-C
|
||||
│ [SW2] [SW1] │
|
||||
└──────────────────────────────────────┘
|
||||
+--------------------------------------+
|
||||
| ... | < USB-C
|
||||
| [SW2] [SW1] |
|
||||
+--------------------------------------+
|
||||
|
||||
(viewed from the back)
|
||||
SW1 = rightmost from back = left side of keyboard in normal use
|
||||
SW2 = next to SW1 = slightly right of SW1 from the back
|
||||
```
|
||||
|
||||
### SW1 — Wireless Mode Switch (rightmost from back)
|
||||
### SW1 -- Wireless Mode Switch (rightmost from back)
|
||||
|
||||
Selects the active connection mode. This is a three-position switch.
|
||||
|
||||
| Position (left→right, viewed from back) | Mode | Notes |
|
||||
| Position (left>right, viewed from back) | Mode | Notes |
|
||||
|------------------------------------------|------|-------|
|
||||
| Left | **2.4 GHz** | Connects via the USB wireless dongle |
|
||||
| Centre | **Wired** | USB-C cable connection |
|
||||
@@ -123,13 +123,13 @@ Selects the active connection mode. This is a three-position switch.
|
||||
|
||||
> When set to Bluetooth, use the `BT_HST1`/`BT_HST2`/`BT_HST3` keys on the KEEB_CTL layer to choose which paired device to connect to.
|
||||
|
||||
### SW2 — Win/Mac Backlight Switch (next to SW1)
|
||||
### SW2 -- Win/Mac Backlight Switch (next to SW1)
|
||||
|
||||
Selects the RGB backlight preset. This is a two-position switch.
|
||||
|
||||
| Position (left→right, viewed from back) | Mode | Effect |
|
||||
| Position (left>right, viewed from back) | Mode | Effect |
|
||||
|------------------------------------------|------|--------|
|
||||
| Left | **Win** | All LEDs overridden to solid white |
|
||||
| Right | **Mac** | Normal RGB effect as configured in Launcher |
|
||||
|
||||
> The Win/Mac switch does **not** change the OS key layout or key behaviour — it is purely a backlight visual preset. See [LED Indicators — Win/Mac DIP Switch](LED-Indicators#winmac-dip-switch--full-keyboard-white-overlay) for full details on how the white overlay works.
|
||||
> The Win/Mac switch does **not** change the OS key layout or key behaviour -- it is purely a backlight visual preset. See [LED Indicators -- Win/Mac DIP Switch](LED-Indicators#winmac-dip-switch--full-keyboard-white-overlay) for full details on how the white overlay works.
|
||||
|
||||
Reference in New Issue
Block a user