Indeed, and this guy did it the hard way. Get a teensy, some switches, diodes, and wire, and read this: https://github.com/qmk/qmk_firmware/blob/master/docs/hand_wi...
There is no need to spend any time on the software side of things. It's already been done to death.