Post continued from previous post.
So building the keyboard actually begins with you placing the switches in the desired through-hole, um, holes in the PCB. This way, you’ll know the layout you want. I’d recommend you put the keycaps on too and test them like they’re a finished board (it’s fun). It was at this moment, I realized my left-shift keycap wasn’t a 2u size like I planned it to be, which means I probably have to buy a new set of keycaps to avoid being laughed at. [more on this later]
[Quick note: I hit a semi-roadblock for a few days because the USB-mini cable I ordered had only 4 pins compared to the 5 needed. Probably shouldn’t stinge on an extra S$2 and end up wasting time and money. No matter, TaoBao-ed a solid one from the same supplier.]
The next step is to solder the switches onto the PCB, a light amount of solder will do, since the pins are really thin in comparison to the PCB holes. It also helps if you have to remove switches for troubleshooting or a change of layout, which I needed to do, due to the perennial problem of I’m careless as heck when it comes to software. It’s an amazing moment when you first connect your PCB+switches skeleton to your computer with your USB cable and hear the cute ‘device detected’ jingle on Windows. Truly music to the ears.
Now, to program this particular board (XD60), you need to do a few things. You need to have:
1. Designed your keyboard layout on KLE that is CONSISTENT with the switches you have soldered. [http://www.keyboard-layout-editor.com/]
2. Downloaded Zadig.exe (google it), and the
3. TKG Chrome App from the Chrome Apps store (This allows the Keymapper to burn, I think)
Explanation: KLE gives you a simple, GUI way to arrange and check your key widths. One thing to note (this was the perennial problem that I encountered), in the raw data section, the string listed for the SPACEBAR key is shown as an empty “”. This should be replaced by “SPACEBAR”. I literally spent an hour racking my brain over whether it was a solder fault, board printing fault, or fault in our stars. But, your configuration can then be harvested by copying the code in the raw data section.
Now, your computer doesn’t know that the PCB you’ve just connected is a keyboard; and it can’t talk to the controller on board yet. Zadig.exe installs the drivers needed to recognize the board as a USB device. When that’s done, you can then start to transfer the layout data to the newly-recognized keyboard.
Copy the data from the raw data section in KLE, then fire up the TMK Keymap Generator [http://yang.tkg.io/].Select GH60(RevXD_Mod), Simple layer (for now) and paste the raw data into the text box. Pressing the tiny reset button on the back of the keyboard will put the chip on the PCB into bootloader mode, and the ‘Burn .eep’ button at the bottom of the website will turn green.
You know what to do, press the Button of Eminent Technology and the layout will magically burn to the controller on your PCB. When done, you will find that your keyboard… works. So yeah, as always, go out and make your own stuff, it’s fulfilling, gives you a great broad skillset, plus you get what you originally wanted to buy at a fraction of the cost, utility maximized.