Discovering and rediscovering Topre

Remember the mechanical keyboard craze of the early to mid 2010s? Back when people started realising that the rubber membrane keyboards they had all been gaming on for years were actually kinda bad, and that new hip alternatives had just hit the block. Alternatives that made these clicky-ticky-tacky sounds that just made you feel good inside whenever you heard them.

I remember that era quite well. I was introduced to the world of mechanical keyboards when my brother lent me the first ever mechanical keyboard I typed on, a Razer Blackwidow with Kailh Green switches (comparable to MX Blue). I liked the sound it made, but I didn’t rate the feel of it that high. The keys required way too much actuation for your strokes to register. I wanted something different, something a bit softer. It just so happened that a new keyboard had just come out at that time which caught my eyes: the Coolermaster Novatouch TKL.

It’s actually wrong calling it a mechanical keyboard, since it doesn’t use mechanical switches. It’s likely the only western-made keyboard to use Japanese rubber dome Topre switches. If you’ve never typed on a Topre board, the feel is completely unlike any MX style switch. I’ve often heard it compared to MX Brown, but that comparison does not make it justice. An MX style switch, when actuated, has two contacts which physically touch to create an electric ciruit. Unlike MX style switches, Topre is an electro-capacitive switch. When actuated, a sensor on the PCB senses the change in capacitance between itself the movable parts above it. You never make physical contact with anything. There’s a softness to each stroke, and instead of a click it has this thock sound as the bottoming out is cushioned by the rubber dome. The way the key bounces back after you release it is just something you don’t get with a regular spring loaded plunger.

Explosion diagram of a Topre and MX switch
A look at the inner workings of keyboard switches. Topre is on the left and Cherry MX is on the right. Notice the rubber dome and lack of a physical actuator on the Topre switch.

The Novatouch is by far the best keyboard I have ever used. It was sleek, didn’t have RGB, it had those amazing Topre switches, and it was compatible with MX style keycaps (something I cared about back then). But, it had one giant Achilles heel: a micro-USB port.

I started having issues with disconnections after a few years of use. The cable would simply fall out of the port, or wiggle out slightly and lose connection. It reached a point where I felt it was completely unusable, and I had to retire it.

I started looking at other keyboards. The HHKB was obviously on my radar i) because of its Topre switches, and ii) because it had that cute 60% layout that hadn’t really taken off yet. It gave off those Unix hacker vibes, while just looking really cool.

But, it cost way more than I was able to put out on a keyboard at that time. I was a broke kid straight out of school. I had to settle with other alternatives.

I stuck with Coolermaster for a while. I had a Quickfire TKL with MX Brown switches, and then a full sized Quickfire with MX Blue switches. I had a POK3R and then an Anne Pro 2, both with MX Browns. I’ve had multiple Ducky keyboards, one of which had MX Red switches (probably my worst purchase). I even built my own at one point with Gateron Oil King switches. That one sounded nice, but it wasn’t really that nice to type on.

I hopped between a lot of different ones, I guess in search of perfection. It was impossible to settle, there was always something to dislike.

The last actual mechanical keyboard I used was a Ducky One 3 TKL, and I became really frustrated with it. For some reason, keyboard makers feel the need to bundle a bunch of macros and useless functionality in their keyboards, hidden away in function layers. Settings for the already useless RGB lighting, different speed modes, profiles, keys for controlling the mouse cursor; just overall superflous stuff. I had fat fingered some button once while I had the function key down, and suddenly it began to double or triple every keystroke. I would type “dnf” in my terminal and my keyboard would spit out “ddnnnfff”. Are the keycaps labelled in any way so that you can figure out which button it was you pressed? No, of course not. Try googling for a user manual when your keyboard is that fucked up.

It went in the bin, and I started digging through storage for a keyboard I could use while looking for a new one.

I dug out the Novatouch. The USB port hadn’t magically improved over the years, but I found that if I just didn’t move the keyboard at all, it would work. Not suitable for long term use, but at least as an interim keyboard it was fine.

Typing on it again after so many years made me realise just how much I had missed it. The choice of a new keyboard was obvious, it had to be a Topre.

I’m typing this on an HHKB Professional Hybrid, and I absolutely love it. I can connect it to my computer with USB-C or bluetooth. It takes two AA batteries, which I really love, means I don’t have to worry about some internal battery that will inevitably die on me, rendering the keyboard into e-waste. Unlike other 60% keyboards, thought has actually been put into its layout. Most 60% keyboards just chop off the function keys, the arrow key cluster and the numpad and call it a day. The HHKB rethinks the layout, and I love it! Backspace isn’t tucked away in the corner. The arrow keys are actually placed so that using them together with the function key isn’t an ergonomic nightmare. Control is on the home row where it should be. This I especially like, I’ve always rebound caps to ctrl:nocaps in Gnome/Windows anyway, so having it right there on the keyboard is really nice.

The HHKB keyboard layout
The HHKB ANSI layout. Notice the placement of control, delete and the lack of a menu key. A DIP switch at the back of the keyboard lets you use the delete key as backspace instead. Very handy!
The ISO 60% keyboard layout
The more traditional 60% ISO layout for comparison. Pretty much the same setup as a regular keyboard, only chopped down a bit.

It’s the first ANSI layout I’ve used. I’m from Sweden, so I’ve typed on a Nordic ISO layout my whole life, but despite that I find myself really liking this layout over ISO. I especially like that enter isn’t ginormous and that it conforms to the shape of all the other keys.

Only issue I had with the ANSI layout is that left shift is wider than on the ISO, and absorbs the key left of Z (the so called “102nd” key). On a Nordic layout this is where we have angle brackets and the pipe symbol, stuff you use quite often. Luckily, things can be remapped. Back in the day we would have done so by fiddling with xmodmap, but as the name suggests, it only works on X and I’m (finally) living life to the fullest in Wayland.

I discovered this really neat, slim, application called keyd. It runs as a systemd service, and configuration of it is really simple. All I needed in /etc/keyd/default.conf was:

[ids]
*

[altgr]
z = G-102nd
x = 102nd
c = S-102nd

This makes it so that AltGr-Z,X,C produces |, < and > respectively. I think I prefer this arrangment to having them all jammed into the same key.

I think I have finally reached the fabled end game of my keyboard journey. I could just type on this all day, it’s such an amazing feeling after years of subjecting myself to those terrible MX boards. It’s like meeting an old friend.

Now I just need to get one for work too…