Compare commits
3 Commits
7ada6b4442
...
c602d26ea6
| Author | SHA1 | Date |
|---|---|---|
|
|
c602d26ea6 | |
|
|
6c4cc3ee37 | |
|
|
8540c089c1 |
|
|
@ -10,10 +10,18 @@ draft: false
|
|||
|
||||
This is my current daily driver. A compact, 60% keyboard made with Topre-designed electro capacitive keyswitches. More inexperienced, misguided keyboard enthusiasts will tell you that Topre's proprietary switch mechanisms aren't worth paying for because they're "glorified rubber domes". What these people fail to recognize is that "rubber domes" aren't an inherently bad quality in a keyboard, assuming the mechanisms are built well enough. I've seen keyboard YouTubers boast about how they've "vastly improved" a friend's typing experience by building them a new keyboard using Cherry MX derivative linear switches, while tossing out their supposedly terrible Dell keyboards that happen to be made with Alps SKCMs and NMB domes with sliders that would have provided vastly superior typing experiences if they were just cleaned and refurbished, but I digress.
|
||||
|
||||
As much as I love the feeling of the sliders moving through this keyboard's plastic housing, I'm just not a fan of any of the layouts that can be enabled on this keyboard via the DIP switch block accessible from the back, under a removable cover. Thanks to someone over at the GeekHack forums who goes by "hasu," most Topre popular boards have been reverse-engineered, so I was able to set up a custom build of QMK relatively easily, after rewiring the keyswitch PCB to a new MCU (the ATMega32u4 on a Teensy 2.0), and write my own custom keyboard firmware.
|
||||

|
||||
|
||||
QMK, the project my custom firmware was derived from, offers some very useful key mapping functions like "quantum keys" that perform different functions depending on the context in which they're used. For example, the quintessential quantum key for a Mac user without a function row on their keyboard is the backtick/escape key: in most situations, it will function as an "Escape" key, but if you're holding down "Shift" or "GUI" ("Windows" or "Command"), it will function as the backtick character (or tilde in the case of "Shift"). In Mac OS, Command+backtick is a hotkey for switching between windows within an application, since Command+Tab only switches between Applications.
|
||||
As much as I love the feeling of the sliders moving through this keyboard's plastic housing, I'm just not a fan of any of the layouts that can be enabled on this keyboard via the DIP switch block accessible from the back, under a removable cover. Thanks to someone over at the GeekHack forums who goes by "hasu," most Topre popular boards have been reverse-engineered, so I was able to set up a custom build of QMK relatively easily, after rewiring the keyswitch PCB to a new MCU (the ATMega32u4 on a [Teensy 2.0](https://www.pjrc.com/store/teensy.html)), and write my own custom keyboard firmware.
|
||||
|
||||

|
||||
|
||||
[QMK](https://qmk.fm), the project my custom firmware was derived from, offers some very useful key mapping functions like "quantum keys" that perform different functions depending on the context in which they're used. For example, the quintessential quantum key for a Mac user without a function row on their keyboard is the backtick/escape key: in most situations, it will function as an "Escape" key, but if you're holding down "Shift" or "GUI" ("Windows" or "Command"), it will function as the backtick character (or tilde in the case of "Shift"). In Mac OS, Command+backtick is a hotkey for switching between windows within an application, since Command+Tab only switches between Applications.
|
||||
|
||||

|
||||
|
||||
The layout I use is based on a Mac ANSI layout. In my opinion, what makes a "Mac layout" distinct from a standard Windows layout is not simply the swapping of positions between the Alt/Option and GUI/Windows/Command keys, but additionally, the position of that modifier key underneath the X key: if its right edge only comes up to the centre, at a hypothetical line dividing the X key vertically, it's a Windows layout. If it goes beyond the halfway point however, it is more akin to traditional "Windows key-less" UNIX system keyboards, which were designed with the understanding that the Alt key would be accessed by the left thumb. Luckily, the Happy Hacking keyboard fulfills the UNIX tradition by positioning a 1.5 unit-wide modifier key nearly directly beneath the X key.
|
||||
|
||||
I couldn't get used to the HHKB delete key above the enter/return key, I have the two keys replacing the traditional 2 unit-wide backspace key both mapped to "Backspace," and the usual backlash/pipe key between the backspace and enter keys. I did however, get accustomed to using a modifier key in the caps lock key's position. Not the "Control" key, but a "Function" key to access a secondary layer of keys. Most notably in my "Function" layer are the arrow keys (up/left/down/right) on WASD, and backspace on the spacebar, which enables me to make minor typing corrections without having to move my hands off of the home row.
|
||||

|
||||
|
||||
I couldn't get used to the HHKB delete key above the enter/return key, I have the two keys replacing the traditional 2 unit-wide backspace key both mapped to "Backspace," and the usual backlash/pipe key between the backspace and enter keys. I did however, get accustomed to using a modifier key in the caps lock key's position. Not the "Control" key, but a "Function" key to access a secondary layer of keys. Most notably in my "Function" layer are the arrow and navigation keys on the left side, and backspace on the spacebar, which enables me to make minor typing corrections without having to move my hands off of the home row.
|
||||
|
|
|
|||
|
|
@ -10,6 +10,12 @@ draft: false
|
|||
|
||||
When I buy Cherry MX-compatible mechanical keyboards now, all I look at is what the case looks like, and the physical layout of the keyswitch plate. This is for two reasons: the keyswitches I want in the keyboard aren't available in prebuilt keyboards and the MCUs in prebuilt keyboards aren't reprogrammable. So, in order to use my custom keyswitches and ensure the keyboard can be programmed to support the custom keyboard layouts I've grown accustomed to, I wire the switches into a matrix by hand, so that I can wire them to a reprogrammable MCU, such as an Arduino board.
|
||||
|
||||
This layout is nearly perfect to me. In addition to the compact qualities of a traditional 60% keyboard are dedicated arrow keys and a 4-key navigation cluster, which I have mapped to "Print Screen", "Delete", "Page Up", and "Page Down". My only gripe as a Mac user are the Windows-style left modifier keys that aren't far enough to the right, making them slightly less ergonomic to use.
|
||||
This layout is nearly perfect to me. In addition to the compact qualities of a traditional 60% keyboard are dedicated arrow keys and a 4-key navigation cluster, which I have mapped to "Print Screen", "Delete", "Page Up", and "Page Down". My only gripe as a Mac user are the Windows-style left modifier keys that aren't far enough to the right, making them slightly less ergonomic to use. However, because it uses a standard Windows-style layout, it's also highly compatible with the plentiful standard ANSI keycap sets available from a variety of vendors. I've elected to use dye sublimation printed PBT keycaps moulded in a profile and colourway that emulates a vintage keyboard made by Cherry, the G80-9009.
|
||||
|
||||
I found this particular keyboard on Taobao listed for 50% off because the wireless functionality wasn't working, which was perfect for me, because I didn't need the existing MCU (or wireless functionality) anyways. I took it apart when I got it and loaded it up with my Huano D-shaped tactile bump switches and soldered together a matrix (along with resistors to prevent electronic interference across simultaneously pressed keys, enabling N-key rollover. I wired the matrix to a Teensy 2.0 board and set up a customized firmware in QMK with my desired layout features.
|
||||

|
||||
|
||||
I found this particular keyboard on Taobao listed for 50% off because the wireless functionality wasn't working, which was perfect for me, because I didn't need the existing MCU (or wireless functionality) anyways. I took it apart when I got it and loaded it up with my [Huano D-shaped tactile bump switches](https://item.taobao.com/item.htm?spm=a1z09.2.0.0.67002e8d2ooicz&id=644453850927) and soldered together a matrix, along with 1N4148 diodes to prevent electronic interference across simultaneously pressed keys, enabling N-key rollover. I wired the matrix to a [Teensy 2.0 board](https://www.pjrc.com/store/teensy.html) and set up a customized firmware using [QMK](https://qmk.fm) with my desired layout features.
|
||||
|
||||

|
||||
|
||||
The code for the custom firmware I wrote for my handwired keyboard is available [here](https://irie.clinic.homo.casa/steven-y-e/qmk/src/branch/vial-develop/k680t/keyboards/handwired/k680t).
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 140 KiB After Width: | Height: | Size: 154 KiB |
|
After Width: | Height: | Size: 100 KiB |
|
After Width: | Height: | Size: 445 KiB |
|
After Width: | Height: | Size: 523 KiB |
|
After Width: | Height: | Size: 64 KiB |
|
After Width: | Height: | Size: 1.8 MiB |
|
After Width: | Height: | Size: 13 MiB |