Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.
Linux gaming rigs? Yup, they’re happening. With Valve’s Steam on Linux and a forthcoming Valve Steambox using Steam to run Linux games, the future is looking up for gaming on Linux. You can even install Ubuntu and Steam on a computer today, plugging it into your TV and using the big picture mode interface. The missing piece of the hardware puzzle is a controller. Luckily, Microsoft’s ubiquitous Xbox 360 controller has a standard USB connection and functions well with Linux, just as it does with Windows and Android.
Of course, a controller isn’t just useful for playing games on your television. Some types of games — 2D platformers, for example — cry out to be played with a controller. One of the PC’s strengths — whether it’s running Linux or Windows — is offering a variety of options for controlling games.
Connecting an Xbox 360 Controller
The Xbox 360 controller has a USB connection, so you can plug it into your Linux PC’s USB port, just as you would on Windows. On most Linux distributions — including the latest versions of Ubuntu — the Xbox 360 controller should work without any more tweaking required.
You can test if the Xbox 360 controller is working by opening a terminal and running the following command:
dmesg | grep xpad
If you see information saying the xpad driver was registered, you’ll know that the controller has been recognized by your Linux system.
The Xbox 360 controller is recognized using the “xpad” kernel driver. You may want to Google the name of your Linux distribution and “xpad” for instructions on making it work if it doesn’t.
Assuming the controller is working, you can now fire up games that support it and play them. For example, you can launch Steam, click the Big Picture icon in the top-right corner, and use the controller to navigate through Steam’s Big Picture mode and launch games.
Whether a game supports the controller will depend on that game’s developers. Some games will respond to the controller immediately — for example, it works fine with Valve’s free-to-play Team Fortress 2. Some games will have configuration screens where you can configure them to acknowledge your controller. Some games disappoint by ignoring the controller and providing no configuration options.
The controller should work particularly well with the wide variety of emulators available for Linux. They’ll all allow you to customize the input controls you use. Emulators have always been one of the highlights of gaming on Linux.
Connecting a Wireless Xbox 360 Controller
Unfortunately, a wireless Xbox 360 controller doesn’t communicate over standard Bluetooth, so you can’t pair it directly with your Linux PC. (You can’t pair it directly with a Windows PC, either.)
To connect a wireless Xbox 360 controller to your Linux PC, you’ll need the same Xbox 360 Wireless Gaming Receiver adapter you’d need for a Windows PC. Just plug the adapter into your computer’s USB port and you should be able to use the wireless controller normally. The wired controller is better-supported by Linux’s drivers, so you may run into a few issues with the wireless controller — but it should work.
Playing Unsupported Games, Using Other Xbox 360 Controllers, and More
Let’s say you want to use your Xbox 360 controller with a game that doesn’t support it. On Windows, you’d use joy2key to remap the controller’s inputs to key presses, allowing it work in games that only respond to key presses.
On Linux, you can do this by installing the xboxdrv driver. This driver provides many more configuration options as well as support for other Xbox 360 controller, such as ones made by Logitech and other companies. You can easily install it on Ubuntu by running the commands on its web page.
xboxdrv provides an extreme amount of options, including the ability to tweak everything about the controller’s input, create startup scripts that launch games with special options that allow you to create per-game controller button-to-key remappings, and more. You’ll find a huge amount of information on the xboxdrv manual page.
The Xbox 360 controller is probably the most compatible controller out there at the moment, so it’s one of the best choices for playing games on Linux. When Valve finally releases their own dedicated controller for their Steambox consoles, this may change — but the Xbox 360 controller is where it’s at for now, whether you’re gaming on Windows, Linux, or even Android.
Have you ever set up an Xbox 360 controller on Linux? Do you have any other tips, or do you prefer another controller? Leave a comment and share your experience!