PS/2 Keyboard Or Mouse
Arduino isn't limited to taking input from sensors: you can even connect up a full-size PS/2 keyboard just as if it were a "real" computer and type away! Connecting a keyboard to an Arduino may sound a bit odd (after all, it's just a little microcontroller) but keep in mind that an Arduino actually has more processing power and memory than a complete desktop machine of not so many years ago. Adding some peripherals that you would normally associate with a full-size computer opens up some interesting possibilities.

Perhaps PS/2 seems a bit dated and you'd rather use a modern USB keyboard with your Arduino. After all, even finding a PS/2 keyboard can be tricky now and you may have to go dumpster-diving or hunting through that pile of old hardware in the company storeroom to find one. Using a USB keyboard may sound like the obvious solution but unfortunately an Arduino just isn't up to the job of acting as a USB host - it's simply not fast enough. All is not lost however because many USB keyboards are designed for backward compatibility and come with a little purple "USB to PS/2" adapter that allows them to be plugged into a PS/2 port. Keyboards that come with those adapters are designed to detect when they are plugged into a PS/2 port rather than a USB port and automatically revert to acting as a PS/2 device, so this project should work just as well with a modern USB keyboard connected via an adapter as with a genuine antique PS/2 keyboard.
Or if you want to go even more retro you can even use this same circuit with an old-style "AT" keyboard because even though they use a different connector they have the same electrical interface as a PS/2 keyboard.
Parts Required
| Qty | Description |
| 1 | Arduino Duemilanove, Arduino Pro, Seeeduino, or equivalent |
| 1 | Prototyping shield |
| 1 | PS/2 extension cable or 6-pin mini-DIN socket |
| 1 | PS/2 keyboard or PS/2 mouse |
| 10cm | Hookup wire |
PS/2 Keyboard And Mouse Schematic
Source Code
github.com/practicalarduino/Ps2Keyboard
github.com/kristopher/PS2-Mouse-Arduino
www.arduino.cc/playground/uploads/Main/PS2Keyboard_014A.zip
Resources
Rainbow House automated home with keyboard demuxer: linux.dd.com.au/wiki/Rainbow_House
PS/2 Keyboard page on Arduino wiki: www.arduino.cc/playground/Main/PS2Keyboard
Kit Suppliers
Toys Down Under: toysdownunder.com/arduino-ps2-keyboard-or-mouse-input-kit.html
Errata
No corrections reported yet for this project. If you find one please let us know.
Gallery
Have you built this project or something inspired by it? Please let us know and we'll put a picture of it here!

