DIY USB Gamepad
From Xbox-Linux
Convert an Xbox gamepad into a USB gamepad
The X-pad connector
The first thing to do was hack off the connector and take it apart. There are five wires in an X-pad xconnector, which equate to the four standard wires plus one of unknown use. (Note: the 'unknown' yellow wire provides 12v power for the 'rumble' motors)
[:
]
The wires in the diagram correspond to:
- Pin 1 (red) = +5V
- Pin 2 (white) = -Data
- Pin 3 (green) = +Data
- Pin 5 (yellow) = Unused
- Pin 4 (black) = -5V (ground)
The USB Connector
[
]
As you can see, the X-pad connector is not unlike a USB connector, and the wires are interchangable. Here's a diagram of a standard USB connector for comparison...
In this image, the wires are:
- Pin 1 - +5V
- Pin 2 - -DATA
- Pin 3 - +DATA
- Pin 4 - -5V (ground)
That unused X-box pin 5 sits second from the right (or left, depending how you look at it) of the X-box connector and so the wires on a standard USB connector are NOT IN EXACTLY THE SAME ORDER!! Remember this! Just leave that pin 5 out when you solder your USB connector and place the other wires in the order they came off the X-pad connector as if pin 5 weren't there.
So Now it's just a case of soldering the X-pad wires onto the appropriate pads of your USB connector!
The Final Product
[
]
Notice from the pictures that you can almost patch the x-pad wires onto the USB connector 1-for-1, you just have to miss out that Pin 5 (the forth along on the X-pad).
Here's the finished article, it works perfectly under Linux using the xpad driver!

