Finally, a keyboard for the iPhone


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.


  1. monkeyslayer56 says:

    love the smell of an arduino :)

  2. andrew says:

    Kinda takes the portability out of the iPhone, dontcha think?

  3. sly says:

    just needs one of those roll-up keyboards. besides, with the level of man purses out there (re: back-packs) you can always carry a few more items.

  4. tripp says:

    Sweet, this is something I’ve been looking to make myself, and it looks like the only thing I’ll need to buy is the ipod connector breakout. I’m off to sparkfun ^_^

  5. MS3FGX says:

    Does the iPhone seriously not support Bluetooth HID? Even my garbage dumbphone from Verizon supports BT keyboards.

  6. nave.notnilc says:

    okay, now /this/ is an appropriate use for an arduino

    well done

  7. tj says:

    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.

  8. darksim905 says:

    Is such an easy solution possible for a BlackBerry instead of buying their proprietary keyboards?

  9. mj says:

    Get a mini keyboard and shoehorn the battery and a Arduino Mini or Nano in it and you’re portable again.

  10. cptfalcon says:

    I was hoping this was more info on the bluetooth keyboard iphone hack:

  11. RHF says:

    haha all this when there is this: good catch cptfalcon!

  12. cptfalcon says:

    I did a little more sleuthing and found some code towards iphone/ipod bluetooth keyboards:

    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.

  13. …for those waiting for Bluetooth HID, there will be a first release of the BTstack for iPhone soon, and a (beta?) Bluetooth iPhone HID driver in less than a months time.

  14. emuboy says:

    I want this for my G1.
    because I want to map the keyboard in an car-motive controller for using it while i drive…

  15. Hackius says:

    The iPhone is closed source. Why any serious hacker would want it is beyond me.

  16. wowow this is grate NEWS

  17. Beavis says:

    How is this a hack? Sorry, I thought it was tradition to say that to every post on this blog.

  18. nave.notnilc says:

    only since the great influx of idiots

  19. jeff-o says:

    @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.

  20. Mike says:

    It doesn’t look pretty, or portable, but it works (and documented nicely). It’s up to you to make a custom PCB and make it all-in-one and smaller.

  21. Laurencium says:

    Heres an arduino use we can all agree is good

  22. Arkenklo says:

    Why not just use one of those tiny bluetooth keyboards?

    Oh wait… Nevermind.

  23. mj says:

    @Laurencium Needs an upgrade to the Atmel 328 ‘DD’ if you ask me

  24. cptfalcon says:

    @Hackius: closed source can be part of the fun, if you enjoy RE :)

  25. tripp says:

    Well I can’t really use a bluetooth keyboard in my case since I have a first gen itouch, which lacks bluetooth >.<

  26. reboots says:

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

    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:

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

  27. Mike says:

    Seems like a lot of hard work went into this project. I hacked together a keyboard using the same VNC method last year, but the wiring was much simpler.

  28. It’s amazing. Now iphone users can also use the keyboard. But i wanna know that is this keyboard is portable?

  29. yonsje says:

    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?

  30. Now iphone users can also use the keyboard. But i wanna know that is this keyboard is portable?

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Get every new post delivered to your Inbox.

Join 96,449 other followers