columnar (split) keyboard configurator
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ragnar a95eaaabf5 just to sync changes, state is probably bad 4 months ago
doc renamed from lpcats to ckc 10 months ago
.gitignore planning the column joiners and such 1 year ago
LICENSE Initial commit 2 years ago hulling to join columns of course doesn't work, dummy 9 months ago just to sync changes, state is probably bad 4 months ago
ckc.scad init polyhedra works, now we gotta parse the input 4 months ago
config_curved_example.scad just to sync changes, state is probably bad 4 months ago
config_flat_example.scad added some valiadtion and such 5 months ago
example.png updated the example image 8 months ago
helpers.scad added some valiadtion and such 5 months ago
join_cols.scad just to sync changes, state is probably bad 4 months ago
solids.scad just to sync changes, state is probably bad 4 months ago
utils.scad _jc_split -> _jc_custom, make as many as you like 4 months ago


Columnar (split) Keyboard Configurator

What is it?

CKC is an OpenSCAD script that generates a keyboard (the keyswitch holding plastic part) based on a user-supplied configuration script (config.scad). The goal is to make it quick and easy to iterate your keyboard design by just tweaking a few values instead of having to manually design everything from scratch. To ensure that you are actually able to iterate your designs fast CKC is written with render speed as a primary goal - the preview of a five column keyboard side, all with unique curvatures, relative offsets (stagger) and angles takes about a quarter of a second to render on a decade old macbook pro (i7-3520M with 8 GB 1600 MHz DDR3 RAM). The final render on the same machine takes about 15 seconds.

tl;dr you provide a config.scad-file and it generates one half of a split keyboard.


Very much pre-alpha. You can config your columns and thumbcluster (to a certain extent) but not much else. See the for a more up to date state of things.


They're in the started some docs for the previous version of this project (when it was "just" a keyboard), that's what's in the in the doc-folder, but that's not really relevant anymore..


What i originally wanted was just to build a keyboard where i could iterate the designs quickly by having configurable columns (shape, number of keys, rotations, etc) and thumbcluster, and then for the rest (walls and base) be generated automagically. As i started writing it tho, it turned more and more into a keyboard-generator than just some extra config-options for a predefined keyboard - so that's where i am now. I still have very little time to put into it, but i trodd along whenever i get to it. At some point i'll make some more configs to display here but for now i'll keep this not-so-up-to-date version with a semi-random config: right hand part with curved columns and an ugly thumbcluster


I have broken my wrists, thumbs, and fingers a whole bunch of times, am sort of missing a knuckle and have been writing code on and off for soon 25 years. My hands are also kinda klumpy and wrists are quite unpleasantly kinked when on the home rows on most keyboards. I do have the kinesis advantage and advantage2, which are just wonderful - but i still think there are a few ways they could be improved upon.. hence the idea of a "quick and easy" way to design a keyboard.


Unlicense/public domain