Hacker News new | ask | show | jobs
by rubatuga 3168 days ago
Doesn’t the micro controller in the keyboard still scan, and then send a ps/2 signal?
1 comments

Most mechanical PS2 keyboards are a diode cascade.

You pressing the key triggers a wave of electricity cross the keyboard which is converted into the PS2 waveform, and pumped out at the same rate of the incoming clock waveform.

OLD PS2 keyboards don't generally have internal digital micro-controllers, they're effectively analog, the logic they do contain is blindly simple. This is why some struggle with N-Key Rollover.

---

OFC this is if you are using an -old- PS2 keyboard. I'm still using an 80's IBM Model M and above it roughly how it works.

This is absolutely untrue for any PS/2 keyboard, as well as for most pre-PS/2 PC keyboards (incuding AT and XT keyboards). All keyboards have always had a microcontroller in them which is responsible for scanning the key matrix and sending output over the serial link. (In PS/2, it's also responsible for reading input to change the state of keyboard LEDs.) There is nothing analog about them whatsoever.

Here is a set of pictures of an IBM Model M, for instance. The microcontroller is clearly visible in the ceramic DIP40 package.

http://www.clickeykeyboards.com/model-m-gallery/1985-ibm-mod...

PS/2 and AT are also bidirectional protocols for controlling the LEDs, key repeat, and various other commands that at a minimum requires some sort of digital state machine to manage the interface.
I am having a very difficult time believing this.

- I cannot find about "diode cascades" having anything to do keyboards. The closest is the usual diode matrix to deal with simultaneous key presses.

- The PS/2 interface involves sending scan codes, parity bits, and start and stop bits. How exactly does a "wave of electricity" get converted into a PS/2 waveform without some digital electronics?

- All the old schematics for mechanical keyboards I could find were the usual matrix scan. Even a textbook from the 1970s.

Anyway, reference please. I'd find it very interesting to see how such a thing would work.