Finally, A Keyboard For The IPhone

1941564841616847948

We can’t say we’ve had problems typing on our iPhones here at HackaDay, must be the elfin fingers, but for [Ben Kurtz] it was a real pain. The obvious solution is to carry around an Arduino, 9 volt battery, iPhone breakout board, a ps2 keyboard, and of course the iPhone itself. Well, maybe it could be a little smaller with fewer parts, but at least it works. The Arduino reads input from the keyboard and converts it to serial, then the iPhone pulls the data via VNC. Like we said, a little roundabout, but we love the amount of ingenuity involved.

31 thoughts on “Finally, A Keyboard For The IPhone

  1. A refined solution would be a very small PCB with a UART IC solution or whatever(I don’t know the specs) that is very low profile. You could probably use a much smaller cell too, something with maybe 5v and 2kmah+.

    Thanks adruino for another hack.

  2. I did a little more sleuthing and found some code towards iphone/ipod bluetooth keyboards:
    http://code.google.com/p/btstack/
    http://code.google.com/p/ibluetoothproject/

    I just I wish I had some time to hack on this. ibluetoothproject looks like more of a hack, while btstack looks more robust – or at least intends to be :) With the ipod portability / battery life, it makes an attractive portable computing system with a keyboard. You could get a full 80 width terminal in there with 6 pixels per character.

  3. @mj: Yep, shouldn’t be too hard to remove the ATMega from its arduino board and place it onto its own board along with the Sparkfun iPhone interface board, then shove it all inside the body of the keyboard.

  4. Have a look at Atmel’s appnote AVR313: Interfacing the PC AT Keyboard.

    http://www.atmel.com/dyn/resources/prod_documents/DOC1235.PDF

    This was published in 2002 and includes full C source code for an AT keyboard-to-serial interface. Integrating an AVR and mini-din socket within the space of an iPhone connector shell is an exercise for the astute reader. It shouldn’t be too hard.

    When all you have is an Arduino, the solution to every problem is doomed to be a $30+ rat’s nest.

    For those of you interested in implementing this at home, there may be a better solution than either the Arduino or the bare AVR. Most PDAs manufactured in the past 10 years had various aftermarket keyboards available; you can find them for pocket change on the used market since the PDAs are obsolete. Most of these keyboards (Palm Pilot, Compaq IPAQ) use a simple serial interface which should connect directly to the iPhone’s serial lines. Here’s one guy’s project to get you started:

    http://www.splorp.com/newton/stowaway/

    Better jump on it before Apple releases Bluetooth HID and takes all the fun out of the hack.

  5. Hi,
    I’ve been trying to get TouchClient.c to compile on my ipod but so far no succes, when i type “gcc -static-libgcc -o TouchClient TouchClient.c -lvncclient ”
    I get:
    “ld: library not found for -lSystem
    collect2: ld returned 1 exit status”
    Does anyone know how to fix this?

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.