Earlier quoted context omitted.
The cool thing about the modern world is that incredibly talented people have already written decent opensource keyboard firmware. But I'll get to that in Part 2 of the writeup :)
Excellent. I look forward to reading about that :)
Building a Keyboard
11–15 of 15 posts
Re: Building a Keyboard
#12Earlier quoted context omitted.
Yeah I know just enough about hardware to be dangerous but I think you can stick 6 16-bit GPIO expanders off of an I2C or SPI bus and address every switch individually. Makes no sense for mass production but for diy it's $10 in parts or something http://octopart.com/mcp23s17-e%2Fso-microchip-470569
Scan rate is shit though if you have to use spi/i2c.
Re: Building a Keyboard
#13Earlier quoted context omitted.
Yeah I know just enough about hardware to be dangerous but I think you can stick 6 16-bit GPIO expanders off of an I2C or SPI bus and address every switch individually. Makes no sense for mass production but for diy it's $10 in parts or something http://octopart.com/mcp23s17-e%2Fso-microchip-470569
Scan rate is shit though if you have to use spi/i2c.
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...
Re: Building a Keyboard
#14Could you ballpark what the cost to build one would be?(ignoring tools like the soldering iron?)
Re: Building a Keyboard
#15I've been keeping an eye on the ergodox, but was probably going to go with a kinesis. You've tempted me about the fun of building one myself instead. 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.