[Project Log] Recreating the M-122 Battleship Keyboard

In a sad turn of events, my IBM M-122 ‘Battleship’ terminal emulator is no longer with us. Almost identical to this one, but with blue legends. Pour one out.

I have five bags of various keyswitches from Novelkeys that were bought with the intent of making my own modern version of the Battleship someday. I guess now’s the time:


[Latest Update 1/21/2021 - Switch matrix board routing is in progress.]

I really like the layout of the Model M/F-122 for some reason.

The way I see it now, I have four tasks:

  • Lay out two versions of the ‘main’ switch matrix board, one with through-hole LED pads, one with reverse mount SMT pads. Doing this one on two layers so I’m not paying out the ass for two square feet of 4-layer PCB.
  • Lay out a separate controller board, using a PIC32MM as the USB HID device controller. This one only needs to be a couple inches square and is already pretty much done from another project.
  • Lay out a steel mounting plate. The board footprints already have an extra assembly drawing layer for the coutouts, so this one’s pretty much done when the switch matrix board is, just needs laser cut.
  • Have a chassis machined. This is by far the one that’s going to hurt me the most. I might actually just make the whole thing (mounting plate and all) be one monolithic block of aluminum, haven’t decided yet.

I’ve got:

  • Cherry MX Clear
  • Kailh Box Blue
  • Kailh Box Navy (Probably using these)
  • Kailh/NovelKeys ‘Pro Heavy’ Sage

This thread will be the build log for this monstrosity as I have time to work on it. Stay posted.

There will probably only be one five of these in existence since that’s the minimum order quantity from the board house, but I might keep things going if enough people around here are interested in the end result. I’m just expecting the price to be insane.

3 Likes

[Reserving this reply]

Been listening to the crew get super excited over flatbread and creamed corn while I route out the key matrix:

May not make much sense at first, but all you need to know is this - that massive bus of 2.54mm pin headers will mate with a second board that’s a 2" wide strip with 16 bus interface registers on it; those registers will interface with a small ProASIC3 FPGA, and the whole setup will be able to poll all 121 keys in parallel at 1.25Mhz. With an M. Yeah it will need debounced.

That’s just the keyswitch routing, still need to route in the controller board, status LEDS, configuration switches, etc etc. There will be three separate PCBs in the final assembly.

1 Like

so excited about this, keep going :smiley:

jclpcb can probably do a decent job with this, and theres that site that crowdsources pcb/pcb assembly, could be something fun to do there.

This is awesome. I love the idea. Though I have seen no mention of QMK integration. This board with the layoutnit has and keys it has available would be amazing for reprogram ability.

Yep, I’m fast tracking this one… I have a little (relatively speaking) Ducky keyboard that’s standing for the old '122 right now, but I really hate this thing lol. The really upsetting thing is we unironically use Model M, F, and older keyboards on test systems at work to support old hardware designed in the 70s but I can’t exactly yoink one of them.

JLCPCB is my go-to for board prototypes, they did both halves of the little Devember test fixture just a month ago too. The matrix board for this thing is 19.6" x 6" which is just barely within their limits before the price goes through the roof. There’s also LCSC which is attached to JLC for components and is pretty much unbeatable if you manage to find something you need.


I’ve ripped up those pin headers and am just going for a 4-layer board after all. The price went from $35 to $92, but I’ve decided it’s worth it to not hand solder 512 individual pins (16 headers, 16 pins/header, 2 boards).

To be honest, I’ve never looked into QMK and so I just don’t know much about it. If I thought this could be something more than 5-10 people would be interested in, I might look into it since it would just mean making a second version of the controller with whatever ARM MCU that QMK runs on, but the biggest issue here is the cost of the whole thing… I’m not putting effort into making it commercially viable at the moment. Instead of aluminum/steel for the chassis I could do ABS, Polycarbonate, PEEK, Acetal, Acrylic, and a few other plastics, but it’s still going to be a $300+ machined part simply because of quantity.

Keys will be remappable in hardware, I’ll go into more detail when I get to that part. :+1: