A mechanical keyboard that has exactly what you want. A small problem, especially a few years ago. My required specification list for my replacement keyboard contained: PS/2, Cherry MX brown/white key switches, n-key rollover, and volume up/down keys. Said feature set is not ubiquitous and was nonexistent a few years ago. Most keyboards favor the Cherry MX black for gaming, or the noisy little shits called the Cherry MX blues. The only other major issue with my requirement list is the pair of volume up/down keys. The reason I want those volume keys stems from the fact that the only way for me to control my headphone volume is with the system volume control. If you want to change volume on your headphones while playing a game with sound cards that have a headphone amp, you can either use your media keys, alt-tab out of your game, or just grin and bear it. Fortunately, the keyboard landscape has improved with the rush of ‘gaming’ keyboards, however most are typically just as useless, and they were a bit late to the party.
My compromise was to get a keyboard lacking the volume buttons (Das keyboard), make a little box on the side that did have those nifty little volume buttons, and maybe throw in some other useful buttons at the same time. I evaluated a variety of options to get this done, from the x-key 24, to making a custom USB box with buttons on it. Guess what I did.
Welcome to the keyboard part farm; a cheap 10-dollar multimedia keyboard that provided the keyboard controller I needed. This keyboard is one of the most despicable piece of **** rubber dome keyboards I have ever tried to type on. Seriously, this keyboard is so bad you would not believe it. Fortunately, that is not an issue since I threw those out.
The extracted keyboard controller, top view. Two screws hold it to the keyboard frame, one in each of the smaller holes. The top button there was the keyboards power button. I did not want that button, so it’s the first thing to be cut off.
Underside of the keyboard controller, with markings. The black line indicates a trace that would need replacing after I damaged it, the pink section indicates sections of the controller I would not need, and the 1s indicate which contact is the staring contact for my keyboard matrix chart. The cyan lines indicate the keyboard traces I would need to connect to my aftermarket switches.
My planned wiring mess, overlaid on top of a cad image of the enclosure and a picture of the controller. It is possible to figure out what is going where in this image, but to make my life easier, I used the magic of Adobe Photoshop layers to single out individual wiring groups. The squares with text in them are the space where the buttons go, and the number/letter combination is the required keyboard matrix combination required for each buttons respective function. This image has no accommodation for the USB cabling or the symbol illumination, which would go later.
3d mockup of my design.
My certainly not USB compliant LED lighting minus one. That odd LED out is at an angle to make room for the USB connector, because I (dumbly) chose bigger LEDs. This LED and resistor combo works fine with the 5v USB input, but I have no recollection of any of the details, other than what the resistor value is from my shopping list.
This is not USB spec, since the LEDs will always draw power from the USB port, and no device on the USB bus knows they exist or that they are drawing power, so the power draw reported by the keyboard controller to the upstream USB port will be incorrect. This is bad if you hook up more power drawing stuff to one port than it can provide, because while compliant devices should only try to draw power if the controller says it is okay, this will suck power down no matter what, which can cause damage to your devices. The only (practical/easy) way to work around this is to get a keyboard controller that does have points for driving LEDs, and thus should report the correct current draw.
From this point on comes the fantastically fun part of cutting out the casing and making the light windows for the LEDs. Since I (stupidly) never took pictures of this single most time consuming segment, you will have to use your imagination. I printed out my cutting diagrams and such, and then cut the necessary holes in my enclosure. the glowing illumination points were made by cutting out the necessary shapes in the plastic with a drill and a few small files, then applying an even layer of tape(in this case some random packing tape that conveniently had a nice high temperature capacity), and squirting hot glue through the other side of the hole.
Macro of one of the buttons (one year after construction) this gives you an idea of the finish hot glue and packing tape provides. The edge of the glue looks a bit messy and scummy, something that is not humanly visible, although several years of use does not make things cleaner. It is possible to use any other form of substance that will dry and harden (theoretically acrylic floor wax would work), as long as it does not stick to the tape. The taping is necessary to result in a clean flush finish, as seen in the above picture. I would not recommend trying to make a smooth finish by cutting down glue after the fact, since getting the glue flush and clean will be extremely challenging without making the glue rough or damaging the surrounding area.
Test fit of all the stuff before a few final wires and stuff go in. The extra led(s) and their necessary resistors can now be seen in this picture. Some of the switches have not been connected as of this picture; hence some switches lack wires soldered to their tabs. It is relevant to note that the tabs coming off the switches are bent outwards. This was to reduce the clearance required, so that the PCB has more than a millimeter of clearance. Bending your switches is definitely not a friendly thing to do to them, but as long as you don’t break them, it works. Scotch tape has been applied to all the potentially problematic components on the controller board to avoid shorting the led lines and switch ends to something wrong. Scotch tape is not a good choice here, especially for the long term, as it is not designed to be electrically insulating like electrical tape. I am not sure why I did not use e-tape, it’s not like I had a shortage of the stuff. I did not minimize the circuit board further for reasons I do not remember (probably laziness)
Picture of the thing all reassembled and not yet powered on. You will notice there is no USB cable coming out of this device. If you were paying attention, you will have noted that I put a USB-b connector on the box, so that I could detach the cable, a feature that I think is very convenient and much unused on many devices. Maybe I will get around to adding something like that to my keyboard.
(Blurry) picture of the device on its first power up! The actual led color is less green as portrayed by this image, as the LEDs chosen are 555nm LED. Most green devices used in computers are a much deeper green at 535-520nm wavelength. Just so you know for your future mod endeavors so you don’t accidentally get a more yellow color.
Action shot, with accompanying modified Razer diamondback, modified das keyboard, and thoroughly worn out keyboard rest from a Saitek eclipse.