Zerocat’s PS/2 Keyboard
The PS/2 Communication Protocol has been widely used for Keyboards and Mice until it got replaced by the more versatile USB standard. Unfortunateley, USB turned out to be open for security issues, as the controller’s firmware has a lot of power to access the host’s onboard system at hardware level. Therefore, PS/2 is still considered as an important fallback. Luckily, many computers which are supported by coreboot nowadays still provide PS/2 ports.
PS/2 uses a serial protocol in the range of a 10..16 KHz clock pulse. This forms a nice target for the Propeller Microcontroller, that free-design chip which Zerocat would love to use for new projects.
The result – and that’s the main idea of this project – would be a modified old keyboard which is controlled by a true free-design controller board, down to chip level. This would address several issues:
- trust your keyboard
- get rid of keyloggers
- fix bugs in the firmware
- support scan code sets 1, 2 and 3
- avoid USB firmware attacks
As a trustworthy keyboard is an important basic device, this project should be considered a useful contribution heading for free-design computer technology.
X200 Keyboard in Focus
Some first trials and experiments have been done using a ThinkPad X200 Keyboard with integrated Trackpoint. Luckily, it turns out that this keyboard is a barebone matrix of keys, no controller is involved. And it comes with a physically integrated pointing device, the TrackPoint. Based on information that has been gathered during disassembly, a drafted idea for Zerocat’s PS/2-Keyboard Setup is provided with the X200 Keyboard Hack.
- Zerocat’s PS/2 Keyboard Documentation
- Git Repository:
- If you want to join: firstname.lastname@example.org
This project comes as true free-design. The following licenses have been selected:
- GNU GPLv3 (or any later version) for code
- GNU FDL 1.3 (or any later version) for documentation
- CC BY-SA 4.0 international license for graphics and photos
- Zerocat Logo License for logo files and modified versions
If you need another free license, please let us know.