The main problem is ergonomics, or rather, lack thereof, when typing at a computer for 8+ hours a day for years…
But there are also bad typing habits, and a split ortholinear ergonomic keyboard helps me replace them with good ones for the long term
Then there’s also a sense of pride of having built a tank keyboard yourself, fixing it if it ever breaks and customize it to your liking, as many times as you’d like, with perhaps different keycaps, different switches, different lights under each key, whatever tickles your fancy…
My solution(s) – ergonomic keyboards. More accurately – DIY split ergonomic mechanical keyboards.
And we’ll get into the why’s of each of these attributes in a minute.
Now, fair warning: the rabbit hole of custom mechanical keyboards goes very deep, and it may end up being a very expensive hobby.
In my humble opinion, it has everything going for it: split, custom, RGB, backlit, ergonomic, ortholinear with just-the-right-amount™ of thumb keyclusters (the keys are not staggered side to side like on a regular keyboard, but orthogonally, almost in a fairly square matrix, with the rows are offset to naturally match the shape of your stretched fingers), mechanical, open source everything, from the plates, to the pcb design to the wiring,
Certain components like the Pro Micro controllers, the keycaps, switches, TRRS and microUSB cables, the LEDs (both RGB and mono color) can be had for cheaper on AliExpress, if you’re willing to wait up to 3 months for the packages to arrive.
The cost savings are not radically significant however. Maybe cheaper, but when you factor in everything else, like your time, not really.
Heck, you can pick any open source PCB design files and have them ‘printed’ on demand from various local electronics services. Same goes for the plates, you could have them milled or 3d printed locally, if you wanna go cheaper.
But counting shipping from many entities and the hassle of different timetables for each of them, the unprofessionalism of some of these suppliers, the time it takes to put all this together, I chose to do business with the folks that have designed the keyboard, and I am very happy about the choice.
Some useful resources, both written and video embedded
TaeKeyboards short video tutorial on building this, which I found to be excellent:
Things I’ve learnt during my build
(tips & tricks)
bending led pins a bit before mounting to sit flush with the switches
order of things
source all the parts from the links above
dust off the soldering iron and supplies
put the diodes through the holes and bend their legs slighly so that they stay in place when soldering; careful to orient the diodes the right way, as they do have polarity, so the side with the black bar oriented to the bottom of the PCB in the case of the Iris, but it may differ in the case of other PCBs. It is usually marked clearly on the PCB what the orientation of the diodes should be
solder the diodes, then cut the legs excess off with a pair of flush cutters, just above the solder joints on the back of the board; if you decide to make your controllers ‘hotswappable’ as well, then keep all the diode legs for later
put the resistors for LEDs through the holes and bend their legs slightly, just like with the diodes at the steps above. Resistors don’t have polarity, and as such, their orientation doesn’t really matter, however, it looks nicer when they’re arranged symmetrically, in my humble opinion
solder the resistors, then cut off the legs on the back of the board just like in the case of the diodes
solder the MOSFETs and resistors for the underglow RGB lights; I found it easiest to apply flux and some solder tin on the PCB plate where the single leg side of the MOSFET would go, and solder that with a tiny amount of solder first, while holding it with a pair of tweezers in place in the correct position; then do the other two legs on the other side of the MOSFET
solder the TRRS ports and the reset buttons onto the back of the PCB.
flashing firmware onto the Arduino Pro Micros, both with the same firmare relevant for your keyboard, to make sure they are working before anything. See the flashing guide at https://docs.qmk.fm/#/newbs_flashing for how to build and flash your firmware. If you use ProMicros, and haven’t mucked about with replacing the standard bootloader, then it’s as easy as: make iris/rev2:default:avrdude. If you have opted for the Elite-C microcontrollers, then it’s make iris/rev2:default:dfu
the ProMicro controllers usually come with a set of ‘legs’, with a hard plastic around them, so that it raises the controller from the actual PCB when mounted. Solder those legs onto the PCB first, and *don’t* solder the ProMicros yet. One trick is to solder those legs at a slight angle, so that the ProMicro can be press fitted against them, to make contact. Unless you actually solder the sockets instead of legs onto the PCB, there’s no reliable way to test if your controller and the traces on the PCB work as intended, before soldering the damn thing fixed in place. Notice in the pic that the set of pins on which the microcontroller is ‘resting’ (actually press fitted) is slightly bent in a very suble slope, like / \ . Just ever so slightly, so it makes contact with the controller board when press fitting that in, with a small amount of force. Keep in mind this is not a sure-fire way to get this done, and the most reliable way is to actually socket your microcontroller, and have sockets instead of those pins, but that’s for antoher time
at this point solder the switches in, unless you have bought MillMax or Holtite sockets for your switches, in which case, come back later after I put together a how-to for those tiny bits, or find videos of how it’s done
press fit the ProMicros onto your PCBs against the legs you’ve soldered on, and pray that they make full contact with the controller pads. Plug the cable into your computer, and press all the switches and see if they work correctly.
if you went for backlighting, also insert the LEDs into their holes. The D in LED stands for diode, as such, mind the polarity. The longer leg of each LED should go in the whole marked with a ‘+’ sign on the PCB. Thus, the shorter leg in the hole marked with ‘-‘. Keep in mind that at this point, you still haven’t soldered in the microcontrollers, ProMicros or the Elite-C. You wanna press fit them one more time before soldering it in.
If everything works, go ahead and permanently solder your ProMicros onto the PCB. Note that on the master half (the left one), the ProMicro’s chip and other components will have to be facing the PCB, so ‘smooth’ side toward you, since you’re working on the back side of the PCB. Also, keep in mind that some ProMicro clones come with some J1 jumper pads on their top left corner, near the usb port. Don’t short it, leave it open if it is. There has been some conjecture on soldering that jumper as connected/shorted. Because people think it made it run truly on 5 Volts. Since you’re feeding the keyboard from USB, you’ve only got 5 or less Volts, so leave it unsoldered/disconnected. Soldering simply lets the VCC pin bypass the built in voltage regulator, if you have a power source that is higher than what’s required. Again, leave it off. The other half (PCB) will have to have the Arduino Pro Micro or compatible clone flipped over, meaning, with it’s chips and electronic components facing you, and its ‘smooth’ side towards the PCB. Otherwise each individual half will work on it’s own, but not together, or if they happen to by some miracle, you’d have the left half working fine, and the right half weirdly mirrored. I found that out the hard way… /facepalm.
socketing the Pro Micro using diode leg cutoffs and peel-away sockets, for some other time. After I get to do it again and take some valid pics of it.
Sometimes people want to buy a car that is new. Ish, I’d advise… Because if you use this information you’ll be the most empowered. And so you’ll be saving heaps of cash to use on more important things. While enjoying having a new car, for all intents and purposes. Continue reading →