IBM PS/2 Keyboard Modification
For operation with some newer Pentium 4 motherboards



These old IBM PS/2 keyboards have been a long-time favourite of mine. I really like the positive, mechanical feel of their keys and find that I make fewer typing mistakes than with the cheap, plastic and rubber membrane ones which are commonly available today.

The one which I am using was manufactured in 1990 (and (c)1984, according to the label on its base) and is still reliable in daily use. These keyboards are broadly known as the 'IBM Model M' and more specifically the one which I am using is 'Part No 1391401'.

Its probably the only computer component from that era which is still useable with PC systems today; long after the 16MHz processors, 20Mb hard disks and EGA monitors have been sent to landfill.

When I recently upgraded my motherboard to a new ASUS P4T-E, I was disappointed to find that this motherboard was unable to detect my old keyboard. So after using a $10 plastic keyboard for a few weeks (and cursing it numerous times), I decided to investigate the IBM keyboard compatibility issue.

The solution turned out to be far simpler than I had first expected

Technical Description

PC keyboards use a bi-directional clocked serial interface to communicate with the motherboard. There are four conductors used (+5v, Ground, Clock and Data). The Clock and Data lines are open-collector logic with pull-up resistors so that either end of the circuit can pull the lines low. (See links below for further information).

After looking at the clock and data lines with a scope and comparing to a newer keyboard, it seemed that the 'logic high' state on both Clock and Data lines was fractionally lower when the IBM keyboard was connected.

Another relevant factor is that the older technology used on the IBM keyboard's controller PCB requires more power to operate than newer keyboards. The IBM draws around 112mA from the interface, whilst a modern keyboard draws 1.2mA. These figures are with the 3 status LEDs (NumLock, CapsLock, ScrollLock) off. Each of these draw around 12mA when lit on both keyboards.

The problem was cured by installing two 4.7k pull-up resistors (1/4 W, 5%); one each on the Clock and Data lines. The resistors were installed directly onto the keyboard's controller PCB. The modification was easier than expected as there were three convenient 'vias' (plated holes through the board) which were on the correct signal traces and could be used to mount the resistors


Figure 1: IBM PS/2 Keyboard controller PCB (Modified)


Figure 2: Controller PCB (modified) close-up view

As there was only one hole available for the +5v connection to both resistors (just below pin 1 of the resistor network RN2), the first resistor was inserted through the holes, with the right-hand end of the second resistor being trimmed and soldered directly to the lead of the first one.

My modified keyboard has been working well with the P4T-E motherboard to this day. 

Other Devices

I have also seen slightly different symptoms of incompatibility when used with a particular Toshiba laptop. The keyboard works initially, but after some time (minutes or hours) it will lock up, or appear to have a stuck key (CTRL in my case). This modification also appears to fix these problems. Additionally, the same symptoms have also been reported when using the keyboard with a Belkin KVM switch (and others). Once again, the modification produced a satisfactory result.

If you have a PS/2 keyboard which needs this modification to work with a new motherboard, then please send me an e-mail and tell me the make/model of the motherboard. I will include it in my compatibility table on this site.

I have also had a report that another keyboard has exhibited the same behaviour as the trusty old IBMs. It is the Northgate Omnikey Ultra keyboard, and appears to be from around the same period (Mid 1980's). I haven't seen one of these myself, but it seems that they use the same 'mechanical keyswitch' technology as the IBM. If you have one of these and you're having problems, then the 'Interface Cable' solution below may help.

Other Versions of the IBM Keyboard

Note: I have seen some keyboards of this type which have a different PCB. These can be distinguished by the connection between the PCB and the 3 LEDs (Num, Caps and Scroll lock). On the PCB described above, the connection consists of flexible PCB traces the same as for the key matrix. On the alternate PCBs, the connections are made using wires with headers at either end. A similar modification may be performed to the alternate PCBs, but you will have to identify the +5v, Clock and Data lines as they are located differently. A reader has kindly send me two photos of his modification to one of these alternate PCBs.


Figures 3a, 3b: Alternate controller PCB

An Alternative - Make an Adapter Cable

There is another solution to the problem if you have a different type of keyboard to the one which I modified, or if you don't wish to tamper with its internal workings. It involves making an adapter cable which plugs between the keyboard and the motherboard's keyboard connector. The adapter cable contains the same modification (electrically) as the one which I applied to the keyboard.

To make the adapter cable, it is best to buy a straight keyboard extension cable - the type with a male plug at one end and a female socket at the other. This cable can be cut in half and the wires bared so that the two 4.7k resistors can be connected appropriately. (And these cables are much cheaper and easier than buying the individual plugs and wire). 

All wires should be re-connected straight-through and then the two resistors can be added. One resistor connects between the +5v and Data wires, the other goes between the +5v and Clock wires. Take care not to short any of the wires together and finally ensure that everything is well insulated with heat shrink tubing or electrical tape.

** NEW ** One of our readers, Ron Bean, has designed and built a small adapter box. It functions in the same way as the adapter cable, and is easier to put together. It is connected to the PC with a male-male PS/2 cable (like the ones used to connect most  KVMs to a PC). He has kindly documented the entire process (with pics). I have posted his description here so that anyone wishing to build one can do so. The step-by-step procedure is easy to follow.

Another Alternative - Get a USB to PS/2 Adapter

A USB to PS/2 adapter can solve the problem by providing an alternative electrical interface to the keyboard, in place of the usual one on the motherboard. However, as the adapter is now at the other end of the keyboard cable, it can potentially have the same problems communicating with the keyboard as many of the new motherboards.

In reports from readers, I have found that about half of these adapters work well and the others don't at all. So if you're thinking of this approach, check the table below to make sure that you get one that has been used successfully by others.

Update Jan-Feb 2005: A reader has reported success in using this USB to PS2 Adapter (pictured left, attached to the end of a Model-M cable). It is available from www.clickykeyboards.com, for around USD$12. Their web site says that they have performed a lot of testing with this unit and it has worked in all cases.

I've recently acquired one of these adapters and put it through its paces. I've tried it with my ASUS P4T-E, as well as a Toshiba Tecra 9000 and Satellite 4030 notebooks. It worked well in all cases. I was also impressed by the fact that the adapter is directly supported by my motherboard's BIOS, so it can be used to enter the BIOS settings screens during the boot process (before any part of the operating system has even loaded).

The USB to PS/2 adapter pictured at left has been found to work in most, but not all, cases. It costs around USD$10. Some readers have told me that this is sometimes branded as 'CP Technologies'. I have seen it on sale at a large Australian electronics company (Jaycar) for AUD$19.95.

Update: I've had two e-mails from readers recently saying that the adapter on the left didn't solve their problem, whilst others have had success. I've also had other emails telling of mixed results with various other adapters. Many of these adapters were unbranded, so the only way to identify them would be with a picture.

To sum up, there many other USB to PS/2 adapters out there, some are branded while others are generic. Some will work and some will not, so its wise to ask if a refund (or exchange for another brand) will be available if the adapter doesn't solve your problem.

Is your IBM keyboard missing its cable?

A few people have asked me for the wiring connections of the standard IBM keyboard cable. This information wasn't easily found on the net, so I took one of my cables and checked it with a multimeter. If you have a keyboard but no cable, then don't throw it away! Look here for some information on how to make yourself a cable. I have also included the wiring details of a standard IBM cable here for reference.

 


Which motherboards and laptops are affected?

(Limited list from my testing and reader's experiences)

If an item listed below has 'No' in the right-hand column, then this means that the above modification is not required, as the item should work directly with the Model-M keyboard as-is.

Type of Motherboard, Laptop
or Other Keyboard Interface
Requires Modification?

Motherboards
ABIT BH6 v2
ABIT BP6
ABIT BX-6 r2
ABIT KT7
ASUS A7N266-VM
ASUS A7N8X Deluxe
ASUS A7V8X
ASUS A7V333
ASUS CUSL2
ASUS P2B-DS
ASUS P3B-F
ASUS P4S533-X
ASUS P4T-E
ASUS P4B533-V
ASUS TUSL2
ASUS P3V4X

Biostar MB8500TTD
Compaq 0568H
Compaq 701AP
Dell Dimension 8300
Gigabyte GA-6VX7-4X
Gigabyte GA-8PE667
Gigabyte GA-K8N Pro

Intel CA810E
Intel D845EPT2
Intel D845GRG
Intel D865PERL
Intel D875PBZ
Intel D915GEV
Intel G845GEBV2
Intel 845HV
MSI KT3V
QDI Kudoz 7
Soltek SL-75FRN2-L
Supermicro PDSGE
Transcend TS-ASL3
Trigem Imperial
Trigem Cognac (Socket 370)

Laptops
Compaq Presario 1500TC
Toshiba Tecra 9000
Toshiba Satellite 4030
Toshiba Satellite Pro 405CS

KVM Switches (Note 3)
addLogix PowerReach KVM-401FMA
Belkin KVM Switch
Belkin F1D066 PS/2 KVM
Belkin F1DK102P KVM
D-Link DKVM-2
IOGEAR GCS84A KVM
Linksys SVIEW04 V.2 KVM

PS/2 to USB Adapters, etc (Note 3)
Belkin PS/2 to USB adapter
Belkin F5U119-E USB to PS/2 adapter
'Cables to Go' PS/2 to USB adapter
Clickykeyboards.com USB adapter
CP Technologies USB adapter
GC (Great Quality) USB to PS/2 Adapter
IOGear GCS1734 USB KVM
IOGear GUC100KM PS/2 to USB Adapter
P.I. Engineering Y-Mouse USB (Hi-Power vers.)
QVS USB-PS2Y USB to PS/2 Key/Mouse



No (Note 7)
No
No
No
No
No
No
No
Yes
No
No
No
Yes
Yes
No
Yes

No
Yes
Yes
No
No
No
No

No
No (Note 6)
Yes
Yes (Note 5,6)
Yes
Yes (Note 6)
Yes (Note 1)
No
Yes
No
No
Yes
No
Yes
No


Yes
Yes
Yes
No


Yes
Yes
No
No
Yes
Yes
(Note 4)


Yes
No
Yes
No
No (Note 8)
Yes
Note 9
No (Note 2)
No
No

Note 1: 
This motherboard was found to work with the Model-M keyboard (without the modification) if the keyboard was plugged into the PS/2 mouse socket, and the mouse was plugged into the PS/2 keyboard socket! Some motherboards have both functions present on both PS/2 sockets. (Further details to follow in a future update).

Note 2: 
Reports of both working and not working. I suspect that it may have to do with individual conditions, like cable length, below.

Note 3: 
It has been reported that certain KVMs and USB to PS/2 adapters cause some keys to behave differently on the connected keyboards than would be expected from a directly connected keyboard.. The most common difference is the way that held keys are treated, such as <Ctrl>, <Shift> and <Alt>. Another difference is key auto-repeat. One reported case cites that for multiple held keys, the first key has auto-repeat but the second and subsequent keys don't as each one is held.

Note 4:
Didn't work with the Model-M, even after the resistor modification was applied.

Note 5:
One kind reader reported the following: "D865PERL motherboards with BIOSes prior to P17-0078 (which actually shows up as ".0078.P17." in the middle of the very long BIOS version displayed on the powerup screen) require a BIOS update, or else the keyboard will not work in the BIOS screens and some boot managers". Prior to the BIOS upgrade, the modification was applied but had no effect. The keyboard exhibited intermittent operation.

Note 6:
Several readers have reported unusual problems with Intel motherboards. One example is that the keyboard doesn't work to access the BIOS, but works fine once Windows XP initializes it. In most of these cases, the resistor mod will not fix the problem. The first option is to try a BIOS upgrade (if available), otherwise get a PS/2 to USB adapter like the one I've tested above.

Note 7:
A reader reported that the Model-M was not detected under Windows 2000 from cold power-on, but worked after a subsequent reset. The Model-M works fine with this same motherboard under Windows 98 and Linux. In this case, the modification did not fix the problem.

Note 8:
Many readers have had success with this adapter, with just a few reporting problems.

Note 9:
This KVM only allows a USB keyboard to be connected. A reader used the USB-PS/2 adapter from clickykeyboards (mentioned earlier in this article) to connect a Model-M to the KVM. The Model-M would only work once modified. This was quite a surprise to me, as USB is very well defined with regard to protocol compatibility and current supplied to peripherals. I suspect that this would have been the same with any USB-PS/2 adapter, as the clickykeyboards one has been the most successful used by readers to date. I have no other reports to confirm, but perhaps the current supplied by the KVM is insufficient? If anyone else has experience with this KVM then please let me know.

 

The modification described on this page will not affect the behaviour of the individual keys. It only modifies the electrical signal levels on the interface and not the way in which the keystrokes are treated.

Cable Length:
It seems that the length of the cable attached to the Model-M keyboard might have an effect on whether it works or not with selected motherboards, laptops and KVMs. The Model-M's came with two different lengths of cable attached. In both versions, the coiled section was about the same length, but the straight section between the PS/2 connector and the coiled part was different. On the short version, it was around 55cm while the long version was about 195cm. It seems that the short version cables are more likely to work with problematic motherboards.


Links:

PC Keyboard FAQ
http://members.tripod.com/~ilkerf/c64tower/F_Keyboard_FAQ.html

Help with IBM-PC keyboard interfacing
http://www.hth.com/filelibrary/TXTFILES/keyboard.txt

An article on the IBM keyboards mentioned on this page
http://www.dansdata.com/ibmkeyboard.htm

The IBM Model M Keyboard
http://www.3m3718.com/modelm.html

Another site devoted to Model M Keyboards
http://www.modelm.org/

Another page with loads of good info on these keyboards
http://ohlandl.kev009.com/keyboard/Keyboard.html

A site on keyboard repairing & modding
http://repair4keyboard.org/

Here's a place to buy Model-M keyboards, as well as USB adapters
http://www.clickykeyboards.com/

Another company that's selling some used Model M Keyboards
http://abcresellers.bigstep.com/item.html?UCIDs=1068993%7C1154390&PRID=1220668

Model M has its own node on everything2
http://everything2.com/index.pl?node=IBM Model M Keyboard

Belarc Advisor: Helps you to determine your motherboard type
http://www.belarc.com/download.html


By John Szybowski.   Sydney, Australia.   First created 2nd March, 2002.
                                                                  Last updated 17th March, 2007.

The modifications described here are a record of those which I performed on my keyboard. If you choose to modify your keyboard in a similar manner, then you accept all responsibility for any possible damage to your keyboard and/or other computer system components.

IBM and PS/2 are registered trademarks of International Business Machines.