The M2 has a bad reputation for not working. Clickykeyboards claims that 4 out of 5 M2s are broken. Bluemercury and xsphat had broken M2s too.
There were theories that PS/2 might use different signal levels than PS/1. I bought mine together with the original PS/1 computer so I thought it would be a working version. I threw that PS/1 away lately as it didn't come with the monitor which contains the power supply. As I couldn't use the 'board on a PS/1 as originally intended I decided it didn't matter anymore. I cleaned it and connected it to my Linux machine. Two LEDs came on immediately:
Otherwise it would do nothing. No characters, no LED switching. Another broken M2.
Here's the tag (german layout):
As I had cleaned it before I tried it, I had seen two SMD electrolytic capacitors on the controller pcb:
These can dry up over time and stop working. After 18 years it is quite possible that they're dry. The solution is to replace them. The small one is 2.2uF 50v, the big one is 47uF 16v. I used these for replacement:
2.2uF 63v electrolytic
47uF 16v tantal
Tantal is better because it doesn't dry but I only had a 2.2uF 35v tantal and didn't want to do it twice if that wouldn't work.
I didn't remove the pcb from the case.
The SMD capacitors are difficult to desolder. I use a very hot temperature, add a little solder for better heat distribution and push the legs to the side. If you push against the capacitor
it will finally come loose with a snap and tear the other circuit path off in the process. So pushing the leg to the side seems to be the way to go. Here are the new parts, using correct polarity:
Immediately after soldering in the capacitors I connected the board to the PC. All LEDs stayed off. Tapping on the membrane showed that characters were generated as well!
During re-assembly there will be more holes than buckling springs. So it's good to take a pic before removing the springs:
Finished and working:
Unrelated, removing the numpad will be difficult with this version of the M2. There will be no room for the controller afterwards.