From f8204c2525a070fa0f5abdecece4cf210f21cfb7 Mon Sep 17 00:00:00 2001 From: Akshay Date: Mon, 13 Jun 2022 19:26:03 +0530 Subject: new post: lotus58 --- posts/lotus58.md | 135 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 135 insertions(+) create mode 100644 posts/lotus58.md (limited to 'posts/lotus58.md') diff --git a/posts/lotus58.md b/posts/lotus58.md new file mode 100644 index 0000000..2a83872 --- /dev/null +++ b/posts/lotus58.md @@ -0,0 +1,135 @@ +Earlier this month, I decided that I would laugh at Indian +customs in the face by building a split-ergo mechanical +keyboard from scratch rather than purchasing a Moonlander. + +![The finished product](https://u.peppe.rs/i8k.jpg) + +## Sourcing the parts + +If you, like me, live in India, you might find this section +useful. My approach to finding parts: + + - Check reputed, local online stores + - Check physical hardware stores + - Import the part + +### PCBs + +This was by far the hardest component to procure. +Fabrication services have certain _capabilities_. +Capabilities are the limitations of a fabrication service. +For example, a service may be capable of drilling holes no +smaller than 0.3mm in diameter. Most sites have a +verification process to check if their capabilities meet +your design's requirements. I tried a few local PCB +fabrication services: + + - Lion PCB: Capabilities did not meet my requirements + - PCBPower: Capabilities did not meet my requirements + - Circuitwala: Capabilities did not meet my requirements + +I settled for JLCPCB, a Chinese service. PCBs themselves +were 16 USD, shipping was another 35 USD, and customs was +another 3.5K INR (ouch). + + +### Case material + +I don't really have a case for the Lotus58, it is more of a +"plastic sandwich". I purchased acrylic plates from Robu. +Cheap, fast, solid, and customizable. I cannot recommend +Robu enough. A full set of plates (2 top plates and 2 bottom +plates) cost me about 500 INR. I also bought a pair of +laptop height raisers on Amazon to create a budget tenting +setup. + +### Electronics + +You'll need a few rather specific electronic components such +as hotswap sockets and TRRS mounts, the rest are commonly +available: + +- Hotswap sockets: StacksKB +- TRRS mounts (PJ 320A): StacksKB +- Diodes (1N4841): StacksKB +- M2 screws: StacksKB +- M2 spacers: ThinkRobotics +- Arduino Pro Micro: Robu + +I skimped out on optional components such as OLEDs and +rotary encoders. + +### Switches and Keycaps + +Arguably the most fun part of the build: + +- Gateron Oil King switches: Rectangles +- DSA blanks: Meckeys + +## Building the keyboard + +The the build is extremely straightforward. Through hole +components are easy to solder. Be wary of component +placement and orientation. Check thrice, solder once. Few +debugging tips: + +- if a single key does not actuate, check the hotswap for + poor soldering (reflow the joint), and the switch pins for + deformation during installation +- if an entire column or row activates on a single + key-press, a connection has been shorted +- if only some of the keys on a given row actuate, a diode + has been soldered on the wrong way + +## The typing experience + +I decidede to give QWERTY the boot and learn Colemak along +with the new keyboard. The first few weeks were terrible +because I could neither type QWERTY nor Colemak, but I got +the hang of it pretty quickly. Typing websites do help, but +it is best to simply use it in your daily workflow. No site +can help you get accustomed to the various things you use +your keyboard for such as switching windows or navigating +vim/tmux. + +### Colemak + +Alt layouts such as Colemak are definitely worth it. I find +that Colemak reduces finger movement a lot, a good portion +of the keys on the left hand are the same as QWERTY, it +is fairly easy to pick up as well. + +### Vim + +Using an alt layout means most programs with keyboard +shortcuts are not going to work as expected, `HJKL` on vim for +movements being one of them. I took the short route out by +creating a new layer with arrow keys on the home row: + +``` +default homerow: +H N E I + +"nav" layer: +< v ^ > +``` + +The remaining commands in vim are largely mnemonics. +Navigating with home-row arrow keys also means that I can +use "HJKL" globally, to scroll a website, for example. + +### Cutting down to 34 keys + +A couple months into my ergo journey, I realized that I +could get away by moving my fingers even lesser. I moved +modifiers such as `Super`, `Ctrl`, `Alt` and `Shift` to the +home-row as QMK Mod Taps. The rest of the keys are cleverly +placed in layers, not too much unlike the Miryoku layout. +Even for someone that writes Rust (a symbol-heavy grammar), +I find 34-keys to be sufficient. + +## Conclusion + +I have been bitten by the ergomech bug. + +![The Lotus58 in action](https://u.peppe.rs/XM3.jpg) -- cgit v1.2.3