geekhack

geekhack Community => Keyboards => Topic started by: m3741 on Mon, 17 December 2018, 09:50:33

Title: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Mon, 17 December 2018, 09:50:33
Hello fellas, first post!

I found an old IBM M2 of mine in my grampa's attic; Its cord is missing, but overall all pieces are there.
I'm working on restoring it and have already replaced the capacitors [which were most likely dead].

All I need to get this bad boy working again is to know where which of the pins in the PCB go to in the ps/2 plug.
Could any one of you fine lads tell me which is the Ground, Clock, Data and 5v pins?

Here is a picture of me holding my keyboard's PCB:
(http://i2.photobucket.com/albums/y13/m3741/bb34d52d-3e10-46a5-ad27-9bfa9e2a2ed1.jpg) (http://s2.photobucket.com/user/m3741/media/bb34d52d-3e10-46a5-ad27-9bfa9e2a2ed1.jpg.html)

Here is the plug I have that goes into the PCB:
(http://i2.photobucket.com/albums/y13/m3741/Seleccedilatildeo_098.png) (http://s2.photobucket.com/user/m3741/media/Seleccedilatildeo_098.png.html)

I'm inclined to believe that red is 5v, black is ground, yellow is clock and white is data, but I don't want to take any chances and fry my only board.
I appreciate you help!

Thanks a lot!
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: Tactile on Mon, 17 December 2018, 11:52:44
I can't answer all of your question but I can tell you that power & ground are the only critical wires. If you can identify the power & ground and get them wired up correctly, you can mix 'n' match the other two wires. The data and clock can be connected backwards without consequence. If the keyboard doesn't work, just swap those two wires.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Mon, 17 December 2018, 12:11:26
I'm assuming that red and black are 5v and ground respectively, but its just an assumption.

Any how, thank you very much for your reply, now my quest has narrowed down to just figuring out if the red and black wires are respectively, 5v and ground.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: ErgoMacros on Mon, 17 December 2018, 13:03:29
Someone else probably knows definitively, but one of the pins likely is connected directly to the large flat areas (ground plane), so that would be ground. Check for continuity.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: fohat.digs on Mon, 17 December 2018, 17:39:14
IBM was never consistent, and  NEVER TRUST COLOR  but this is the scheme for the Model F 122-key terminal:

Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Mon, 17 December 2018, 18:00:58
Holy balls, dude! Thank you so very much for the heads up!
Well, I guess I'm back to square one on this again... Better safe than sorry.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Tue, 18 December 2018, 09:33:21
I'm at a point that I'm willing to pay for this information.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: Snowdog993 on Tue, 18 December 2018, 10:13:34
Red - +5V
Blk - GND
Wht - CLk
Yel - Data

Like it helps....
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Tue, 18 December 2018, 16:08:35
Thank you for your reply.

No one wants more than I do for this to be 100% accurate.
Are you 100% sure on this, do you own the same keyboard?

I mean, can I bet my single board on this info?

Please don't get me wrong, I'm in no way doubting your intentions in helping me out on this issue.  My skepticism mainly comes from the earlier post regarding another IBM keyboard model whose wire colors were completely different.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: Snowdog993 on Tue, 18 December 2018, 20:06:23
The only thing is to be sure the pins correspond to the pins on your PS/2 plug as well. If you are using a "generic" PS/2 cable, the colors may not correspond to the pins. Just be sure that is correct. I don't see a problem with it, but if you do, find another person with an M2 that may tell you exactly what it actually is.

EDIT:
I would verify with another M2 if I had one. But I don't and the best solution I see is to actually compare a working M2 keyboard with the connector. There are a lot of different wiring diagrams for the IBM Model M and M2. The Lexmark chipset may or may not correspond to the actual pinouts.
This is a guess on my part. I can't verify it so I can't say it's accurate.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: Snowdog993 on Tue, 18 December 2018, 20:28:22
Read my edit.

Fohat is correct in telling you to not trust the colors but the pinouts could very well match/not match. I spent some time looking at my resources and couldn't find anything pertaining to the M2. Sorry about that. All I did was guess.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: invariance on Wed, 19 December 2018, 14:49:38
The only way to definitively know is to pull up a spec sheet for one of the ic’s to find the Vcc and gnd pins and use a multimeter to trace it to the header (connector).


Sent from my iPhone using Tapatalk
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Thu, 20 December 2018, 09:52:13
Sent an email to the fine folks at unicomp. Since they bought (I believe all) pattents from Lexmark and IBM keyboards, I'm hoping they have the schematics for this board.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Thu, 20 December 2018, 13:00:36
So... since I got no feedback from unicomp and all my google skills are not returning anything useful, I decided to investigate the board myself.

I noticed that one of the pins runs a very long trail all across the board and this trail goes through all positive poles of the leds (caps, num and scroll). So, without shadow of doubt that's the +5v pin, as we all know LEDs have a specific polarity to work.
It also turns out that this keyboard seems to follow the color scheme fohat.digs sent, as this pin is the one connected to the black wire.
Using a multimeter I was able to determine the ground pin, as it is the pin combination that gives less resistance.
That was another indication that this keyboard seems to follow the color scheme fohat.digs sent, as this pin is the one connected to the white wire.

As Tactile pointed out, mixing clock and data is not harmful, so, given that +5v and GND are folloqing fohat.digs' color scheme, I'll wire them up accordingly and I'll post the results here.
Wish me luck!!!

So far, thank you all very much!
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Fri, 21 December 2018, 12:26:24
So, no luck, when I plug it in all I get is Caps and Scroll light up, then Num flashes really fast and they all turn off:
(https://i2.photobucket.com/albums/y13/m3741/videotogif_2018.12.21_16.37.59.gif) (https://s2.photobucket.com/user/m3741/media/videotogif_2018.12.21_16.37.59.gif.html)

Results: Keyboard doesn't work.
I'm sure +5v and ground are wired correctly as otherwise the LEDs wouldn't turn on.

I've seen online that usually when that happens the capacitors on the board are dead, but I changed the capacitors on the board for brand new electrolytic capacitors (as you can see) with the same uf and voltage of the original ones.

I also tried switching the Data and Clock cables around, but no luck.

On Linux, kernel messages when I plug the keyboard to a USB port show:
Code: [Select]
[ 2015.119629] usb 2-2: new full-speed USB device number 38 using xhci_hcd
[ 2015.247696] usb 2-2: device descriptor read/64, error -71
[ 2015.483718] usb 2-2: device descriptor read/64, error -71
[ 2015.719621] usb 2-2: new full-speed USB device number 39 using xhci_hcd
[ 2015.847683] usb 2-2: device descriptor read/64, error -71
[ 2016.083646] usb 2-2: device descriptor read/64, error -71
[ 2016.191652] usb usb2-port2: attempt power cycle
[ 2016.843601] usb 2-2: new full-speed USB device number 40 using xhci_hcd
[ 2016.843920] usb 2-2: Device not responding to setup address.
[ 2017.051940] usb 2-2: Device not responding to setup address.
[ 2017.259586] usb 2-2: device not accepting address 40, error -71
[ 2017.387592] usb 2-2: new full-speed USB device number 41 using xhci_hcd
[ 2017.387909] usb 2-2: Device not responding to setup address.
[ 2017.595889] usb 2-2: Device not responding to setup address.
[ 2017.803569] usb 2-2: device not accepting address 41, error -71
[ 2017.804601] usb usb2-port2: unable to enumerate USB device

Any advice?
Tried two types of PS/2 adapters, those tiny converters that all they do is rewire the PS/2 wires to the USB and also tried the kind that have a circuit board in them and have two entries, one for PS/2 keyboard and another one for mouse.
None of them worked...
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: rich1051414 on Sat, 22 December 2018, 02:20:37
IBM was never consistent, and  NEVER TRUST COLOR  but this is the scheme for the Model F 122-key terminal:
I cannot stress enough how you should NEVER trust wire colors on IBM keyboards. In the past I have accidentally read a female diagram as a male, and since the colors agreed, I just accepted that. BIG MISTAKE. Totally ignore the colors entirely, no matter how much it makes you question it.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: fohat.digs on Sat, 22 December 2018, 08:21:01

I have accidentally read a female diagram as a male, and since the colors agreed, I just accepted that.


That has tripped up a lot of people. The diagram clearly says facing the connector on the PCB. That socket will be the mirror image of whatever plug is on the end of the cable.
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: m3741 on Fri, 08 February 2019, 12:52:39
Good news is: I got the keyboard working!!
YAY!

Turns out the problem I was having before was because of a faulty ps/2 to usb adapter.

(http://i2.photobucket.com/albums/y13/m3741/Seleccedilatildeo_098.png)
So, for future reference, if anyone ever comes to this post looking for answers here is the pinout order as seen on the above pic, from left to right:
Pin1, yellow wire: Data
Pin2, white wire: Ground (sometimes called V-)
Pin3, red wire: Clock
Pin4, black wire: V+

Although Fohat.digs' diagram was for a different IBM keyboard, the wiring colors were spot on.

The PS/2 adapter I'm using that works shows up on Linux as:
"Holtek Semiconductor, Inc. PS/2 keyboard + mouse controller"

It looks like this in lsusb:
Code: [Select]
T430:~ # lsusb -vs 001:003

Bus 001 Device 003: ID 04d9:1400 Holtek Semiconductor, Inc. PS/2 keyboard + mouse controller
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x04d9 Holtek Semiconductor, Inc.
  idProduct          0x1400 PS/2 keyboard + mouse controller
  bcdDevice            1.43
  iManufacturer           0
  iProduct                0
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           59
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0xa0
      (Bus Powered)
      Remote Wakeup
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      1 Keyboard
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength      65
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           1
      bInterfaceClass         3 Human Interface Device
      bInterfaceSubClass      1 Boot Interface Subclass
      bInterfaceProtocol      2 Mouse
      iInterface              0
        HID Device Descriptor:
          bLength                 9
          bDescriptorType        33
          bcdHID               1.10
          bCountryCode            0 Not supported
          bNumDescriptors         1
          bDescriptorType        34 Report
          wDescriptorLength     157
         Report Descriptors:
           ** UNAVAILABLE **
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval              10
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0000
  (Bus Powered)
T430:~ #

It looks like this in real life:
(https://images-na.ssl-images-amazon.com/images/I/31%2BdP6ugeTL.jpg)

Its sold under too many names and brands.

I'd like to thank you all for your help!
Title: Re: IBM / Lexmark M2 Keyboard PCB pinout
Post by: invariance on Fri, 08 February 2019, 17:58:39
That’s excellent!
My Model M is behaving weirdly and needs fault finding too


Sent from my iPhone using Tapatalk