Computer Game Controllers
A game controller is a specialized input device optimized for use with games. Unlike keyboards, mice, and trackballs, which are relatively standardized in form and function, game controllers run the gamut in shape, size, features, and purpose. Some game controllers sit on the desktop. Others clamp to the desk, and still others are held in both hands and manipulated directly. Game controllers may provide a joystick, a steering wheel, a flight yoke, foot pedals, or may be what we call "grab, twist, and squeeze" controllers.
A particular game controller may be well suited for one game and entirely inappropriate for another. For example, a game controller with a steering wheel may be perfect for an automobile racing game, but unusable for a first-person shooter (FPS) game like Doom 3. Serious gamers who play diverse games often own several game controllers and use the one most appropriate for the game they are playing at the moment.
Older game controllers used analog sensors and the analog "game port" interface, both of which caused no end of problems. Analog controllers drifted and required frequent recalibration. The game port interface originally designed for analog data acquisition and to support two simple paddles for playing Pong was never intended to support the numerous sophisticated features of modern game controllers, and did so poorly. Nearly all current models use digital sensors, and all of them use the USB interface. Although conflicts still arise, particularly if you install multiple game controllers on a system, the USB interface has eliminated most of the problems that formerly made configuring game controllers more a black art than a science.
The following sections tell you what you need to know to choose a game controller.
Game controller characteristics
Here are the important characteristics of game controllers:
The first game controllers were joystick controllers, which are still popular and still most appropriate for playing flight simulator and air combat games. Some are marginally usable for some driving, racing, action/adventure, and sports games. Steering wheel controllers, many of which include foot pedals, are ideal for driving/racing games and some flight simulators, but ill-suited to other games. Gamepad controllers are suitable for action games, including first-person shooters, sports, and most arcade-style games.
Number of axes
An axis is a line drawn through the center of the joystick (or the D-pad on a gamepad) that defines the directions that one can move by manipulating the controls. All controllers have an x-axis (side to side movement) and a y-axis (front to back). Some controllers add a z-axis (up and down) and/or a throttle axis. Depending on the controller type, the third and/or fourth axes may also be called a yoke control or rudder control, for their intended function, or a twist control, for the method used to activate the axis.
The throttle is a variable input, present on most joysticks and some gamepads, and normally assigned to the third or fourth axis on the controller. The throttle is usually used to control vehicle speed, and may be a slider, wheel, pedal, or variable-pull trigger, depending on the controller.
Motion along an axis can be tracked in two ways. Proportional response (common with joysticks) offers finer control, because small stick movements result in small incremental movements onscreen. Non-proportional response (common with gamepads) is all-or-nothing any movement of the control along an axis results in full motion on that axis, offering faster response at the expense of fine control. Some controllers are programmable to allow choosing between proportional and non-proportional modes.
Number of buttons
All controllers have buttons, which are momentary-on switches used to fire weapons and perform similar on/off functions.
A hat switch, sometimes called a POV hat, a Point of View hat, or just a hat, is called that because it usually resides on the head of the joystick, where it's easily manipulated by the thumb. The hat switch is a directional rocker switch (usually four-way, but sometimes eight-way) that allows you to rapidly change your point of view to face front, rear, left, or right. Games that do not support POV may use the hat to provide four extra buttons.
Recent high-end game controllers have force-feedback technology, which uses small servo motors built into the game controller itself to provide physical feedback under the control of game software designed to use force feedback. For example, with a force-feedback joystick, as you pull a 7G turn you feel the joystick jerk and jitter as the aircraft control surfaces lose laminar flow, but as you extend to gain airspeed, the controls settle down again. When you come up on the six of a bandit and begin hosing him down with your 30 mm rotary cannon, the joystick stutters as the gun recoils.
Well-implemented force feedback greatly enhances the ambiance of games that support it properly. The only real drawback to force feedback is that it is expensive. A $50 controller without force feedback might cost $100 with it. Interestingly, this same technology (in much enhanced form) is used in current fly-by-wire combat aircraft.
All current game controllers include DirectInput drivers or are compatible with standard Windows drivers. A DirectInput-compliant controller can be programmed within any DirectInput-compliant game. However, DirectInput provides only basic functionality, so many controllers come with their own programming software that provides extended functionality, including:
By default, games may use different buttons for similar purposes. For example, one air combat game may use button 1 to fire guns, button 2 to launch a Sidewinder, and button 3 to launch a Sparrow. Another air combat game may offer similar weapons selection, but use different buttons. Programmable game controllers allow you to redefine button functions so that the same button performs similar actions in different games.
Many modern game controllers are quite flexible and may be used with diverse games. Optimal controller configuration for one game, however, may be less desirable for another. Better game controllers can store multiple groups of configuration settings, called macros or profiles, that allow you to quickly load whichever settings are most appropriate for the game you're about to play, rather than having to reprogram the controller manually each time. Most such controllers come with predefined settings for various popular games.
Choosing a game controller
More so than for any other input device, the "best" game controller is a matter of personal preference. If it feels right to you, it probably is right. If it feels wrong, it's probably wrong, no matter how much someone else may like it. Use the following guidelines when choosing a game controller:
Get the right type(s).
Make sure the game controller type is appropriate for the games you play most often. If you frequently play two or more games that are illsuited to using the same controller, buy two or more controllers, and use the type most suited to whatever game you play.
Buy a force-feedback model.
If an appropriate force-feedback model is available and is within your budget, buy it rather than the cheaper model. Many games support force feedback, and that support is of a higher quality with each upgrade of many games.
Solicit advice from friends.
Friends are among the best sources of information about game controllers. You'll get a great deal of feedback from them, much of it conflicting, but valuable nonetheless. Not the least advantage of this method is that they'll probably let you play a few games with their controllers, giving you the opportunity to judge the merits for yourself in a realistic environment.
Installing a game controller
Physically installing a game controller is straightforward: plug it into the USB port. Before you connect the game controller, however, we suggest that you visit Microsoft and update Windows to the latest drivers, particularly DirectX.
Troubleshooting game controllers
It's impossible to provide comprehensive information about troubleshooting game controllers because both the controllers themselves and the problems you may encounter are so diverse. A cheap game controller is probably going to physically break or otherwise fail sooner rather than later. There's not much we can say about that, except to suggest that you buy a better-quality game controller in the first place. If you experience problems with a good game controller, here are some actions to take:
Install the latest release of DirectX.
DirectX is a work in progress. If you have problems with a game controller, particularly a new model or one you have just installed, download and install the latest version of DirectX. Before you install the update, review the DirectX FAQ (http://go.microsoft.com/?linkid=664008&e...) carefully to discover issues pertinent to your own configuration. It's also a good idea to review the FAQs posted by the makers of your video card, sound card, and game controller to discover any potential conflicts or interdependencies such as a need to update drivers for those devices.
Install the latest drivers.
Some game controllers provide basic functionality using the default drivers provided with Windows. If your game controller appears to be only partially functional, you may need to install a driver to support its enhanced functions. Most game controller vendors frequently update drivers to fix bugs, add support for new games, and so on, so it's a good idea to check the vendor support page frequently.
Update your system BIOS.
If you have problems with a game controller connected to an older system, update the system BIOS. For example, on one older system, we installed a joystick that the driver insisted on recognizing as a gamepad.
We tried updating the driver software, DirectX, and so on, all to no avail. Then we noticed after updating the main system BIOS for unrelated reasons that the driver now recognized the joystick as a joystick. We reflashed the BIOS to its original level, and the problem recurred. We re-reflashed the BIOS to the updated level, and the problem went away again.
Make sure the game controller is configured for the game.
If the game controller appears to work properly for one game but not others, make sure that you've used the programmable functions of the game controller to configure it properly to support the other games. Most programmable game controllers include predefined profiles for popular games. If no profile is included for a game you purchase, check the vendor web site to see if an updated profile for that game is available.
Make sure the game is configured for the game controller.
The default configuration settings for some games are inappropriate for some game controllers. For example, although many first-person shooter (FPS) games disable the freelook/mouselook feature by default, some gamepads require it to be enabled for proper functioning. Each time you install a new game, check the game controller manual or web site to see if there are specific instructions to configure the controller optimally for that game.
The following material describes some specific problems you may encounter and some possible solutions. As always, the best way to troubleshoot problems is to swap components. If you have another system and/or another game controller available, try swapping controllers back and forth between the system to determine if the problem is caused by the system or the controller. Most problems occur with older controllers that use the gameport interface. The best solution is often to replace your game controller with a new USB model.
No controller applet appears in Control Panel.
Install the software for your game controller. If you have already done that, install DirectX manually. Although most controller software installs DirectX, some requires you to install it yourself. Installing DirectX adds the Control Panel applet.
Installing a DirectX update causes problems.
Reinstalling the latest version of your controller software after installing the DirectX update almost always fixes the problem. If that doesn't work, visit the controller maker's web site for additional information. If the web site offers no fix and you are using a gameport controller, try uninstalling your sound card drivers completely. Once you've eradicated all traces of the sound card drivers, shut down the system and physically remove the sound card. Then power the system back up (without the sound card) and shut it down again. Reinstall the sound card, restart the system, and reinstall the sound card drivers.
DON'T REVERT DIRECTX
Never try to downgrade DirectX by installing an earlier version over a later version. It just doesn't work, and attempting to do it causes worse problems than the one you're trying to solve. If you absolutely must revert to an earlier DirectX version, the only way we know to do so reliably is to strip the hard drive down to bare metal and reinstall Windows and all applications.
Installing a new sound card or updating sound drivers disables force feedback.
Gameport DirectInput force-feedback controllers use MIDI signals to control feedback. If you didn't completely remove all vestiges of the old sound card drivers, the new card or drivers may not be configured to use MIDI correctly. Uninstall the sound card and drivers (as described earlier) and reinstall them.
Controller doesn't work on gameport switch or with extension cables.
To make it easier to switch among controllers, some people install a gameport switchbox or extension cables. If you are having problems with a controller connected via a switchbox or extension cable, try connecting it directly to the system. Switches work with most analog controllers, but don't work with analog force-feedback controllers or any digital controller. Extension cables also often cause problems. The controller may not function at all, or it may function sporadically. Either dispense with the extension cables, or buy better-quality cables.
Y-cable doesn't work with two controllers.
A Y-cable should allow you to share one gameport between two analog game controllers for head-to-head play. However, the pinouts of Y-cables are nonstandard and a given Y-cable may not work with a particular type of controller. If the controllers are different models, it may be impossible to find a Y-cable that allows you to use both. Even if the Y-cable works properly with the controllers, each controller will be limited to a subset of the functions that it supports when it is the only controller connected. The best solution is to use two identical controllers that have pass-through ports which allows you to use the full feature set of both controllers or to use USB controllers.
USB game controller does not work properly.
Problems are infrequent with recent USB ports and USB game controllers, but occur more often with older USB ports and/or game controllers. If your USB controller is functioning improperly or not at all and installing the latest version of DirectX and the controller drivers doesn't solve the problem, there are several possible hardware problems:
Defective USB port
If you're sure software isn't the problem, first try plugging the controller into a different USB port. We've encountered few bad root USB ports on motherboards, but bad ports are not uncommon on inexpensive USB hubs.
Incompatible USB controller, port, or device
Modern USB 2.0 devices are rigidly standardized, but older USB 1.1 devices were plagued by incompatibilities. Early USB motherboards particularly those based on older VIA chipsets have USB bugs that frequently cause problems with USB game controllers, even current models. Nor is the fault always with the motherboard. Some early USB game controllers were not fully compliant and may or may not function properly when connected to a particular USB port. If the motherboard is at fault, you can solve the problem by replacing the motherboard or by disabling the motherboard USB ports and adding a PCI expansion card that provides USB 2.0 root ports. If the device itself is the problem, the only solution may be to replace the device.
Inadequate USB power
Some USB game controllers draw more power than an unpowered USB hub or USB keyboard jack can supply. If your game controller doesn't work when connected to an unpowered USB hub, try connecting it to a root hub port on the PC or to a powered USB hub port. Note that not all motherboard USB ports are fully powered, and sometimes two USB ports share power. A good rule of thumb is to try to figure out which USB ports are on separate root hubs when you use USB-powered stuff, and connect power-hungry USB devices to different root hub ports. If your game controller doesn't work when connected to a motherboard USB port but works when connected to a motherboard USB port on another system, using a powered USB hub will likely solve the problem.
Bad USB cable
Surprisingly often, USB cables are defective; particularly those you find for $3 in a bin at the computer store. But we've encountered defective USB cables of all sorts, including those bundled with motherboards and USB devices. We generally keep a couple of spare Belkin USB cables on hand for such eventualities (http://www.belkin.com).
Game controller fails to work when daisy-chained.
The way USB is supposed to work and the way USB actually works are two entirely different things. Although you should in theory be able to daisy-chain USB devices freely, in practice it often doesn't work out that way. If your USB game controller doesn't work when daisy-chained, try connecting it to a root hub port or to a powered USB hub.
Force-feedback controller does not center properly.
With the game controller active, open the controller applet in Control Panel. Disconnect the controller, recenter it while disconnected, and then reconnect it. Refresh or update the controller in the applet.
Older gameport controller fails on newer systems.
Older gameport controllers were designed for the gameports on ISA sound adapters, which use 5V logic. Newer PCI adapters typically deliver only 3.3V to the gameport, which may be inadequate to drive the older controller. The only practical fix is to replace the controller.