micolous.id.au

The result of a blogging accident

Xbox 360 “Big Button” IR Receiver

I found some kernel patches around for the Xbox 360 “Big Button” controllers (USB Device ID: 045e:a101). These are bundled with the game `Scene It? Box Office Smash <http://en.wikipedia.org/wiki/Scene_It%3F_Box_Office_Smash>`_.

These are written by James Mastros (not me). At the moment, the Linux kernel developers have not accepted any patches for supporting the device, because of code quality issues. So if you wanted to have a go with these drivers, be aware that it’s experimental in nature, may cause your computer to catch fire, or crash your system if you press the wrong combination of buttons. Take care!

For convenience, I’ve tarballed up the driver and a basic Makefile (for Debian) that will allow you to build the module without recompiling your whole kernel. It should be a simple matter of extracting the archive to /usr/src and typing ‘make’. This will build the module ‘xbox360bb.ko’, which you can insmod. You’ll need build-essential, linux-headers and linux-kbuild packages for your kernel installed.

It presents the controller has four input event devices, one for each coloured controller (green, red, blue and yellow). Each controller has 7 “normal” buttons, plus a big button on the top acts as a D-Pad and can be pushed straight down as another button.

You can test their operation with evtest. These don’t come up as regular joystick devices, which may make their use with other software difficult (ie: the program will have to be specifically designed to handle evdev to be able to use it as a controller).

The devices themselves use Consumer IR to talk to the receiver, so if you have a CIR receiver already in your computer, you can probably use the controllers without the dongle. However the dongle itself does not act as a CIR receiver with the xbox360bb module (so you couldn’t use it with a Windows Media Centre remote for a HTPC... but you could use the Big Button controllers for that).

Some ideas for these controllers, in case you had these or Buzz controllers and wanted a project idea:

  • A quiz game (obviously) with customizable questions. There’s a few programs out there that already do this, and chances are they could be extended to use the Big Button controllers. It could be linked to a speech recognition software in order to allow players to verbally give their answer to a question.
  • An image categorization/rating program. It could be used for up to four people to sort through images at once, and quickly give feedback.
  • A Simon game.

Note: I’ve since written a second round to this post.