After typing with the stock Kinesis for the last few days, I couldn't wait for the components to arrive. The original layout has no windows/super key, which I heavily use for my window manager (sway) and since the "Essential" version I have is not programmable, I wasn't able to use any other key for it. There are probably things I can do in software, but why bother if the controller is going to be replaced anyway.
All parts arrived. I went with the Nice!Nano version of the PCB as it seems to be the most flexible. Shift register IC, diodes and the controller itself were no problem to source, but I wasn't able to find the proper connectors for the thumb PCBs. It is some kind of Molex connector and even though the original Pillz mod instructions have the part numbers, they were hard to get in small quantities for an acceptable price.
I opted to just re-use the original connectors for the keywells and the original 1x10 pin cable for the thumb clusters. They all were painful to desolder and re-use without damaging them, but it all worked out fine.
The controller and IC are socketed in the original build guide, so I did that aswell. A small detail the guide doesn't really make clear, is that the sockets have to be very low profile to fit inside the case. Of course, I used too high sockets, and realized it all didn't fit when trying to close the case.
As I also want to have the option of using Bluetooth, I added a 2000mAh battery (double-sided tape) and a switch for it. The switch is easy to install, just drill a small hole and use one of that has a counter-nut to fix it. Two wires will let you place it in line with the positive battery connection. I suspect the battery will last quite long even without it.
There is a small connector on the Pillz Mod PCB that can be bridged to increase the charging power for the battery, which I used. There is also a second one that allows using the last LED on the board (unused due to the Nice!Nano missing on pin for it) as "on" indicator. It is quite handy when using a battery as you can see the state of your switch and prevent from draining the battery if the keyboard is disconnected.
For the front LEDs I opted for white. They need to be the 1.8mm size otherwise they won't fit into the housing. I also added a buzzer, the PCB has pads to solder one. I haven't used it yet, but why not.
After finishing it all up, a few cable-ties are a good idea. The keyboard is portable since it Bluetooth and is also constantly being typed on making big dangling wires, easy to break solder joins.
There is an image that can be flashed onto the Nice!Nano and supports ZMK studio. It worked first try!
ZMK studio lets you modify the layout graphically on the fly without having to flash a new image every time you change something. It works only on chromium based browsers as it uses web-serial.
It has "unlock" key combination you need to press in order to start remapping keys. This is a security feature to prevent arbitrary applications form remapping your keyboard unintentionally.
Of course, I forgot to bind that key when creating my keyboard layout and screwed myself over. No unlock key: no more remapping. I had to re-flash the ZMK image, onto the controller, which is only possible if you put the controller into flashing mode, which is only possible if you press the reset button or short two pins.
After opening the case up again and re-flashing the keymap changes were still there. How???
It seems the image only overwrites some parts of the configuration, not including the keymaps. You have to compile a dedicated "cleaning" image, which wipes everything, then re-flash the one you actually want. I did all this painful procedure and now I have a usable ZMK again.
Lessons learned: Don't forget to bind the ZMK unlock key.
In contrast to a lot of other "minimal" ergonomic keyboards, the kinesis
promotes typing the right way: by having shift
, ctr
l and other modifier keys on
both sides and allowing you to press key combinations always with both hands.
I don't get why nobody seems to care about his, why all the fuzz about layers
and ergonomics, if you have to press shift wrong half of the time?
Wanting to keep that, I realized I don't really have any spare keys to map to Super, which was my initial motivation. I solved this by using ZMK's mod-tap feature on the "Home" and "Page Up" keys, reachable with the thumbs: Pressing them more than 200ms (holding down for a combo) lets them act as Super key, while a short tap keeps their original function. This works very well for me without sacrificing any functionality.
And that is about everything I had to change on the layout. It works perfectly. Even Bluetooth is flawless. I tried just for fun, and it even works when paired to my phone.