Monday, December 12, 2005


I think I’ll write about a few hardware (or partially hardware) projects of mine in the upcoming weeks. First off is my notebook keyboard. A few years ago I really wanted a notebook keyboard, the commercial half-height desktop keyboards didn’t really have the same effect or feeling though, so it had to be a notebook keyboard. Luckily an acquaintance of mine received an old Compaq 486 Notebook that was beyond repairs and gave me the keyboard. Seeing how it had two Mylar cables for connection I also asked him to desolder the connectors from the motherboard, and all was well. I had a small apparently useless German QWERTZ notebook keyboard and two connectors.. Going through my junk box I also found an AT keyboard controller with cable, It was time to do some soldering.

Right at the beginning I noticed that the controller and the keyboard had the same amount of pins for column and row so at first I just did a direct soldering. I knew the keys would be all over the place and that didn’t really matter. I just wanted it to return unique scan codes for all the keys on the notebook keyboard, and for that I needed the controller to at least return something for the whole matrix. And thankfully it did!

I did have to swap two pins because the controller was returning the same scan code for two different keys, but after swapping it was perfect.

So now I had a keyboard that returned unique codes for all of it’s keys (although the wrong codes but each key had it’s own code now) what more could I want? OH.. I still need to remap the keys in XP to actually be able to use the keyboard. It took a few hours but I found a freeware application called KeyTweak which allowed the swapping of keys but not quite the comfortable way for a project like this. What I needed was for the software to capture the code of the key I’m pressing then offer me up a list of keys from which I can select the right one. And so I emailed the programmer telling him what I had in mind. About a day later a new version of KeyTweak was released containing the “Half Teach Mode” EXCELLENT!

I went on to reconfigure the keymap and a few minutes later I had a completely functional notebook keyboard. (well okay not completely.. the Fn key and such never really worked all that good.. I used 3 separate applications to get them working and they still had problems so I decided to drop the idea.)

Since I never received the original plastic casing of the keyboard I used screws to fasten it on a black plastic plate and screwed the controller on the underside..

UPDATE: Jan. 8

I kept the keyboard disassembled for a while now and decided to finish it. I threw out the small black plastic plate (which was actually a cover plate of an extremely old and big hard drive) and got myself a big white one.

I screwed the keyboard plate onto it.

Here’s another picture of the controller

I screwed the controller on the underside

Reattached the Mylar cables with their connectors

Made some legs (don’t say anything)

It’s better than it was last time, I started the testing and noticed that some keys were not responding.. Didn’t see any apparent break on the cabling so I chopped a bit off the Mylar’s end which did not help but it did make the part of the Mylar that goes into the connector alarmingly short. Then I finally saw what I didn’t really want to.

Ah yes, the previous soldering did not hold and some leads got separated from the Mylar’s connector.. GAH.. I made a “head” for my soldering gun from very thin wire specially for soldering small things (SMD components for example) a few years ago, and used that to reattach the cables. Everything worked fine afterwards.

And the finished keyboard (and yes I am using it right now to type this)

Some last notes:

Remapping is done by XP, KeyTweak only inserts a registry key so it doesn’t need to stay in memory or anything.

KeyTweak and an old keyboard controller is in some cases a great alternative to expensive custom keyboard controllers.


  1. Hey guy, can you put the link to the datasheet? I'm crazy to use it!

  2. I haven't used any datasheet


Moderation temporarily re-enabled due to increased spam