elephant42 choc hotswap rewire
git: https://isaacelenbaas.com/git/elephant42.git
tar: https://isaacelenbaas.com/git/elephant42.tar.gz
My fingers other than my pinkies are much longer than my pinkies. After trying a few keyboard designs I found illness072's elephant42, which fits my hands perfectly. I wanted it even more low-profile, so I did a from-scratch choc v1 hotswap wiring which somehow, despite my lack of any EE or breadboard experience, worked. Keyboards aren't complicated, but I'm still astounded.

The choc v1 keycap situation is pretty bad, so I didn't order any at first to see if it would work well enough without any - as you can see, they have a larger profile than most keyswitches. The elephant42 fits my hands perfectly, so it did, and I have been using it like that since 2022.
I was able to hide nearly all of the wiring on the back side, and I quite enjoy the couple of traces that are visible on the front. I'm really happy with how this turned out; I think this is my endgame keyboard. JLCPCB's five-board minimum also meant I had enough boards to make two for home, one for work, give my parents one to put on the wall, and still have a spare.
illness072 had starred this repository when it was on GitHub which felt great - thank you for the great design, illness072!
If you are constructing this board, note that the wiring for the right side is different. I flipped things while illness072 used the same pinout for both sides. The elephant42/keyboard.json will need this added under "split":
"matrix_pins": {
"right": {
"cols": ["D1", "D0", "D4", "C6", "D7", "E6"],
"rows": ["F6", "F7", "B1", "B3"]
}
},
If using encoders, add this at the root:
"encoder": {
"rotary": [
{ "pin_a": "B2", "pin_b": "B6" }
]
},
and this under "split":
"encoder": {
"right": {
"rotary": [
{ "pin_a": "B5", "pin_b": "B4" }
]
}
}
I use Auto Shift and one symbol layer. Though the concepts were thought up by others, I rewrote Auto Shift and did most of the implementation for Retro Shift, custom auto-shifts, and making modifiers auto-shiftable. I do not feel pressured for space outside of games with lots of keybinds.