For about a year now, I've owned this Japan-exclusive IBM numeric keypad that has been sitting around collecting dust and awaiting the day I finally get around to putting it to use. Well, the 10th June 2021 happened to be that day. One problem though - despite having a PS/2 plug, it does not work with dedicated PS/2 ports, commercial active converters, or Soarer's Converter. This is a dive into figuring how it communicates and some of the keypad's backstory along the way.
The IBM IntelliStation Z Pro/M Pro/E Pro (model 5535-ZPP) was a fairly monstrously-sized portable computer from the late '90s for the Japanese market, resembling an oversized ThinkPad. The machine had a 466MHz Intel Celeron CPU, 64MB RAM standard (256MB maximum), a NeoMagic NM 2220 AGP-based GPU with 2.5MB VRAM, 8.4GB hard drive as standard, and 15" 1024x768 TFT LCD with 18-bit colour. Its size was 36.9cm x 31.5cm x 7.3cm (width x depth x height) and weighed 7.2kg.
Establishing what computer this keypad was for took some time. I initially believed it was for the IBM 5535-ZAD (an earlier Japanese-exclusive 486 laptop-like PC of a similar concept), but thanks to an archive of a Google translation of now long-gone parts of IBM's website and Yahoo! Japan Auction, I was able to establish the connection between the keypad and the 5535-ZPP. This IBM webpage lists some optional extras for the 5535-ZPP, including a numeric keypad of P/N 69H8534. That's one digit away from the P/N 69H8533 of this keypad, so I was thinking maybe it's a similar keypad? However, thanks to a few Yahoo! Japan Auction listings of this numeric keypad, 69H8534 seems to be the box number for P/N 69H8533.
With this evidence, I think it's safe to establish for certain what system this keypad is designed for. The 5535-ZPP itself is an intriguing system, mainly since it's so hard to find information about it. The only photo of it is that 148x150 image shown earlier that I found on that IBM page I referred to before. Hopefully, I can find out more information in the future and expand on it here.
The 5535-ZPP is a rather cool looking keypad, featuring a raised blue-text IBM oval badge, white and gold keycap legends, and an interesting design language. In fact, we've seen this before - it's IBM 5576-C01 TrackPoint II Japanese Keyboard design language. The Unicomp EnduraPro, Ultra Classic and SpaceSaver M feature it too since they were produced with 5576-C01 tooling. The size profile, unfortunately, doesn't match (the keypad is a bit shorter), but the resemblance is interesting to note nonetheless.
The keypad uses some sort of rubber dome (or more accurately, cylinder) switches. I'm still not completely decided on how much I like them, but I think they're good enough. They've got decent tactility and not much mush, so I'd likely say they are somewhere in between bog-standard office rubber dome switches and IBM/Lexmark Quiet Touch rubber domes. The sound is a bit less desirable though. When the cylinders return after being depressed, they have a sort of 'quish' sound, especially when pressed slowly. But, it's hardly noticeable when rapidly using the keypad. All in all, I rate them as an acceptable implementation for the job of a numeric keypad.
The layout is the main attraction of this keypad, which in my opinion transcends any potential reservations you may have about the switches. It's a tenkey, of course, but it's been greatly enhanced with other keys that could improve numeric operations. Sufficed to say, this is a powerful numeric keypad for anyone seeking fast data entry with easy to access navigation and corrective options. As a summary:
And now, we get to the elephant in the room - the connectivity.
At first glance, it seems like this keypad has a standard PS/2 connection. However, given the keypad also has a PS/2 mouse pass-through port, you may be wondering if the connection is actually nonstandard. And, you would be right. It's a nonstandard pinout. And so, we get to the purpose of this article - solving this puzzle.
The first thing I did was search the internet for a pinout description or diagram, of course. Unfortunately, I found nothing. I know a lot of ThinkPad numeric keypads also use a similar style of connection but searching for those resulted in no avail too. Thus, I knew I would have to figure this out myself. The procedure isn't complicated, though.
The first step was establishing what pins of the plug are for mouse connectivity. Operating on the assumption that IBM simply used the two normally-unused pins on the 6-pin mini-DIN connector for mouse CLOCK and DATA functions (+5V and GND being shared), I used a multimeter on continuity mode to see what pins on the mouse pass-through port make continuity with pins on the plug so I can then simply deduce what the keyboard pins are. To make probing easier, I opened up the keypad so I could probe the socket pins on the PCB directly. Opening up the keypad is fairly simple - you have to pry off the two rubber feet on the deepest end of the keypad, which exposes two screw holes containing Philips screws.
Once the screws are removed, I simply lifted the back case piece up from the deep end of the keypad, and then pulled the panel backwards whilst wiggling it and it slid off. Of course, be gentle and don't force it out if you're trying it yourself. You should now be greeted by the keypad's controller board. To access the PS/2 socket's pins, you'll now need to separate this PCB with the front case piece.
This was rather troublesome to do and I regrettably broke one of the clips that hold the PCB onto the front case piece. As some consolation for myself, I later found that once the keypad is reassembled, the loss of the clip didn't affect the stability of the keys. And in any case, you don't have to try repeating this since I've done the work for you below! Anyway, here is a photo of PS/2 socket pins with the pins annotated onto it.
And with this, I started probing between the known pins shown above and the pins inside the cable's plug. What I found is that the mouse functionality is in fact the dominant function of the cable. For context, the pinout for both keyboard and mouse PS/2 plugs are the same, following the format shown below (and compatible with the annotated socket pin annotation above).
For this keypad, the mouse pins are in the standard place, relegating the keyboard pins to the opposite side. I also confirmed through doing this that +5V and GND are in the standard position too. At this point, I still wasn't sure which way around keyboard CLOCK and DATA was placed (for all I know, IBM could have altered this too), so I planned to simply try connecting both ways around since it shouldn't be detrimental to the hardware to get CLOCK and DATA connected the wrong way around. As a note for hardware safety,+5V and GND are not so forgiving, so these should not be determined in this manner. Anyway, I started by simply mirroring the standard CLOCK and DATA arrangement, which turned out to be correct. As such, I was able to get the keypad operational with the following pinout.
Whilst I was at it, I also decided to note down the pinout for the cable's header too. This could be useful if you own one and you want to install an integrated converter (say a Teensy 2 or Pro Micro microcontroller with Soarer's Converter flashed onto it) into this keypad. The header is 10 pins, which the order shown in the following photo.
And here's a diagram of the pinout with the pin number and established function. Like the earlier PS/2 diagram, M stands for mouse pin and K stands for keypad pin.
And, that's about it! Both the established plug pinout and the header pinout are available for viewing on my Keyboard Connections page.
This is an awesome numeric keypad; not because of its switches, but due to its style and the functionality it can offer. It's in fact technically of standard PS/2 output, but the arrangement is mouse dominant, hence why standard PS/2 keyboard ports and converters do nothing with it. I have since tried plugging the keypad into a mouse PS/2 port and the pass-through indeed work through it. I'm not sure why IBM went with this approach since having the keyboard pins in the standard position would make the keypad infinitely more universal. But that is something we're unlikely to find the answer to.
Hopefully, though, this article has shed some light on the keypad and the system is operated with. If you have one, I hope the resources I've created will help you get your 5535-ZPP keypad up and running!