12 Apr 2013, 01:57

Split design

Symmetrical parts. Same positions have opposite roles (like del vs backspace)

No stagger (just wanted to try that out and that looked easier for my project)

Minimum differences from standard layout

Pinky should press less keys

Thumbs and index fingers press more

keycaps of regular sizes (WASD has only standard keys and each row has its own profile, so for example I could not order 1.25x for 3rd row)

64 keys (due to shift registers used)

No fancy key placement, just keys organized in rows

Homemade PCB

layout.PNG (22.7 KiB) Viewed 12072 times

arrow keys instead of jkl and i.

F1-F10 instead of 1-0

IMG_20130319_005834.jpg (357.51 KiB) Viewed 12072 times

IMG_20130319_005120.jpg (450.29 KiB) Viewed 12072 times

Hi there! I'm a new member and here is my small project. I hope it would be interesting for community.I wondered why traditional keyboard layouts don't allow thumb finger press more keys than just a Spacebar. Ctrl/Alt keys often are parts of useful shortcuts especially in different IDEs/advanced editors/terminal emulators etc.And that's why I always wanted to find some way of pressing Ctrl/Alt key with thumbs. First decision was to use Apple keyboard (wired, without numpad block), it has short Spacebar and both command keys are accessible with thumbs. I set up remapping and it worked for me at first but then I decided to go further. And that's how I started making my prototype.Main requirements were:I touch type so there was no need in labels, blank keys looks cooler and I could always remap them to something else without re-labeling.There was a spare Arduino board so I decided to use it as a controller.I ordered blank key caps set (and few additional keys), cherry MX blue switches from WASD.Constraints were:Actually I have been highly impressed by Key64 and Humble Hacker designs so there are many ideas from those keyboards.What I added is: [ and ] keys on different sides (not just right), += key in place of CapsLock (pretty frequent key as for programmer). Four keys for each thumb. And Since Cherry MX stems are plus signs I turned those four keys upside down for comfortable pressing.I tried different designs but finally came up with this one (this is main layer):FN key turns second layer on. Main features here are:This is how it currently looks:Keys are PCB-mounted only, without plate, I put a diode in each so there are 4 leads per switch and they keep switches firmly.Since there are 64 keys I used 8x8 scanning matrix, that would require 16 free pins on Arduino.I used two shift registers, 74HC164 and 74HC165, one for input (rows) another for setting a columns which is currently being scanned.Arduino is driving them and outputs keypresses via USB to host (reprogrammed USB chip acts as USB keyboard)Each half contains 4 rows by 8 columns so there are 12 wires attached to each board. Breadboard in the middle contains shift registers. and then only 7 wires go to arduino (3 for one register, 2 for another and vcc/gnd).No problems with multiple pressed keys, 6KRO, Firmware actually remembers more than 6 presses but due to USB protocol limitation sends only last 6 pressed keys.Next step is to make some case for it, just have to figure out how to do it better.It would be nice to hear some ideas/suggestions.PS. I'm using this keyboard right now