Hey all,
A few months ago I built a handwired TKL out of scrap wire, a teensy 2.0, and a Cooler Master case and plate. I'm not proficient in C, my experience writing something close to C is with the Sparkfun Arduino (close but not quite C), so I used the TMK Firmware Builder:
http://kb.sized.io/ (That tool is cool, I only wish there were a way to have it export the C source code in addition to the hex) I did try to edit and compile TMK myself, but I wasn't editing my keyswitch matrix correcly in the code (just an inference).
On my custom TKL I switched Caps and Esc, which made the keyboard really awesome for me. I use Vim keybindings everywhere I know possible. Otherwise I use an xmodmap profile in Linux which has limitations. I can't unplug and plug the keyboard in without xmodmap being reset, and the settings don't survive sleep, hibernation, or poweroff (all probably fixable with scripting, but then I can't use just any computer with the board.)
So I did what any rational person with a perfectly functional mechanical keyboard would do and broke open the warranty seal. It has a Holtek HT32F1755 ARM chip. It also has some through hole pins that were maybe used for programming? I haven't written down the key matrix yet, but that's probably necessary as well.
edit: I made a typo with my google search a few minutes ago, found the data sheet too:
http://www.keil.com/dd/docs/datashts/holtek/ht32f175x.pdf