20140312 ASETNIOP Keyboard

From previous projects I naturally have leftover parts.  I'm a hoarder by nature so if I can get 100 extra LEDs for another dollar when I only need 10...Well, I have a lot of LEDs around my apartment.  I'm sitting on a couple small profile µcontrollers including a Trinket and a DigiSpark.  These aren't super expensive, in fact they're ridiculously inexpensive, but they're cool and I've got then in a plastic bin ready to go.  I also have nine NeoPixels sitting on my desk.

On the ASETNIOP website there are some handy images on the About page which demonstrate which chords form which letter.  Since I've assigned values to those buttons I modified their images with the exponential button values and that probably saved me a lot of headache.
These images are probably still copyrighted to the crew at asetniop.com.

Enough background.
Ideas were hashed about what to use as feedback devices.  The most logical choice so far is lights by way of a NeoPixel.
     Green - Typing text.  Normal operation.
     Red flash - Unrecognized chord.
     Yellow - Typing numerals and symbols.
     Pulsing green - Shift pressed during text mode.
     Pulsing yellow - Shift pressed during numeral mode.

The chart for the button values and corresponding keyboard strokes was expanded to include the numerals.

The switch case was learned from arduino.cc

 Serial I/O chips were researched.  The MCP23008-E/P was decided upon due to its low cost and PDIP package.  This decision means that handles will have I/O and a simpler µcontroller can be used.  Probably Trinket or Digispark.

To do:
• Finish pseudo code
• Code
• Order parts
• Design circuits in each enclosure
• Draft circuits