Building a Keyboard(blog.fsck.com) |
Building a Keyboard(blog.fsck.com) |
I really like the idea that you could use something like an iPad. (or better two iPads) rest your hands on the screen in what are your natural "home row" position. Then touch type text that appears on a screen in front of you while the iPads are busily figuring out how far your fingers are moving and 'tuning' where the other keys should be done. Once you've done like 50 words error free it beeps and send that off. Shapeways makes the cover, Albert PCB makes a circuit board, and you order key switches and diodes from a distributor. Boom a custom keyboard designed by you for you.
Could you ballpark what the cost to build one would be?(ignoring tools like the soldering iron?)
Keys - $0.80 x 78 Diodes - $2-$3 3D printed shells - $240 from Shapeways. Cheaper from a friend with a makerbot Keycaps - Cheapest when harvested from a board found at goodwill. Otherwise, $35 or so from WASD Teensy++ - $24
I'll leave the "priceless" joke to the peanut gallery.
Typical "fast" SPI clock rates are 10Mhz on a 20Mhz MCU[1], and with a daisy chained set of SPI parallel I/O chips (they appear as 'one' device on the SPI bus) you can clock the state of all 105 key switches (or 120 if you're using 5 of the 24 bit ones) into an embedded processor like the AtMega328 at 10mS per sample. So that is 100 samples per second. Usable for this stuff but not ideal.
Since the n-key rollover patent [2] expired a number of companies have made chips that implement this for arbitrary sized matrices (given i/o pins) of which an exemplar is Atmel's AT43USB325E [3] which can handle up to 20 x 8 (that is 160 keys). The Atmel part is especially useful because it has a built in USB 'peripheral' port and the app notes for this part show how to easily make a USB keyboard out of a bunch of random key switches hooked to a diode matrix.
[1] http://www.atmel.com/Images/doc2585.pdf
[2] http://www.google.com/patents/US4517553
[3] http://datasheet.octopart.com/AT43USB325E-AC-Atmel-datasheet...