V2.1: ATmega32U4 (AVR), takes .bin files Started shipping in June 2021 as a slightly modified version of v2.
Stock firmware is dztech_dz60rgb_wkl/stock/new dztech_dz60rgb_wkl_v3_via.bin
.
Can be flashed with QMK Toolbox.
Links:
Links:
128x32 OLED display module
Don’t connect or disconnect the TRRS cable when the keyboard is powered. It may short out. Always disconnect the USB cable first.
Bought from ergomech.store
Powered by the powerful RP2040 MCU, allowing users to use more macros and features from QMK.
USB-C port - However, cannot be used with usb-c to usb-c cable
- Make sure halves are not connected together with TRRS cable.
- Connect one half to USB, flash the firmware. Use the reset button to reset the keyboard when you are asked to in console.
- Connect the second half and flash it in the same way as the previous one.
- Disconnect the USB cable. Connect both halves together with TRRS cable.
- Connect USB cable to the left side.
Bought from COBAN STATIONERY
Enter bootloader in many ways:
- Bootmagic reset: Unplug cable, then hold key in row 0 col 0 and plug cable.
- Keycode: Press
QK_BOOT
. - Physical reset button: Read manual of your PCB, likely will have a reset button
If use QMK Toolbox, locate firmware file after compile successfully or download from QMK action workflow
Step by step:
- Make changes to keymaps:
*.c
,*.h
,*.mk
- Format
keymap.c
withcolumn -t
- Format
- Apply changes to keymaps JSON:
make qmk_all
- Visualize keymap:
make draw
Basic:
More advance:
- Debugging FAQ
- How to Customize Your Keyboard's Behavior
- List of Useful Core Functions To Make Your Keyboard Better
- Userspace: Sharing Code Between Keymaps
Do:
- Bootmagic:
I use
QK_BOOT
withEE_CLR
. - Contact bounce / contact chatter
- Grave Escape:
Useful on layout <= 60%, because of missing
Fn
row. - Mod-Tap: To
replace
CAPSLOCK
withCTRL
when hold andESC
when tap. - Tap-Hold Configuration Options
- Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things:
I use it for safely
QK_BOOT
. - Space Cadet: The Future, Built In:
Quickly press
(
,)
. - Tri Layers
- Encoders
- Mouse keys
- Combos
Don't:
- Magic Keycodes
- Command
- One Shot Keys
- RGB Matrix Lighting
- Auto Shift: Why Do We Need a Shift Key?:
Conflict with space cadet when using vim
:w
->:)w
. - Swap-Hands Action
qmk format-c
: I have customclang-format
.- A guide to home row mods: Hard to get it right, so ignore it for now.
Build/Optimize:
More:
- Programming On 34 Keys
- Miryoku
- Pascal Getreuer's QMK keymap
- filterpaper/qmk_userspace
- The SpaceFN concept
- RP2040 Controller is now the default option:
Limit of ATmega32U4 aka Pro Micro:
- Limited storage
- Do not work well with USB-C to USB-C cable.
- How to make your C codebase rusty: rewriting keyboard firmware keymap in Rust
- How to talk to your QMK-based keyboard using Rust
- I Bought the Stack Overflow Keyboard. I Instantly Became a 10x Developer and Ended Up Writing the Default Firmware for It
- Building a keyboard firmware
- Having fun with keyboard mappings under Linux
- My personalised 55% split keyboard
- Adding Apple’s Globe key to a QMK-powered keyboard
Install:
go install github.com/haunt98/qmk_keymaps/cmd/qmkasciigen@latest
Usage:
# 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:
Copycat QMK features with software.
- How to flash
- Add stock firmware/docs
- Add qmk lint
- Visualize
- qmkasciigen
- Use flag
- Add docs
- Get data directly from qmk
- Split transform keycodes to raw binding/transform (same as keymap-drawer)
- Support Code page 437
- Split draw func to multipls small func for easily maintenance
- Move scaleX, scaleY to config flag