# January 15th, 2020
# QMK Firmware Customization
I think it was 2008 when I bought my first (and only) Happy Hacking Keyboard. As an Emacs user, I find having my control key on the home row to be essential. Prior to owning an HHKB, swapping caps lock and control was an OS-specific exercise in tedium. Now, after using an HHKB for so long, I'm largely dependent on its simple and unique layout.
I love the default HHKB keymap, but being a Topre switch board meant that it was (and still is) difficult to find compatible keycaps / switches with different characteristics. Topre switches are some of the best, but not being able to participate in the Cherry / Gateron / Kailh / ZealPC etc. key switch explosion left me wondering what I may be missing out on.
Enter the Tokyo60 and QMK Firmware!
The Tokyo60 is a compact HHKB-style board with a case machined out of anodized aluminum. It's essentially a fancy Happy Hacking Keyboard with modern features such as; RGB lighting, a fully programmable layout, and hot-swap key switch sockets (supporting Cherry MX style switches).
QMK Firmware is an open-source keyboard firmware that you can use to power your own custom keyboard PCB. QMK is totally customizable and supports many keyboards and keymaps out of the box. If you're feeling adventurous; you can even program your own macros, RGB lighting effects, etc. and flash them to your board.
The two together yield a keyboard which should last a lifetime while adapting to the user's changing preferences.
# Tokyo60
The keyboard kit itself is currently only available secondhand or through Drop aka Massdrop. The creator of the board has provided a build guide here: Assembly Guide
# ISP Flashing
I own one Tokyo60 V1 and two V3s. Unfortunately both of my revision 3 boards shipped without a working bootloader. With some much needed help from the community (@davidfriar specifically) I was able to successfully flash a new copy of the atmega32u4 bootloader via the PCB's ISP header.
I followed @davidfriar's guide and everything worked out as expected.
Other references:
# Custom Configuration
My configuration is an extension of @drashna's config (from some time ago now). I've got a few key features implemented:
- Static RGB lighting (single color)
- Flash RGB lighting on FN hold (alternate color)
- RGB twinkle effect when typing
- RGB cycle when plugged in
- Braces can alternately be typed by pressing the modifiers as opposed to
holding them
(Space-cadet)
- Shift == Parentheses
- Alt == Square brackets
- Shift + Alt == Brackets
# Userspace
My userspace configuration: users/lunias
# Tokyo60 Keymap
My tokyo60 keymap: keyboards/tokyo60/keymaps/lunias