I know this isn't exactly an original project, but I decided to try building my own Teensy-based replacement controller for an IBM Model M based on
these notes by Lawrence Wu that I found over on GitHub.
So, I ordered some ribbon connectors from Mouser and wired a Teensy 2.0++ up to the pins:

Tried to make everything reversible, except for a couple of small holes I drilled to secure the USB connector:

I've since re-arranged some connections since then - pin D6 turns out to be a problem thanks to the built-in LED. Oh, and I had the keyboard LEDs wired up with the wrong polarity. But,
I started my own fork of the TMK firmware where I hacked together my own
matrix and
keymap. Everything seems to mostly be working, and I'm typing on it right now.
Just one problem I noticed: I assigned Control to the Caps Lock key, but I can't press Caps Lock and W at the same time. Looking at the matrix debugging output in hid_listen, I see that actually I can't press any keys in the same matrix row together - which includes Caps Lock & W. The whole keyboard just zeroes out when two bits in the same matrix row should register.
Well, okay, I know this isn't an NKRO keyboard. But there's just one weird thing:
I built a PS/2 converter with TMK for another Model M. I remapped Caps Lock to Ctrl on that one, too, and Ctrl-W
does work on that one.
So... that suggests that maybe it's not an issue with the Model M matrix. I'm wondering if this is a problem in my hacks to the TMK firmware? I'm kind of bungling my way through this, so I wonder if I'm missing something in the Teensy setup that makes it unable to see two in the same row? Like, not ghosting, but no keys at all are registered from the matrix when two in the same row are held.
Anyway, hope this looks interesting and hope someone knows off the top of their head what I might have done wrong. I'm going to keep digging, since I'm having fun learning my way around the Teensy and TMK