Keyboard Fixed!

The Luggable Mainframe

It’s been a long time coming.

A big thank you to the guys @ the Bay Area Keyboard Meetup Group (LINK_NEEDED) for helping me brainstorm about:

  1. Restoring the keyboard somehow originally with the replacement pads I got from
  2. Determining the current protocol used by the proprietary 6-pin rectangle keyboard connector, hoping that it’s XT and replacing the internal keyboard components with an XT keyboard (not ideal, because it would be hard to maintain the stock look)
  3. Same as #2, but utilize an XT-to-USB connector to home a conventional backlit keyboard into the stock keyboard casing. (same caveat about maintaining stock look)

I was focused on #1, mainly because I had little faith I could quickly fabricate PCBs, if needed. Nor did I have faith in my ability in my bodyshop abilities to make a modern keyboard look stock in the original casing. So, the universe had spoken, #1 was my jam!

I spent about 10 iterations on my PoC approaches to #1, mainly due to the following:

  • The replacement pads from arrived perfect — indistinguishable from the original — except, THEY WERE TOO THICK!!!

I tried just about everything to make the pads smaller. I said, hey it’s foam, I can squish it. I’ll squish the pads! I used books, different surfaces below, different ways of having the keyboard assembled and disassembled… Long story short — they were not squishable in a reliable manner that allowed me to use the stock keyboard design in any sort of way that could be described as a happy UX. 🙁

What do I mean the pads were too thick? Well, I’m glad you asked.



As you can see, the black key assembly is designed to fit flush against the PCB it attaches to. This means that the requirement for the pad is as follows:

  • The pad must suck up into the key assembly and be nowhere close to the PCB to have a good keyboard experience. (Otherwise you can literally blow on the keys to get registered keypresses)
  • However, the pads were feeling comfortable sitting several millimeters outside the key assembly!!!! Even if I’d squished them flat, they’d still short and register keypresses when I didn’t want them too. AND. Even if I’d gotten them to stay comfortably a millimeter or two up inside the key assembly, I’d still have like a 2019 Macbook Pro amount of key action before receiving a stuck key error.

To the resolution! It’s all due to the inspiration of the guys at the Bay Area Keyboard Meetup (LINK_NEEDED) that really nailed it. Also, thank you David and Connie and Tedward for hanging out. So there was one retro-keyboard expert there in particular. He had all kinds of old salvaged keyboards on display on his stand. I forgot his name, but they he was massively knowledgeable about retro keyboards, so if you get a chance to go to one of these meetups and you’re interested in retro-computing, just go. Anyway, he suggested a “riser”, or a “spacer” that would just accept the fact that the pads were the size they are, and RAISE the key assembly above the underlying PCB enough to have good keypress play on the keyboard. So. Simple. Blew my mind.

I says to myself. I needs me a shim. And, I’s been wanting to 3D me some models.

My engineer fam over at Magic Leap [LINK_NEEDED] says I should use Blender 2.8 [LINK_NEEDED] to . So, I begin learning Blender 2.8, intent on makin me up a shim.

I watch some YouTube videos on Blender 2.8, and before you know it, I have a nice little shim I designed to raise the key assembly.

My plan is to make a bunch of these shims, place em randomly on the bottom of the key assemblies, and screw everything back together, with no noticeable change from stock aesthetics on the outside.

While fitting the shims, I was worried about what looked to be a tiny angled PCB support / standoff built into the bottom keyboard casing. I thought it might have to be shaved down, because surely it was supposed to be coming into direct contact with the PCB. Turns out that standoff didn’t even come close to touching the PCB with the stock design. I suppose that’s about the first design flaw I’ve found in this Compaq Portable I! I suppose it’s totally forgiveable, as that “flaw” kept me from having to shave down a piece of the stock hardware (terrifies me). After the installation of the shims, the standoff ACTUALLY supports the PCB.

It wasn’t the first design that worked: [photo]

I sized it so it even clicks in over the key assembly! (Mainly due to the inherent ridges of the resolution of my additive-process 3D printer, but I’m totally taking credit)

Here’s the .stl file for the shim [LINK_NEEDED]

Here’s the .gcode file for the shim [LINK_NEEDED]

I have to say, and it may just be in my head, but I think the keyboard works even better than stock with the extra spacing!!!!!

Here’s the full Photo Album, including some fun videos of my new NanoLeaf [LINK_NEEDED] Smart Lights in the background reacting to some Synthwave music while the shims are printing on my Creality CR-10 [LINK_NEEDED].

PHOTO ALBUM (Keyboard Repair):

Leave a Reply

2 Comment threads
0 Thread replies
Most reacted comment
Hottest comment thread
2 Comment authors
AffiliateLabzSEO Reseller Program Recent comment authors
newest oldest most voted
Notify of
SEO Reseller Program

Awesome post! Keep up the great work! 🙂


Great content! Super high-quality! Keep it up! 🙂