QMK Firmware
I use QMK on my keyboard (KBD75 revision 2). I’ve done some basic customizations to keymap. I use Colemak-DH layout (check image below), but on system level (because I use also Russian ЙЦУКЕН layout, so it’s depends on qwerty layout).
Colemak-DH ANSI
Key codes: qmk_firmware/docs/keycodes.md
Flash firmware steps:
-
Go to directory with QMK firmware
cd qmk_firmware -
Prepare environment, I have configured NixOS module: qmk.nix.
-
Run qmk setup, in most situations you will answer
yto all questionsqmk setup -
Test Your Build Environment (firmware can be compiled), kbdfans/kbd75/rev2 is my keyboard.
qmk compile -kb kbdfans/kbd75/rev2 -km default -
Configure keyboard
qmk config user.keyboard=kbdfans/kbd75/rev2 -
Create keymap and set it as default
qmk new-keymap -km inomoz
qmk config user.keymap=inomozNow you have own keymap, you can edit it in keyboards/kbdfans/kbd75/keymaps/inomoz/keymap.c. My layout is here.
-
Compile and flash Firmware
qmk compile -kb kbdfans/kbd75/rev2 -km inomozit’s equivalent toqmk compileif keyboard and keymap are set in config. -
Flash QMK Firmware
qmk flash -kb kbdfans/kbd75/rev2 -km inomozit’s equivalent to ==qmk flash== if keyboard and keymap are set in config.
When you flash QMK Keyboard, put it into DFU (Bootloader) Mode, In my case I need to hold ==S-ESC== keybinding and plug USB cable.
My keymap variant
I have generated PDF file with mine keymap, here is QMK keymap file. To generate it followed these steps:
- Go to directory with QMK firmware
cd <path_to_dir>/QMK - Generate keymap.json file
qmk c2json --no-cpp keymap.c >keymap.json # without --no-cpp it might not work- Go to QMK Configurator, upload here
keymap.jsonand print it to PDF ( icon and icon).
My layers and modifiers
- not actual
Hold SYM to activate the symbols layer.
Hold NUM to activate the navigation layer
The home row modifiers are oneshot so that it’s possible to modify the keys on the base layer, where there are no dedicated modifiers.
Sometimes you need to use qwerty layout (games for example), I created special layer in QMK for that, which activate qwerty layout over the Colemak-DH layout when I press special QWE default layer switch button (toggle logic).
External links
- qmk_firmware/users/callum
- QMK Firmware - An open source firmware for AVR and ARM based keyboards
- QMK Configurator
- QMK JSON converter
- Inom-Turdikulov/qmk_firmware: Open-source keyboard firmware for Atmel AVR and Arm USB families
- QMK: Mouse Turbo Click
- My current keyboard layout - Eli Rodríguez Pérez — Personal blog
- QMK Basics – Thomas Baart