Custom QMK firmware keymaps for my mechanical keyboard
This repository contains my personal QMK keymaps, optimized for better typing, macros, and workflow automation. The keymaps are stored separately from the main qmk_firmware directory for better organization and version control.
🟢 Keychron Q5 Max – My personal keymaps are designed for this keyboard.
🔜 More keyboards may be added in the future.
✔️ Custom Layers & Macros – Personalized key layouts for efficiency
✔️ QMK CLI & VIA Compatible – Easy flashing and real-time modifications
✔️ Symlinked Setup – Keeps qmk_firmware clean
✔️ Multi-Keyboard Support (Future) – More keymaps may be added later
qmk-keymaps/
├── keychron_q5_max/
│ ├── my_keymap/
│ │ ├── keymap.c
│ │ ├── rules.mk
│ │ ├── config.h
│ │ ├── readme.md
Each keyboard has its own keymap folder containing:
keymap.c→ Defines the layout and macrosrules.mk→ Configuration settingsconfig.h→ Additional firmware settingsreadme.md→ Keyboard-specific notes
ln -s ~/qmk-keymaps/keychron_q5_max/my_keymap ~/qmk_firmware/keyboards/keychron/q5_max/keymaps/my_keymapThis keeps your keymaps organized without modifying QMK firmware directly.
qmk compile -kb keychron/q5_max -km my_keymapqmk flash -kb keychron/q5_max -km my_keymapMake sure your keyboard is in bootloader mode before flashing.
If you want real-time keymap customization, generate a .json file:
qmk json-keymap keychron_q5_max/my_keymap > my_keymap.jsonUpload this file to VIA or QMK Configurator.
This project is open-source under the MIT License. Feel free to modify and use it!
- If
qmk compilefails, ensure your firmware is up to date:qmk setup qmk doctor
- If you are flashing a different microcontroller, adjust
rules.mkaccordingly.