The Parrot Keyboard

other links
about mith
Mith & his keyboard
Can I get a keyboar?

Presentation Page 1
Presentation Page 2
Presentation Page 3
Presentation Page 4
Presentation Page 5
Presentation Page 6
Presentation Page 7

Note: The next couple of pages contain a lot of technical material—examples of computer code, diagrams, etc. Click here if you'd rather skip all that.

What I did

In June of last year, I sketched a simple design for a 5-key keyboard that could stand up to the demands of the parrot world and would be simple to build.

First keyboard sketch

The keys consisted of rods that would extend through the bars of the parrot cage and would be activated by the bird pressing or pulling on them.

Outside of the cage (away from the prying beak of the bird) would be electrical switches that would be activated by the rods and the associated electronics to convert the switch closures to some signal that the computer could understand.

I also needed to determine how to best interact with the birds and how to develop something that they would want to interact with. The systems needed to appeal (or at least not repel them) in two different aspects:

  1. The physical keyboard had to be something they were willing to approach and did not frighten them.
  2. The software framework and the program material it provides had to be appealing. It is the payoff, the reason for the parrot to use the keyboard, the real attraction

Three Classes of Keyboard Challenges

Class 1: Keystrokes to key codes.

I have notes in my lab notebook (copies are on sale in to lobby) that deal with converting switch closures to serial signals, de-bouncing switches and various chips and components to build a keyboard encoder to convert the closing of the switch to something that could be understood by a computer program. I was actually looking at a stack of used keyboards that I bought for bird toys (we hang them in the cages by the cord and the birds take great joy in tearing them apart (ironic, huh?)


Lab notebook

It’s too bad, I thought, that I couldn’t somehow make use of the encoder that already exists inside of that keyboard to encode my key switches. Then the light bulb came on.

Electrical prototype

This electrical prototype got thrown together later that week to demonstrate that by connecting keys to the x and y grids of the keyboard matrix, I could encode simple momentary contact pushbutton switches to send PC keyboard key codes to a standard PC keyboard connector.

Class 2: What is a keyboard?


Detailed drawing

The initial design was for a lever that would rest on a switch. Pressing the lever would close the switch. The spring in the switch would return the lever to its resting position when released. The lever (or rod) needed a pivot point. It needed to rest on the switch. The rod needed to remain over the switch when it was pressed (or pulled, or walked on)

mechanical prototype

This mechanical prototype provided a test for the pivot, various switches (I tested the 4 momentary contact, normally open pushbutton switches available through Radio Shack) and the alignment of the rods over the switches. The rods are at different heights and the supports are different lengths because the switches mount at different heights above the mounting surface and I wanted the rods to rest parallel to the base of the switch.

Much of what I learned in this prototype was fabrication details, ordering of operations and assembly techniques and the use of my new drill press. This is, by the way, the only capstone project being presented here today that involves the use of a drill press.

Copyright © 1998-2003 John Fulton. All Rights Reserved. Trademarks and Servicemarks are the property of their respective owners.
References to commercial products do not imply endorsement by Franklin University or its Computer Science Program.
For questions, comments or errors, contact the owner of the contents, John Fulton at