Darknight: a 60% split keyboard

macroxue

20 Dec 2017, 18:09

It’s the most wonderful time of the year, time to build another keyboard. Last year around the same time, I built a 75% split keyboard, which I’ve been using for a year. I’m quite happy with it but I need another one for my second computer, so I may just make a few tweaks as well. Below is the outcome, which I properly named Darknight for the color theme, and I will elaborate more on the changes.
IMG_20171219_203122.jpg
Darknight: a 60% split keyboard
IMG_20171219_203122.jpg (1.82 MiB) Viewed 1090 times
The Layout
The first change is to downsize to 60% by removing under-utilized function keys and dedicated control keys. I modified the firmware to have dual-role modifiers, i.e. a modifier produces some other key when it’s pressed and released on its own, pretty much like xcape tool in Linux. With this enhancement, left Control and Esc now share the same physical key, so do right Control and Enter. The only drawback is that Esc and Enter cannot auto-repeat, which I don’t have a problem with.
keyboard-layout.jpg
Keyboard layout
keyboard-layout.jpg (55.93 KiB) Viewed 1090 times
Another important change is to move Fn under left thumb, so it’s effortless to access arrow keys and other cursor-moving keys in the Fn layer. Since Fn and Backspace now share the same physical key, Backspace cannot auto-repeat in the base layer, which is compensated by auto-repeatable Backspace in the Fn layer.

The thumbs are still in charge of two keys each but the keys are shifted toward the center to make room for more keys in the bottom row. Do I need a larger thumb cluster? Probably not. Below is my finger assignment. My habit is to let ring fingers take over the top two rows for the pinkies.
keyboard-layout (1).jpg
Finger assignment
keyboard-layout (1).jpg (63.02 KiB) Viewed 1090 times
The Contour
The keys are contoured but no where near a key well as in Kinesis Advantage. With raised keys for index fingers and pinkies, my left hand can comfortably rest on {Z, S, D, F, Backspace}, and right hand on {Space, J, K, L, /}. Therefore, I settled on the matrix layout without staggering the columns. I actually raised keys for index fingers even higher than before so there is less stretch reaching them.

It will be interesting to rearrange keys in the inner pinky columns to {2, `, Q, A, Z} at the left and {-, \, P, ;, /} at the right, so the pinkies still rest on A and Semicolon, just like a standard layout. I will give it a try and see if I can get used to it.
IMG_20171219_210647_up.jpg
Contour
IMG_20171219_210647_up.jpg (2.12 MiB) Viewed 1090 times
The Cases
This time I switched from ABS to PLA filament for 3D-printing the cases. The result looks no different but PLA melts around 60 °C so I need to be careful not to get the keyboard near any heat source.

The empty area toward the center serves two purposes. One is to leave enough room for the micro-controller and wiring inside the case. The other is to support a touchpad outside and between the two splits.

The Wiring
I cut a 0.5mm copper sheet into stripes and drilled holes on them for soldering diodes into. I got quite a few loose soldering points with the previous build so I hope this time they will be much more solid.

The two splits are connected by a black USB Type-C 10Gbps cable, aesthetically more appealing than a colorful ribbon cable in the previous build. One thing I learned in a hard way was that the cable must be grounded to avoid ghost keys popping up.

All the wires connect to a Teensy 3.2, in a quite messy way. I cut the wires longer than necessary so there was a big margin of error in case of screw-ups. The mess is covered up nicely within a case anyway.
IMG_20171219_205512.jpg
Wiring
IMG_20171219_205512.jpg (2.29 MiB) Viewed 1090 times
What’s Next?
I will probably use this keyboard for another year before building a new one. A small tweak is to add some LED lights to indicate the current layer but I don’t feel strongly needing it. Another thought is to improve tenting and tilting for better ergonomics. More interestingly, 3D-printed circuit to avoid all the wiring mess is also fun to explore.

User avatar
OldIsNew

21 Dec 2017, 00:45

Very nice! I can't really touch type so a keyboard like this would be beyond me, but looks very cool!
macroxue wrote:
cut a 0.5mm copper sheet into stripes and drilled holes on them for soldering diodes into...

All the wires connect to a Teensy 3.2, in a quite messy way.
I also really like the idea of using the strips of copper sheeting and I think your wiring looks rather tidy. I usually end up feeling lucky that I'm able to to get the case closed again by the time I'm done.

User avatar
Menuhin

21 Dec 2017, 12:09

Out of the box thinking the Planck users should learn from.

I probably will borrow a few tricks from your default layout for my Ortholinear builds. :)

User avatar
FletchINKy

25 Jan 2018, 16:34

You said you used a black USB Type-C 10Gbps cable?

Did you use the actual connectors like a breakout board for a hardware connection or does the USB type c use a protocol to send updates from the half?

Also great point about the grounding! I've been looking at different multi-conductive cables for hardware split wiring and I always wondered about cross talk or interference. The grounding makes a lot of sense!

macroxue

29 Jan 2018, 03:32

I purchased two breakout boards but was unable to solder wires on them cleanly. The soldering points were so close and wires tended to touch each other after some moving and bending.

Eventually I cut the cable open and used it for direct connections, not going through any logic/protocol in a breakout board. This was probably a good thing since the keyboard only needed direct connections; otherwise, I could be pulling my hair trying to reverse-engineer the logic/protocol.
FletchINKy wrote: You said you used a black USB Type-C 10Gbps cable?

Did you use the actual connectors like a breakout board for a hardware connection or does the USB type c use a protocol to send updates from the half?

Also great point about the grounding! I've been looking at different multi-conductive cables for hardware split wiring and I always wondered about cross talk or interference. The grounding makes a lot of sense!

Post Reply

Return to “Workshop”