diff --git a/Chord-Unicode.md b/Chord-Unicode.md index 5b2b740..fd3ece3 100644 --- a/Chord-Unicode.md +++ b/Chord-Unicode.md @@ -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. --- diff --git a/Custom-Keys.md b/Custom-Keys.md index 7d8eb88..badf231 100644 --- a/Custom-Keys.md +++ b/Custom-Keys.md @@ -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. --- diff --git a/Features.md b/Features.md index 0484e5f..56c03f4 100644 --- a/Features.md +++ b/Features.md @@ -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. --- diff --git a/Home.md b/Home.md index c2f19d8..7fce5ef 100644 --- a/Home.md +++ b/Home.md @@ -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`) diff --git a/LED-Indicators.md b/LED-Indicators.md index 67c51a2..74d6a8a 100644 --- a/LED-Indicators.md +++ b/LED-Indicators.md @@ -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 diff --git a/Layers.md b/Layers.md index c421ed6..a7b5797 100644 --- a/Layers.md +++ b/Layers.md @@ -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). diff --git a/RGB-Controls.md b/RGB-Controls.md index e9aa8b1..9ef2a36 100644 --- a/RGB-Controls.md +++ b/RGB-Controls.md @@ -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. diff --git a/Wireless-and-Control.md b/Wireless-and-Control.md index 22d6b1a..5c1d620 100644 --- a/Wireless-and-Control.md +++ b/Wireless-and-Control.md @@ -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.