Many Adafruit Feather boards are capable of simulating USB HID devices, like keyboards and mice. So why not have a shield that makes it easy to add a small macro keyboard to your computer? Or, you know, a set or really nice buttons with color LEDs to your project.
So a few words about this project in the context of the contest it was created for. Sure, the design is very simple, and it wasn't much work, but I think it's a genuinely useful product, especially for beginners. It lets you experiment with real mechanical keyboard switches (and some nice blinky lights) without large risk usually involved in making a large expensive keyboard. It fits several of the contest categories:
You’ll Cut Yourself On That Edge — it so happens that the Kailh chocolate switches used in this design are relatively new — I think the first keyboards using them only appeared a year or two ago, and they are still a rarity in the mechanical keyboard communities. You can tell by how hard it is to find key caps for them.
Retro Feather — what is more retro than a mechanical keyboard? Those are the kinds of keyboards that were made for computers back when they costed more than an airplane and had the computing power of a watch.
Assistive Tech — a dedicated macro keyboard such as can be built with this is an excellent usability- and accessibility-enhancing tool. But you don't have to stop there — experiments with chording, durations, modes, etc. can lead directly to improvements with our current keyboards and other input devices. You can also use it as a component in more complex devices — add an accelerometer and you ave an airmouse with three buttons.
Wireless Feather — fine, that's the second category that doesn't apply to this project.
Yeah, I decided to give the tiny keyboard thingy one more try, this time with solder paste and hot air gun. Turns out those small buttons have a pretty narrow thermal curve — they get crispy really easily.
Also, weren't they supposed to just magically pop right into their places, instead of clustering together into a single mega-button?
The PCB for the crazy tiny keyboard arrived as well, and I had a stab at soldering the buttons by hand. I got as far as the second button of the second row and decided that it's not going to work. My tiny soldering iron tip is simply too big for this.
I might give it another try with solder paste and hot air gun, but I really don't have much hope for it. It's also pretty inconvenient for typing with your thumbs, so I guess I will just call this one a failure.
The PCBs arrived already, so I assembled the prototype. Of course it's a very easy design, so I had to do something wrong — in this case, the holes in the switch footprint are slightly too small. I will need to add some 0.25mm to them to make the switch fit in there, but for now I just used the reaming tool to enlarge the holes.
Soldering the APA102 RGB LEDs was a bit of a challenge, but with a few tries with a hot air gun I got them all to light up. There should be no problem with them when done with solder paste and an oven.
You can see that the holes on the sides are staggered — that means you can insert your pin headers in there without soldering, and it will give you good enough connection still! Of course if you get any problems, you cal always solder them.
While the switches fit within the board's outline, the key caps you put on them might stick out a little bit to the sides, but I think that it's fine, as then you can make a case for the device that is exactly flush with the key caps.
Just three keys may be useful, but seems like a very simple thing, so I decided to try and also make a more advanced version. This time it's a full keyboard, using the smallest switches I have in my drawer.
I'm not sure if I will have the stamina to actually assemble it, but since I was ordering the PCB for the 3-key version anyways, and the main cost is shipping, I decided to throw this design in.
On the back there is a single atmega to do the scanning of the matrix. Since there is no way I could fit diodes for every key in there, they keyboard will have ghosting effects. I added a separate column just for the special keys, like shift, function and so on, to mitigate that a bit. It's going to talk to the parent board over serial.
So let's get this thing done. First, it's good to start with a mock-up, so that we catch any obvious errors:
I also checked that the APA102 LED fits inside that window in the switch. All seems good, so let's work on the footprint. Kailh has some dimensions in their docs:
That lets me draw the footprint in Inkscape and import it into Fritzing. I already had a footprint for the APA102 LED, so all that is left is to route it all:
The keys go to their own pins each, and the LEDs are chained together and connected to the SPI bus. The DRC check passes, I can't see any obvious errors, but it's past midnight already, so I won't be ordering this PCB yet. I will wait until morning, to take one more look at it, and then order it, like a responsible person that I pretend to be when someone is looking.
Basically there is this contest for a FeatherWing going on now, and I have those three spare mechanical keyboard switches left over from #5plit Keyboard Clone, so why not put them on a PCB with some LEDs and add some transparent key caps?
Lepiej dodaj po prostu wyświetlacz e-ink dla każdego klawisza