Smartphones have become powerful enough to make your Nintendo DS or PSVita almost useless... However, they all suffer from a big lack : tactile controls.
Have you ever tried to play a race game or mariobros with you thumbs on the screen ? It's horrible ! you can't feel the keys, loosing them after a few seconds of playing, and you mask a big part of your screen with your big fingers... Because of that, I've had to remove those kind of games from my phone, keeping only slow platform games or Sudokus...
This project is a full featured gamepad in which you just have to put your phone and start playing. Thanks to HID USB interface, it is recognized by all android devices without any software installation !
- The number of controls is to be defined, but there will of course be a mushroom joystick on the left, at least 4 buttons for right hand, and maybe L/R controls. I'll have to check how many of them are supported by Android devices.
- Smartphones suffer from high battery drain during games and their autonomy becomes ridiculous. This gamepad would embed a lithium battery (with its charger and dc/dc converter) to supply phone during game through its USB connection. Additionnal Battery can be recharged simply with a micro USB port, exactly like your phone with the same wall supply...
You like the idea ? Have some improvements to suggest ? Don't hesitate to comment !
Update 2013-11-27 : Have to make a choice...
I spent a few hours studying USB standards, especially the part talking about charging devices. It seems like my idea isn't supported by USB protocol. A charger can be a USB Host delivering power supply or a dedicated charge station, with or without communication possibilities. In this case, the charger is the Host, the cell phone stays "device".
For a gamepad, we use the smartphone as a host, the gamepad being the device. Unfortunately, a device cannot supply current to its host, and a gamepad cannot be a host...
- 1st solution : Design a gamepad only, without charging/autonomy expander. The project suddenly becomes less interesting
- 2nd solution : Keep the USB connection as a charging station and use a bluetooth link to transmit keys. This is way more complicated because it means using the Bluetooth HID protocol. Standard BT modules are easy tu use as serial links but need to be programmed for other protocols. I found very few information about HID enumeration, at that seems a bit more complicated for my programming skills...
Anyone could help with BT HID devices ?
Update 2013-11-28 : Good new ! Project keeps on !
After spending a few more hours studying USB Battery Charging Specification, I found a way to make the cell phone stay in host mode while being charged by a device. This is called an 'ACA' for Accessory Charging Adapter. The trick is to connect the 5th pin of micro USB plug to GND with variable resistor values, depending on the situation :
ID Pin to GND : Charging disabled. Host mode only
ID Pin + 68k to GND : Charging. Communication disabled
ID Pin + 124k to GND : Charging + communicating with device
That's a great new isn't it ??? :-)