TinyKBD -- A small computer keyboard controller
TinyKBD uses an Atmel ATtiny2313 microcontroller to implement a simple and
inexpensive keyboard device for PC hardware. The ATtiny2313 comes in a 20pin
DIL package. 4 pins are used to connect a standard PS2-cable (which also
contains power-supply). The remaining 16 pins form an 8x8 matrix for connecting
Here is a photo of the protoype. The keyboard matrix connector was directly soldered underneath a 20pin IC-socket, eliminating the need for a PCB.
Software is written in C, using gcc under Linux. The Project Page offers source and
binary packages. Binaries come as IHEX records and can be installed with an
IN-System Programmer like e.g.
using a STK200 compatible
cable. (Schemtics: minimal or standard).
uisp -v -dprog=stk200 -dt_sck=30 --segment=flash --erase --upload --verify if=tinykbd.hex
avrdude -c stk200 -p ATtiny2313 -P /dev/parport0 -U flash:w:tinykbd.hex
- (easy:) Make keyboard matrix cutomizable via onchip eeprom.
Currently changing the matrix requires recompilation.
- (easy:) design a small PCB, add a demultiplexer (74*138) to support
more than 64 keys.
- (possible?) Support USB as an alternative to PS2. Pointers welcome.