[ProtoDojo] wanted to play a racing game on his iPad, but he was not a big fan of using the touch interface for this particular title. Instead, he put together a pretty neat little hack that allows him to play games on his iPad using an old NES controller.
He built a set of custom conductive arms which he mounted on three micro servos. The servos were attached to the iPad screen using small suction cups in the locations where it expects to receive button presses. They are also wired to an Arduino that interprets button presses from the attached NES controller. When the Arduino senses that the D-pad or buttons have been pressed, it triggers the servos, which in turn press the virtual buttons on the screen.
In the video below, you can see that after adjusting the servo positions, the setup seems to work pretty well. You might expect to see some sort of lag with a setup like this, but we didn’t notice any. The [ProtoDojo] web site is currently down due to heavy traffic, but you should be able to find some more build details there, once it becomes functional again.