geekhack Projects > Making Stuff Together!
Sanity checks requested on my first build
jfloren:
I'm embarking on my first custom keyboard build, out of a desire for a keyboard that's compact but also has lots of keys, something well-suited to Unix use rather than focused on minimal size, gaming, etc. I'd really appreciate if some more experienced builders could look over my plans and tell me if I'm going wrong anywhere.
My basic plan is to get a stainless switch plate, clip the switches on the plate, hand-wire the matrix, then use standoffs to position the switch plate over a corresponding base plate. This will get it up and running quickly & cheaply, then later I hope to get a nicer case made either by 3d printing, woodworking, or metal fabrication.
I did my layout on keyboard-layout-editor.com (cribbing heavily from various Lisp keyboards) then copied the JSON data into http://builder.swillkb.com/. I selected the following options:
- Switch Type: MX
- Stabilizer Type: Costar Only (to keep the cuts simple, and based on my reading I think I want to use Costar stabilizers anyway)
- Case Type: Sandwich
- Mount Holes: 8, 3.2mm hole width (for M3 screws), 8mm edge width
- Edge Padding: 30mm top, 10mm elsewhere
I put extra padding at the top so I have a place to put the microcontroller. I picked Sandwich case type so it would generate a base plate for me.
Q: Am I going to have problems with flex due to the size of the plate? It comes out to 401x192mm.
Having generated the CAD, I downloaded the switch layer and the bottom layer, then uploaded those to Ponoko. I selected "Sheel Metal Fabrication - 304 Stainless Steel - 1.50mm" for both parts, with Human DFM Analysis for the switch plate and automated analysis for the bottom plate (since it's just a rectangle with some holes). This looks to be about $135 total.
Once I get the plate, I'll order the switches (I've got a Cherry MX sampler on the way so I can figure out which ones I want), plug them into the plate, and wire up the matrix, then connect the matrix to my microcontroller.
Q: What's the best microcontroller for a large keyboard these days? I've got 102 keys across 8 rows and 19 columns using kbfirmware.com's layout.
Once everything is wired up, mount the switch plate to the base plate, program the microcontroller, and then presumably start the process of debugging what I've wired wrong!
My current plan for keycaps is to start off with a cheap set from Amazon and fill in the rest with blanks purchased piecemeal. However, if I'm satisfied with the keyboard overall, I'd ideally like to get a set made with precisely the font and labeling I want.
Q: What's the best option for getting custom keycaps at a small scale? I have a 3d printer, but I really love the deeply spherical & glossy keycaps you find on very old terminals, so something like that would be ideal.
jfloren:
Here's the plate:
Piperaceae:
The plate will be stiffer once you have the switches in there, but it might still flex in the center given how wide it is. I wonder if a few more standoffs placed between switches would keep it from potentially sagging?
Ponoko can be really expensive; I've had good experiences using SendCutSent for metal plates for much cheaper. (Note: Never, ever use SendCutSend for plastic. I've ordered sets of identical acrylic plates from them, only to have some arrive too long or short, with randomly-sized drill holes, and switch cutouts off by 3-5mm in any given direction.) But for aluminum, steel, and brass plates, they've always been perfect.
jfloren:
I'll compare SendCutSend, thank you!
I'm currently thinking about turning all those 2U keys around the sides, top, and below the spacebar into 1.5U keys just to cut down on the sheer number of stabilizers I'd have to install... it would also reduce the width just a smidge. On the other hand, it would mess up the alignment with the 1U keys on the bottom right...
wjrii:
Your basic approach should work absolutely fine, and frankly it will be immensely satisfying if you feel like it's something you want to do. Weird, completely bespoke boards that are still pretty cheap is exactly the spot in the hobby I've become most comfortable, and I love it.
Price wise, I found Xometry gave me a good quote for some TKL-size aluminum plates. I also use my 3D printer and cheap diode laser to do them at home. Your uploaded pic might be a touch older, but looking at it, I'd say that going with the eight perimeter mounting holes you mentioned would be better than four, certainly at least six, and one or two standoffs in the middle-ish would do you well, even with steel. That's not a HUGE board, but it's not small either and it's taller than many. You can always leave a screw out if you have them put in too many holes, but drilling new ones accurately is not going to be a lot of fun, finally, make sure you fillet the corners, either in swill or in a 2D CAD program. Don't want nasty sharp corners.
Layout, and specifically how it interacts with commercially available keycap kitting becomes the other thing you're going to have to deal with. Only you can know what's really important to you, but one of my struggles has been finding cost-effective keycaps that fit my layouts. This is especially true for sculpted profiles like Cherry and MT3. For instance, I make a lot of boards that need a 1.25u capslock key. Every set comes with tons of 1.25u, but very few for Cherry sets (to give one example) are in the correct shape for Row 3, and when they are they often have "tab" as the legend because they're intended for 40% keyboards. Looking at your layout, 2U top-row keys won't be hard to source, but that many will get pricy and you will have a lot that are either blank or say "Backspace." Similar situation with those bottom row ones and "0." You could pull something together with XDA, which has blanks available for pretty cheap, and eventually DSA or R3 SA could provide a slightly more high end experience while still having the kitting work out. Every time I try to price out dye-subbed SA in PBT from Signature Plastics, it comes out to about $160, and I only needed about four or five keys that weren't in some sub-kit. Do some window shopping on AliExpress and Amazon, and decide where and how you want to compromise, and think about whether accurate legends are important to you.
Like I said though, there's nothing like using your own creation as a daily tool, and we're fortunate that a DIY keyboard can work just as well and feel as nice as, if not the tippy top of the custom keyboard scene, then a very solid mid-range mechanical board.
EDIT to add: I've done 102 keys with a sane matrix layout on a Rasperry Pi Pico, or rather a clone with USB-C. Lots of GPIO, MHz to spare, and rather cheap. It is supported by QMK/Via now, and the new POG application walks you through generating and maintaining a Python based KMK firmware.
Navigation
[0] Message Index
[#] Next page
Go to full version