Of the many different types of game controllers available, we find gamepads
the most interesting. They are generally cheaper and smaller than other types of
controllers (such as joysticks, flightsticks or wheels) and often have the largest
number of inputs. Taking a typical gamepad apart reveals a motherboard with
4 analog and 12 digital inputs. These inputs comply to the standard 0-5 volt
sensor input range, and thus most sensors can be connected to the input points
on the main board directly. In most cases the motherboards are clearly marked,
so it is easy to see where the different connectors are, but in some cases it might
be necessary to check with a multimeter which connectors carry signal, +5 volt
and ground. For simplicity and for making a generic sensor interface, we usually
de-solder the small joysticks, and solder on cables with 3-pin connectors. This
makes it is easy to test different types of sensors with the interface.
The result is a generic sensor interface with 4 analog and 12 digital inputs,
8-bit resolution and 100Hz sampling rate. Using a ”rumblepad” will even give
a couple of analog outputs and small motors, and a wireless gamepad can be
turned into a wireless controller. For large projects with a need for lots of inputs,
it is possible to connect several controllers through USB-hubs.