Keyboard Builders' Digest
Save 5% at Dangkeebs! Code: KBDNEWS

Issue 89 / Week 31 / 2022

This is a hand-picked selection of last week's content from a keyboard enthusiast's perspective. Posts that may teach you something, make you think and contribute to the common knowledge of the DIY builder community.

View mode: compact | normal | full

Contents

Editorial

Behind the Scenes of Issue 89

New donor, vendor database update, XIAO pillow, new side-project, etc.

Hey y'all,

---

Welcome back for another edition of Keyboard Builders' Digest (this time Issue #89), a weekly roundup of this DIY keyboard focused newsletter and blog from Tamas Dovenyi – that's me. If you are new to this, you can read how this started out and what this is all about nowadays. If you like what you see, you can subscribe to the newsletter (free) and donate some bucks to keep this otherwise free and ad-free project alive.

---

Vendor database

Eloquent Clicks is back on board and offering you 5% discount again (the old code didn't work and I took it down temporarily). Now you can use the coupon code KBDNEWS again (except for GB items and certain categories).

Donors

One donor left but here's a new one:

Yay, MKUltra joined the ranks of kbd.news donors. Thanks a lot Erik!

(Don't forget: MKUltra has been offering a discount for some time so you can spare some money by using the semi-standardized KBDNEWS coupon code when purchasing from them.)

In the mailbox

I already shared this on Keebtalk and Twitter but wanted to put it here too:

Seeed Studio sent me a small sample of their XIAO controllers… plus a XIAO controller shaped pillow. :D

Pic: XIAO pillow with controllers for scale

XIAO pillow with controllers for scale

My wife's reaction: "At last something useful." XD

Btw, I was going to demonstrate the possibilities with only 11 GPIO pins, building something bigger than 30 keys by utilizing the voltage drop across diodes. However, Peng Zhihui's HanWen board with the shift registers made this demo probably obsolete: it turns out you can pretty much handle any number of keys with just 3 pins…

Regardless, don't forget the XIAO keyboard contest organized by Seeed.

New side-project

I'm a complete idiot. Instead of getting a life and drastically cutting back on the time I spend on kbd.news, I started to organize another keyboard related side-project – probably the biggest mission I've ever embarked on.

It's still top secret but I wanted to let you know this: if I post less frequently that's not because I neglect kbd.news – quite the contrary…

I'm not going to manufacture and offer a keyboard, nor open a shop. Details later.

---

That's all for today. Thanks for reading.

Feel free to comment in this issue's r/mk thread, and as always: keep learning and building.

Cheers, Tamás


Projects

Hello Word Smart Keyboard

Peng Zhihui designed a feature-packed modular keyboard with a motor-controlled haptic knob – and a lot more.

Based in Shanghai, Peng Zhihui is a prolific engineer working at Huawei Research and publishing projects ranging from autonomous bicycles to robotic arms.

Recently dipping his toes into custom keyboard design, he kicked the door open with a quite unique keyboard packed with lots of features, one he calls HanWen or "Hello Word Smart Keyboard" in English.

Being tired of the mk keyboard scene focusing on design and aesthetics, he decided to ensure the maximum degrees of freedom for development by designing the hardware and firmware from scratch.

Features

  • Shift registers to implement key scan
  • ultra-low latency custom firmware
  • replaceable interactivity module
  • e-ink display
  • OLED display
  • motorized knob with configurable feedback
  • capacitive touch bar

PCB & matrix

To reconstruct the scan circuit from its basics, he came up with using shift registers. The keyboard still scans the keys the same way as common boards with matrices do. However, instead of using an m x n matrix Zhihui adopted a 1 x n matrix which utilizes the parallel to serial function of the shift registers.

Pic:

As mentioned in the video, every key is one bit of the register so we can read every key's status every time a clock sequence is loaded.

This solution saves a lot of IO pins: no matter how many keys we have, only three GPIO pins are used – one data wire, one clock wire, and one latch wire.

As of my understanding, we need a relatively cheap and easily available shift register for every 8 keys – or whatever component we have.

Pic:

The second advantage is extreme speed: The maximum speed of 74HC165 series circuits exceeds 50MHz (48-56MHz).

Another benefit of this approach is the simple circuit layout which eliminates all diodes.

Custom firmware

Zhihui also tried to address the shortcomings of existing firmware projects which in his opinion are too complex, not optimized enough – as a result of being compatible with many keyboard types.

So based on an ARM MCU (STM32F103CBTx (LQFP48)) he developed a suite of keyboard firmware which basically "releases the performance of full-speed HID devices to the limit".

In the firmware he implemented HD device enumeration resulting in 1ms latency and extreme per-key RGB refresh rate with NKRO support. What's more interesting though: also per-key debounce algorithm for all keys.

The firmware's source will be released later.

Hardware

The base keyboard layout is not too intuitive, it's pretty convenient and modeled after one called S98 by XiKii. However, it is modular and consists of three parts.

Apart from the main keyboard, there's a USB-Hub deck with some power boost capabilities, and also a replaceable interaction module.

Interaction module

The interaction module can run various apps.

Obviously, it has an e-ink screen which can display a wallpaper, weather forecast, computer status, or quite anything you'd like. The author provides some easy-to-use apps for this keyboard, e.g. you can simply drag and drop images you want to see on the screen.

Pic:

The keyboard also features a smaller OLED screen and a motorized knob with haptic feedback.

In a previous video the Zhihui demonstrated how to simulate a physical knob with a brushless motor and FOC control.

The knob can simulate force feedback effects from frictionless rotation to acting as a multilevel switch, spring, etc. – all this with configurable parameters.

Pic:

Combined with the small OLED screen there are a lot of different ways to use this feature, and don't forget that it's a motor so you can also use it as a pointer along with a scale displayed on the screen.

Some problems had to be solved for this to work, e.g. the power limitations of the USB, but the author managed to borrow an idea from the electromagnetic catapult of aircraft carriers…

Capacitive touch bar

In addition, the author put a capacitive touch bar below the spacebar with user-defined functions: switching desktops, tabs, music – it can be used even for copy/pasting.

Pic:

Resources

Both the hardware and firmware will be open sourced later: https://github.com/peng-zhihui Until then, try to process all the info above. :D

Aaand it's out: https://github.com/peng-zhihui/HelloWord-Keyboard


Penguin

Penguin is a low-profile RGB keyboard by Spiritual_Guide202 – inspired by Redox.

Penguin is a Redox-compatible low profile keyboard with per-key RGB – designed and open-sourced by Spiritual_Guide202 aka gorbit99.

Way too many keys for my taste but our preferences and workflow differ:

I have some reservations about less keys. My native language has a lot of extra characters besides the 26 English ones. I also do some light gaming and I'm a programmer. […] I already have most symbols as keycombos because of the language thing, having even the letters, or more characters like that would severely hurt my speed – gorbit99.

Resources

Gerbers and KiCad files: https://github.com/gorbit99/penguin


FAW36

FAW36 is a wireless ortho split by gpem, using XIAO BLE controllers.

Germain Gadel aka gpem shared the FAW36 – a 36-key wireless ortholinear split keyboard.

A little keyboard I have been working on this past month. It uses Seeed XIAO BLE boards as they are pretty much only 1U in size, so perfect for small keebs – gperm.

The PCB is reversible and it supports both soldered and hotswap MX switches.

You know I like creative names and background stories, and FAW is a good example for that.

The abbreviation stands for Four Are Wanted which is a reference to the four color theorem which states that:

No more than four colors are required to color the regions of any map. So that no two adjacent regions have the same color.

Written on the PCB is the letter of Augustus De Morgan to Sir William Rowan Hamilton in which he explains the findings of his student.

Pic:

Resources


Corneish split by danns87

A Corne-like choc-spaced unnamed split with custom case – designed by danns87.

This unnamed wireless split was made by danns87 aka daniel2887. Designed from the ground up, it shares some similarities with the Corne but has a more aggressive staggering and is Choc-spaced.

I made a Corne-like choc-spaced keeb tailored for my hands, from designing the PCB using Ergogen to modeling and 3D printing a custom carry case. […] No fancy name yet since I wasn't planning on "formally" releasing it (even though all the PCB stuff is already on github, and I'm happy to share the case files too) – danns87.

The workflow was similar to what we are used to with MrZealot's Ergogen, probably since soundmonster's Samoklava:

  • Daniel visualized his fingers' reach using Ergopad
  • Used Ergogen to design the layout ("It ended up being a mix of guesstimating stagger from Ergopad and good old Corne (but with Choc spacing)")
  • Imported Ergogen results into KiCad, routing mostly using FreeRouting.
  • Ordered the PCB from JLCPCB.

The keycaps are Lev Popov's version of Pseudoku's Chicago stenos, 3D printed in matte white PLA, on top of 25g gChoc switches.

I had MBK Legend keycaps before, and I never liked the flat and smooth surface. Changing to these has been a _huge_ improvement, feels like a totally different keyboard (for the better!). I love the rough-ish texture, and bottoming out feels softer than on the injection-molded MBKs, which I also like.

The entire keyboard is ~16mm thick and runs ZMK by the way.

Case

Daniel designed a custom carry case in Fusion 360 and printed it in wood PLA. The deboss on the outside is based on exports from KiCad.

Pic:

This was the most custom, personalized keyboard I've made so far. It was a really fun journey! Huge shoutout to Ben Vallack's videos, which inspired me to even attempt this.

Resources


Gleb's handwired one

Gleb Sabirzyanov posted his colorful unnamed unibody keyboard.

Gleb Sabirzyanov aka zyumbik shared the plate file of his unnamed unibody keyboard so I thought the time has come for featuring another handwired build.

My acrylic handwired keyboard is finished — it's the first full-size keyboard I made! Isn't it gorgeous? – Gleb.

Full-size? I'm not sure why but a nice build anyway:

Specs

  • 38 keys
  • 4 encoders: two vertical and two horizontal EVQWGD001
  • Running KMK on RP2040 Zero
  • 3mm acrylic top and bottom designed in Figma
  • Low profile Kailh Choc V1 light blue 20g switches
  • Switches are held in the plate using thin clear two-sided tape
  • Handwired using 1mm copper enameled wire and a bit of brass wire for the controller soldering

In hindsight, Greb suggest not using 1mm copper wire for handwiring but 0.8 or even thinner if you want to wire to the controller directly. He ended up using 0.4mm brass wire to solder the wire ends to the controller because 1mm was too thick.

Layout

The layout is my own design. I wanted to try a slight pinky splay and a bit more columnar stagger compared to my current keyboard — GergoPlex. The thumb cluster is designed to be less tucky (I have big hands) and to fit as many 1.5u / 2u keys as possible since they are convex and are more pleasant to touch on the side with a thumb – Gleb.

As an experiment, the author also wanted to be able to press multiple thumb keys at the same time:

Resources

Source files & build tips: https://gitlab.com/zyumbik/keyboard-1/-/tree/main


Matías v1.0

An open-source ortholinear keyboard: Matías v1.0 by nstrappazzonc.

Matías v1.0 is a low-profile open-source ortholinear keyboard by Nicola Strappazzon C. aka nstrappazzonc.

The keyboard has the name of the author's son who was amazed by the colors and the sound of the keys – so no relation to Alps clones.

This is another mechanical keyboard, very low profile with RGB light and compatible with qmk framework. The others seem very tall and uncomfortable to me, and I wondered why there isn't a low profile one? And I asked myself again, what if I make one? – nstrappazzonc.

I can't think of too many low-pro orthos either but there's e.g. the Kebu, Horizon, 0x32 Brussels Waffle and of course the even lower profile Synx42 for those who are interested in this niche.

Or just browse through all the ortho boards featured on kbd.news: https://kbd.news/tag/ortho/

Resources


Community

r/mk revamp

As you may have noticed, mods made some important changes to the r/mk subreddit, resulting in considerably less spam on the main thread.

The r/MechanicalKeyboards subreddit has been a great source of information for people dipping their toes into the mechanical keyboard hobby.

Conveniently referred to as r/mk, the sub was definitely the place I picked up all the initial knowledge to design and build my first board (2018). And despite the shift in focus and the structure of the follower base, I still comb through the wall of posts multiple times a day, looking for content for kbd.news.

The last time I actually counted the posts, probably more than a year ago, there were about 200-300 daily entries – I'm not sure what was the number during last week, before the revamp.

Because there was a major revamp!

What I noticed was that instead of the endless scrolling, the same posts came up for hours. To raise my confusion, some posts appeared to be listed almost randomly, not in order of their time of posting (I always order them by "new").

To figure out what happened, I reached out to one of the unsung heroes of our community, r/mk-mod dryver, for explanation:

I have worked hard recently updating rules and changing some automoderator stuff, and it seems to have worked out well. In addition, I brought on omnias-42 as a moderator (he has had lots of experience in r/mechmarket as well) and he has been a massive help. We have been able to revamp post flair, some automoderator stuff, subreddit settings, and the sidebar – dryver.

So that's why instead of hundreds, there were only 15 and 18 posts on the main thread on Saturday and Sunday, respectively.

As it turned out, the initial settings were too rigorous ("we had spam filters on set to super high for some reason"), but after some consolidation the number of daily posts has been staying below 100.

All this because of the enforcement of some basic rules, mainly: for questions use the daily sticky thread.

To keep r/mk livable, help the mods by reporting posts breaking the rules:

The biggest thing that people can do to help the moderators is to report comments and posts that they think break the rules […] reports are the main way I can moderate posts. There are sometimes hundreds of posts to sift through and it can take a huge amount of time to see each one without utilizing reports – dyver.

Tips & Tricks

Shiratama keycaps

Shiratama is a yummy-looking keycap profile designed by @taneyats.

It seems @taneyats keeps churning out new keycap designs. After his gorgeous hollow 3D caps he posted the Shiratama profile this time.

You can see multiple iterations on Twitter, but in general, these caps remind me of an aesthetically pleasing, roundish XDA – with the tiny difference that I can't stand XDA but I'm in love with these. :D

The name is 白玉 (alphabetically Shiratama, meaning rice cake ball) profile. It features a flat and wide top surface, dull edges, and is yummy-looking (maybe Japanese and Chinese people can comprehend…) – @taneyats.

I have to say, without being too familiar with Japanese cuisine, even my mouth is watering by just looking at these tasty keycaps.

Pic:

Other than being a uniform, spherical profile, the Shiratama caps are of course MX compatible.

In the first place, the author intended to develop more flat and thin keycaps but the stem length did not allow that.

According to taneyats, MX stems have to be more than 3mm in length. So he made the keycaps thicker because of the stem, but fortunately this resulted in this rice cake or XDA-like shape.

Please note that [the stem] is considerably more delicate than a normal keycap. When removing from the key switch, be sure to use the key puller and pull it straight out. If it doesn't fit the key switch, scrape the inside – taneyats.

Unfortunately, the profile is not open source at the time of writing this. However, taneyats will start selling the final version of the keycaps in early August, simultaneously publishing the STL or similar digital file which will be free for personal use.

Pic:

Resin printed keycaps of some early batches (beta version) were available at, and the page is also for notification: https://taneyats.booth.pm/items/4020198

Other than that, check out the author's Twitter channel for more photos: @taneyats


Sofle case

A Sofle RGB case designed and shared by drudge007.

This is a case for the Sofle RGB. It has a solid top plate and a shine-through bottom. The bottom piece attaches with 5 x M2 5mm screws. Once screwed in, put sticky feet on the circular pads and you're good to go.

I made my own case for my Sofle RGB in Fusion360. Why? I wasn't thrilled with the cases available, so I set out to make my own […] – drudge007.

The case was designed with the following in mind:

  • no screws inserted/visible from the top
  • a solid top piece so no seams or gaps are visible either
  • shine-through bottom because of the underglow LEDs

I wanted the underglow LEDs to actually shine-through, so the bottom plate would have to be really minimal – drudge007.

Resources

Files on Thingiverse: https://www.thingiverse.com/thing:5444009

The top plate was used from here: https://www.thingiverse.com/thing:5245688/files


Lily58 case

A Lily58 case by st4rmatt – inspired by the IMK Corne and the Manta58.

My Lily58 got a new case! This is a custom case I designed and had printed with SLS – st4rmatt.

There are two versions: with or without tenting support.

According to st4rmatt, the case was inspired by the IMK Corne and the Manta 58.

Files: https://github.com/starmatt/Starry58


Keyboard Yoga

Keyboard Yoga by ZSA Technology Labs is a different sort of typing trainer.

Developed by ZSA Technoloy Labs – the people who brought you boards like the Moonlander or Ergodox EZ – Keyboard yoga is a different sort of typing trainer that emphasizes posture and mindfulness over words per minute.

To say the truth, I was waiting for the actual typing part until the very end and thought the relaxation is only an intro. :D

Regardless, I found it a good experience with the calm music and the whole atmosphere.

As Erez Zukerman shared in his newsletter:

Most typing trainers […] focus on the output. The point is whatever's on the screen. We wanted to make a different sort of typing trainer, where the focus is on your body and the physical experience of typing. It's a short experience called Keyboard Yoga, and you can check it out below – Erez.

Check it out here: https://keyboardyoga.space

According to Erez, typing trainers tend to focus on the connection between your keyboard and your computer: Words showing up on the screen. So you have to hit certain words-per-minute or accuracy targets, focus on specific letter patterns, and so on.

As he writes in a comment on producthunt:

We wanted to focus on a different connection: The one between your body and your keyboard. So you don't have to type any particular words or hit a words-per-minute goal. Simply put on some headphones and type to keep the narration going. Pay attention to your body.

Keyboard Yoga is a timed experience — about ten minutes or less.

A way to take a break and pay more attention to the physical aspects of an activity you probably spend countless hours doing.

If you do like it, Erez want you to consider supporting it on Product Hunt, so more people can find ZSA and hear about what they do.


That was Issue #89. Thanks for stopping by.

This issue was made possible by the donations of:
PCBWay, splitkb.com, MoErgo Glove80, u/chad3814, Aiksplace, @keebio, @kaleid1990, Sean Grady, ghsear.ch, u/motfalcon, cdc, Bob Cotton, kiyejoco, Richard Sutherland, FFKeebs, @therick0996, MKUltra, Joel Simpson, Nuno Leitano, KEEBD, Lev Popov, Christian Mladenov, Spencer Blackwood, Yuan Liu, Davidjohn Gerena, Alexey Alekhin, Fabian Suceveanu, Upgrade Keyboards

Your support is crucial to help this project to survive.

Discussion over at r/mk!
×
top