2023-07-21 08:46:38 +00:00
# QMK custom keymaps
2023-07-20 18:02:57 +00:00
2023-07-27 18:27:15 +00:00
[![Go ](https://github.com/haunt98/qmk_keymaps/actions/workflows/go.yml/badge.svg )](https://github.com/haunt98/qmk_keymaps/actions/workflows/go.yml)
[![QMK ](https://github.com/haunt98/qmk_keymaps/actions/workflows/qmk.yml/badge.svg )](https://github.com/haunt98/qmk_keymaps/actions/workflows/qmk.yml)
2023-07-21 08:46:38 +00:00
## [dztech/dz60rgb_wkl](https://github.com/qmk/qmk_firmware/tree/master/keyboards/dztech/dz60rgb_wkl)
2023-07-21 06:42:38 +00:00
2023-08-06 09:23:38 +00:00
> V2.1: ATmega32U4 (AVR), takes .bin files Started shipping in June 2021 as a
> slightly modified version of v2.
2023-07-21 06:42:38 +00:00
2023-07-21 08:46:38 +00:00
### Stock
Stock firmware is `dztech_dz60rgb_wkl/stock/new dztech_dz60rgb_wkl_v3_via.bin` .
Can be flashed with QMK Toolbox.
2023-07-20 18:02:57 +00:00
2023-07-21 08:46:38 +00:00
Links:
- [DZ60RGB-WKL Hot-Swap PCB ](https://kbdfans.com/products/dz60rgb-wkl-hot-swap-pcb )
- [USB Drive Flash Manual (New Flash Manual) ](https://docs.google.com/document/d/111qx6Qec4JqtIhWaZlMND-VuRnFtn9a-gJaHN8fsL7M/edit?usp=sharing )
2023-08-11 08:34:57 +00:00
- [moyi4681/firmware ](https://github.com/moyi4681/firmware )
2023-07-21 08:46:38 +00:00
### Compile
```sh
make dztech_dz60rgb_wkl
# Output is dztech_dz60rgb_wkl_v2_1_haunt98.bin
```
2023-07-20 21:17:51 +00:00
2023-07-22 22:04:21 +00:00
### Keymap
2023-08-06 09:31:12 +00:00
#### qmkasciigen
2023-08-06 09:29:26 +00:00
2023-08-06 09:31:12 +00:00
[asciiart ](dztech_dz60rgb_wkl/asciiart/haunt98.txt )
#### caksoylar/keymap-drawer
2023-07-22 22:04:21 +00:00
2023-08-06 09:23:38 +00:00
![caksoylar_keymap_drawer ](dztech_dz60rgb_wkl/caksoylar_keymap_drawer/keymap.svg )
2023-07-21 08:46:38 +00:00
## Install
2023-08-06 09:23:38 +00:00
Locate firmware file after compile successfully or download from
[QMK action workflow ](https://github.com/haunt98/qmk_keymaps/actions/workflows/qmk.yml )
2023-07-21 08:46:38 +00:00
Put keyboard into bootloader mode in 2 ways:
2023-07-20 21:17:51 +00:00
- Press `QK_BOOT` .
- Unplug cable, then hold `ESC` and plug cable.
2023-07-20 21:21:15 +00:00
Use [QMK Toolbox ](https://github.com/qmk/qmk_toolbox ) to flash.
2023-07-20 18:11:10 +00:00
2023-07-30 11:55:55 +00:00
## Maintain
2023-08-13 16:38:13 +00:00
Step by step:
2023-07-30 11:55:55 +00:00
1. Make changes to keymaps: `*.c` , `*.h` , `*.mk`
2. Push changes to GitHub
3. Download firmware + keymaps JSON
4. Replace repo keymaps JSON
2023-08-07 08:22:21 +00:00
5. Visualize keymap: `make draw`
2023-07-30 11:55:55 +00:00
2023-08-06 09:23:38 +00:00
You don't need to install [QMK CLI ](https://github.com/qmk/qmk_cli ) but still
need QMK Toolbox.
2023-07-30 11:55:55 +00:00
2023-07-20 18:11:10 +00:00
## Features
2023-07-21 06:42:38 +00:00
Basic
2023-07-23 07:52:00 +00:00
- [Introduction ](https://github.com/qmk/qmk_firmware/blob/master/docs/getting_started_introduction.md )
2023-07-20 18:16:31 +00:00
- [Keymap FAQ ](https://github.com/qmk/qmk_firmware/blob/master/docs/faq_keymap.md )
2023-07-22 15:28:48 +00:00
- [Keymap Overview ](https://github.com/qmk/qmk_firmware/blob/master/docs/keymap.md )
2023-07-21 06:42:38 +00:00
- [Keycodes Overview ](https://github.com/qmk/qmk_firmware/blob/master/docs/keycodes.md )
- [Modifier Keys ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_advanced_keycodes.md )
- [Quantum Keycodes ](https://github.com/qmk/qmk_firmware/blob/master/docs/quantum_keycodes.md )
- [Layers ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_layers.md )
2023-07-23 08:41:15 +00:00
More than Basic
2023-07-24 04:04:36 +00:00
- [Debugging FAQ ](https://github.com/qmk/qmk_firmware/blob/master/docs/faq_debug.md )
2023-07-23 08:41:15 +00:00
- [How to Customize Your Keyboard's Behavior ](https://github.com/qmk/qmk_firmware/blob/master/docs/custom_quantum_functions.md )
2023-07-24 04:04:36 +00:00
- [List of Useful Core Functions To Make Your Keyboard Better ](https://github.com/qmk/qmk_firmware/blob/master/docs/ref_functions.md )
2023-08-07 06:56:40 +00:00
- [Userspace: Sharing Code Between Keymaps ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_userspace.md )
2023-07-23 08:41:15 +00:00
2023-07-21 06:42:38 +00:00
Do
2023-08-10 14:39:54 +00:00
- [Bootmagic Lite ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_bootmagic.md ):
I use `QK_BOOT` with `EE_CLR` .
2023-07-23 08:26:09 +00:00
- [Contact bounce / contact chatter ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_debounce_type.md )
2023-08-10 14:39:54 +00:00
- [Measure and reduce keyboard input latency with QMK on the Kinesis Advantage (2021) ](https://michael.stapelberg.ch/posts/2021-05-08-keyboard-input-latency-qmk-kinesis/ )
- [QMK debounce masterclass ](https://kbd.news/QMK-debounce-masterclass-1435.html )
- [Keyboard Matrix Scanning and Debouncing ](https://summivox.wordpress.com/2016/06/03/keyboard-matrix-scanning-and-debouncing/ )
- [Grave Escape ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_grave_esc.md ):
Useful on layout < = 60%, because of missing Fn row.
- [Mod-Tap ](https://github.com/qmk/qmk_firmware/blob/master/docs/mod_tap.md ): To
replace `CAPSLOCK` with `CTRL` when hold and `ESC` when tap.
2023-07-21 17:35:12 +00:00
- [Tap-Hold Configuration Options ](https://github.com/qmk/qmk_firmware/blob/master/docs/tap_hold.md )
2023-08-10 14:39:54 +00:00
- [Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_tap_dance.md ):
2023-08-10 14:41:44 +00:00
I use it for safely `QK_BOOT` .
2023-08-10 14:39:54 +00:00
- [Space Cadet: The Future, Built In ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_space_cadet.md ):
Quickly press `(` , `)` .
- [A Modern Space Cadet ](https://stevelosh.com/blog/2012/10/a-modern-space-cadet/ )
2023-07-21 06:42:38 +00:00
Don't
2023-07-21 07:03:04 +00:00
- [Magic Keycodes ](https://github.com/qmk/qmk_firmware/blob/master/docs/keycodes_magic.md )
2023-07-21 06:42:38 +00:00
- [Command ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_command.md )
- [Mouse keys ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md )
- [One Shot Keys ](https://github.com/qmk/qmk_firmware/blob/master/docs/one_shot_keys.md )
2023-07-21 07:33:35 +00:00
- [RGB Matrix Lighting ](https://docs.qmk.fm/#/feature_rgb_matrix )
2023-08-09 10:47:10 +00:00
- [Auto Shift: Why Do We Need a Shift Key? ](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_auto_shift.md ):
2023-08-10 14:39:54 +00:00
Conflict with space cadet when using vim `:w` -> `:)w` .
- [A guide to home row mods ](https://precondition.github.io/home-row-mods ): Hard
to get it right, so ignore it for now.
2023-07-21 06:42:38 +00:00
Build/Optimize
2023-07-20 18:42:35 +00:00
- [Configuring QMK ](https://github.com/qmk/qmk_firmware/blob/master/docs/config_options.md )
2023-07-21 06:42:38 +00:00
- [Squeezing the most out of AVR ](https://github.com/qmk/qmk_firmware/blob/master/docs/squeezing_avr.md )
- [Reducing firmware size ](https://get.vial.today/docs/firmware-size.html )
2023-08-10 14:42:41 +00:00
- [Configuring QMK (VIA) ](https://www.caniusevia.com/docs/configuring_qmk )
2023-07-20 20:49:05 +00:00
2023-08-10 14:39:54 +00:00
More
2023-07-21 16:28:53 +00:00
2023-08-03 08:30:40 +00:00
- [Programming On 34 Keys ](https://peppe.rs/posts/programming_on_34_keys/ )
2023-08-20 15:40:23 +00:00
- [Miryoku ](https://github.com/manna-harbour/miryoku )
- [Pascal Getreuer's QMK keymap ](https://github.com/getreuer/qmk-keymap )
- [filterpaper/qmk_userspace ](https://github.com/filterpaper/qmk_userspace )
2023-08-20 13:19:20 +00:00
- [RP2040 Controller is now the default option ](https://ergomech.store/blog/ergomech-blog-1/rp2040-controller-is-now-the-default-option-3 ):
Limit of ATmega32U4 aka Pro Micro:
- Limited storage
- Do not work well with USB-C to USB-C cable.
2023-08-20 15:40:23 +00:00
2023-08-07 06:56:40 +00:00
Tools:
2023-08-08 10:09:50 +00:00
- [bloznelis/kbt ](https://github.com/bloznelis/kbt )
2023-07-21 16:28:53 +00:00
2023-07-25 10:19:26 +00:00
## qmkasciigen
Install:
```sh
go install github.com/haunt98/qmk_keymaps/cmd/qmkasciigen@latest
```
2023-07-28 12:03:01 +00:00
Usage:
```sh
# Generate from QMK repo
# Keymap must be JSON (exist keymap.json)
qmkasciigen -qmk-keyboard ymdk/id75 -qmk-keymap via -out ascii.txt
# Generate from local keymap.json
qmkasciigen -qmk-keyboard dztech/dz60rgb_wkl/v2_1 -qmk-keymap-file dztech_dz60rgb_wkl/keymaps_json/haunt98/keymap.json -out ascii.txt
```
Thanks:
- [yskoht/keymapviz ](https://github.com/yskoht/keymapviz )
- [caksoylar/keymap-drawer ](https://github.com/caksoylar/keymap-drawer )
2023-08-10 19:03:06 +00:00
## [Karabiner-Elements](https://github.com/pqrs-org/Karabiner-Elements)
Copycat QMK features with software.
- [Modern Space Cadet (rev 3) ](https://ke-complex-modifications.pqrs.org/json/space_cadet.json )
2023-07-20 20:49:05 +00:00
## TODO
2023-07-20 21:17:51 +00:00
- [x] How to flash
2023-07-20 21:21:15 +00:00
- [x] Add stock firmware/docs
2023-07-21 09:15:46 +00:00
- [x] Add qmk lint
2023-07-23 09:19:59 +00:00
- [x] Visualize
2023-07-28 12:03:01 +00:00
- [x] qmkasciigen
- [x] Use flag
- [x] Add docs
- [x] Get data directly from qmk
2023-08-10 14:39:54 +00:00
- [x] Split transform keycodes to raw binding/transform (same as
2023-08-10 08:00:54 +00:00
keymap-drawer)
2023-08-10 14:39:54 +00:00
- [ ] Unicode support ?