I’m feeling a lot happier today.

I bought an old IBM laptop a while ago, and I’ve been gradually working on it to bring it up to a reasonable specification. It was really cheap, and even after maxing out the memory at 64MB and putting in a 2GB drive (not huge, but cheap and large enough to hold the OS and a decent collection of tools and data) it’s still a bargain. It’s now running Windows 2000 comfortably, which means that I can do most of what I want with it: browsing, blogging and writing.

However, the keyboard was dodgy. About a fifth of the time, I couldn’t log on because a few keys weren’t working. I decided to give the keyboard an overhaul, cleaning the contacts on the ribbon cables that connect the keyboard to the controller. This was on Friday afternoon.

Unfortunately, I was a little bit overexuberant in my maintenance. It didn’t help that the lighting in my flat is quite poor, but it was my fault that I rubbed the conductive layer away. There was no connection left, and no keys worked.

Imagine my despair!

The connector, though, is just an exposed area at the end of the cable. The cable consists of a plastic layer, the (very thin!) foil conductive layer, and a protective insulative layer painted over the top. All I had to do to make a new connector was to trim off the last 5mm of the cables, and rub away the paint to expose a fresh new conductive layer. I waited for Saturday morning, when the sunlight would make it easy to see, and my frame of mind wouldn’t be so gloomy.

It was a very delicate job, and I rather thought that I might have to hit the junk shops for a replacement IBM keyboard. However, my patient efforts worked, and I managed to get the keyboard working, all except for the right Alt, full stop, and kana keys. The Alt and kana keys I could live without, but full stop is, well, important.

It was only three keys, all in the same area of the keyboard, so I deduced that I simply didn’t scrape the insulation off adequately on one of the contacts. However, out of 24 contacts, I had no idea which was the problem.

This morning, I found a solution. There are two connectors, one for each plane of the contact matrix—the keyboard itself is an entirely passive device—each keypress connects a horizontal and a vertical connector together, so that the controller can determine the location. I think it’s called a passive matrix keypad; I remember writing microcontroller code to do exactly the same thing at university.

I played around with a piece of wire, connecting contacts to one another until I found two possible combinations that would emit a full stop. Having delicately scraped them a little more, I connected everything back together, and hoped.

It worked!

I hope that it will stay working, and that the vibration of being carried around won’t disturb the connection. If it fails, then there’s still plan B: a trip to the junk shop. Hopefully it won’t come to that.

I can now take my computer to work. I can do something useful with my idle time. There’s nothing worse than being bored.