diff options
Diffstat (limited to 'How to - Custom handwired keyboard.md')
| -rw-r--r-- | How to - Custom handwired keyboard.md | 114 |
1 files changed, 114 insertions, 0 deletions
diff --git a/How to - Custom handwired keyboard.md b/How to - Custom handwired keyboard.md new file mode 100644 index 0000000..b43ddcc --- /dev/null +++ b/How to - Custom handwired keyboard.md @@ -0,0 +1,114 @@ +--- +description: Process of how to create a custom designed hardwired keyboard +created: 2024-03-01 +--- + +TODO ROUGH PRICE + +## Plan +Start out by getting a rough plan of what you want to make, so you can order parts, as takes a while, if you wish to do +it cheaply. + +First of all you need to decide how big your keyboard needs to be, do you wish to make an 100%, macropad, ultra-compact, +split, do you want dedicated buttons for all 24 function keys? none of the above? + +You can play around with [keyboard-layout-editor.com](http://www.keyboard-layout-editor.com/) to find a layout you like, +see different layout under "Preset" + +Massive repo of inspiration: [keebfolio.netlify.app](https://keebfolio.netlify.app/) + +### Switches +#### Design (Will affect keyboard design) +- Cherry MX design (classic, old, bulky, readily available, cloned into oblivion) +- Low profile? + - Kalih Choc (Expensive, different keycaps) + - Others + - [gateron.co - Gateron Low Profile 2.0 Mechanical Switch](https://www.gateron.co/products/gateron-low-profile-mechanical-switch-set) + - [keychron.com - Keychron Low Profile Mechanical Switch](https://www.keychron.com/products/keychron-low-profile-mechanical-switch) +Unsure, order a Switch tester or ask a friend to try their switches, to see what you like +#### Type +Generally there 3 types, originally made by cherry, I'd recommend none of them +- Clicky - Typically blue (obnoxious) +- Linear - Typically red (Did I press that button?) +- Tactile - Typically brown (Mushy) + +But do limit your scope enough, so you don't lose interest before completing the core project. +Be ready to test ideas feasibility and scrap them if infeasible. + +### Switch matrix +So what parts do you need? +You need to decide which method you wish to use, to wire up your switches +- Matrix with diodes (recommended method) + - Requires 1 diodes per switch, diodes are cheap + - Cable routing is more manageable +- Straight (1 wire per switch to microcontroller) + - Requires enough pins + +An I/O expander can be used to add additional pins to a microcontroller, it's also useful for split keyboards, +as it can require only 4 pins (I²C + power and ground) from the microcontroller + +## Order parts (Consumables) +### Checklist +#### Keyboard specific +- Switches +- Microcontroller, look at [QMK Compatible microcontrollers](https://docs.qmk.fm/#/compatible_microcontrollers), +i recommend a RP2040 based microcontroller +- Keycaps? Do you want to order these or [3D print them](#3d-printed-keycaps) +- Diodes [aliexpress.com - 1N4148](https://www.aliexpress.com/item/1005005435418695.html) +- Split keyboard parts + - I/O expander route + - I/O expander MCP23017 + - Connector [aliexpress.com - TRRS headphone jack](https://www.aliexpress.com/item/1005003146932723.html) + - Cable [aliexpress.com - TRRS headphone cable](https://www.aliexpress.com/item/1005001781279058.html) + +#### General maker +- 3D printed filament +- Solder tin +- Extra features? +Get wild, add an old [ThinkPad trackpoint](https://docs.qmk.fm/#/feature_ps2_mouse), +a [rollerball mouse](https://shop.pimoroni.com/products/trackball-breakout?variant=27672765038675), +rotary encoder, maybe LEDs. +- Heat shrink tube +- Magnet wire (can come in handy) + +### Tools - non consumables +- 3D printer +- Soldering iron +- Continuity tester (for debugging connections) +- + +## Waiting for parts +### Layout design finalisation +Staggered? +Ortholinear? +Something else entirely? + +[keyboard-layout-editor.com](http://www.keyboard-layout-editor.com/) + +[keyboard-layout-editor.com - My layout](http://www.keyboard-layout-editor.com/##@_backcolor=%23000000%3B&@_c=%230096a7&t=%23ffffff%0A%0A%0A%23ff8616%3B&=Esc%0A%0A%0AFnLock&_c=%236d6d6d%3B&=F1%0A%0A%0A%3Ci%20class%2F='fa%20fa-volume-off'%3E%3C%2F%2Fi%3E&=F2%0A%0A%0A%3Ci%20class%2F='fa%20fa-volume-down'%3E%3C%2F%2Fi%3E&=F3%0A%0A%0A%3Ci%20class%2F='fa%20fa-volume-up'%3E%3C%2F%2Fi%3E&=F4%0A%0A%0A%3Ci%20class%2F='fa%20fa-microphone-slash'%3E%3C%2F%2Fi%3E&=F5%0A%0A%0A%3Ci%20class%2F='fa%20fa-sun-o'%3E%3C%2F%2Fi%3E-&_x:3%3B&=F6%0A%0A%0A%3Ci%20class%2F='fa%20fa-sun-o'%3E%3C%2F%2Fi%3E+&=F7%0A%0A%0A%3Ci%20class%2F='fa%20fa-caret-left'%3E%3C%2F%2Fi%3E%3Ci%20class%2F='fa%20fa-caret-left'%3E%3C%2F%2Fi%3E&=F8%0A%0A%0A%3Ci%20class%2F='fa%20fa-play'%3E%3C%2F%2Fi%3E%3Ci%20class%2F='fa%20fa-pause'%3E%3C%2F%2Fi%3E&=F9%0A%0A%0A%3Ci%20class%2F='fa%20fa-caret-right'%3E%3C%2F%2Fi%3E%3Ci%20class%2F='fa%20fa-caret-right'%3E%3C%2F%2Fi%3E&_t=%23ffffff%3B&=F10&=F11&=F12&=Delete%3B&@_c=%23262626%3B&=%60%0A~&=1%0A!&=2%0A%2F@&=3%0A%23&=4%0A$&=5%0A%25&_x:3%3B&=6%0A%5E&_t=%23ffffff%0A%0A%0A%23ff8616%3B&=7%0A%2F&%0A%0A7&=8%0A*%0A%0A8&=9%0A%28%0A%0A9&=0%0A%29%0A%0A+&_t=%23ffffff%3B&=-%0A%2F_&=%2F=%0A+&_c=%236d6d6d%3B&=BckSp%3B&@=Tab&_c=%23262626%3B&=Q&=W&=E&=R&=T&_x:3%3B&=Y&_t=%23ffffff%0A%0A%0A%23ff8616%3B&=U%0A%0A%0A4&=I%0A%0A%0A5&=O%0A%0A%0A6&=P%0A%0A%0A%C3%97&_t=%23ffffff%3B&=%7B%0A%5B&=%7D%0A%5D&=%7C%0A%5C%3B&@_c=%236d6d6d&t=%23ffffff%0A%0A%0A%23ff8616%3B&=Comp%0A%0A%0ACapsL&_c=%23262626&t=%23ffffff%3B&=A&=S&=D&_n:true%3B&=F&=G&_x:3%3B&=H&_t=%23ffffff%0A%0A%0A%23ff8616&n:true%3B&=J%0A%0A%0A1&=K%0A%0A%0A2&=L%0A%0A%0A3&=%2F:%0A%2F%3B%0A%0A-&_t=%23ffffff%3B&=%22%0A'&_c=%230096a7&w:2%3B&=Enter%3B&@_c=%236d6d6d%3B&=Shift&_c=%23262626%3B&=Z&=X&=C&=V&=B&_x:3%3B&=N&_t=%23ffffff%0A%0A%0A%23ff8616%3B&=M%0A%0A%0A0&=%3C%0A,%0A%0A,&=%3E%0A.%0A%0A.&=%3F%0A%2F%2F%0A%0A%2F%2F&_c=%236d6d6d&t=%23ffffff%3B&=PgUp&_c=%23c1c1c1&t=%23000000%3B&=%E2%86%91&_c=%236d6d6d&t=%23ffffff%3B&=PgDn%3B&@=Ctrl&=Super&=Alt&_t=%23ff8616%3B&=Fn&_c=%23262626&t=%23ffffff&a:7&w:2%3B&=&_x:2&c=%23c1c1c1&t=%23000000&a:4%3B&=mous1&=mous2&=mous3&_c=%236d6d6d&t=%23ffffff%0A%0A%0A%23ff8616%3B&=Menu%0A%0A%0AInsert&=Home%0A%0A%0APrtSc&_t=%23ffffff%3B&=End&_c=%23c1c1c1&t=%23000000%3B&=%E2%86%90&_n:true%3B&=%E2%86%93&=%E2%86%92) + +## Other great guides + + +## Switch plate generation +### Testing fit + +### 3D printing +#### 3D printed keycaps + + +### Wiring test 3x3 +The best way to eliminate unknowns and avoid wasting work, is by wiring up a small part, and testing this + +### Firmware setup + + +### No unknowns, home run, final stretch, grind + +### Extra firmware features +Inspire, show opportunities +grep QMK repo + +### Show off + +### Get ideas for your next version \ No newline at end of file |
