Search All My Blogs

Tuesday, September 09, 2008

Xbox 360 Controller on PC Without Additional Software

Earlier today, I figured out a way to use an Xbox 360 controller on a PC without downloading or installing any additional software. I got the idea when I read (I forgot where) that the controller is a standard HID device, except it sends the wrong class code (0xFF instead of 0x03) so that generic drivers won't automatically connect to it. This is obviously so that Microsoft could require people to use their special software to get it to work. Possibly so they could make you need to use Windows (although this information is written for Windows and, unfortunately, probably won't help if you're not using it.)

But there is a way to tell the generic drivers to connect to it anyway. Simply plug it in and let it install as an unknown device. Then, open Device Manager (Start, right-click My Computer, Properties, Hardware tab, Device Manager) and find your device. Right-click it and click Properties, and then switch to the Details tab. Make sure "Device Instance Id" is selected at the top, and then make note of everything on the top line up to "PID_XXXX" where XXXX can be any four hexadecimal digits (0-9 and A-F). For example, mine says "HID\VID_045E&PID_028E&IG_00\7&29E276DE&0&0000", so I would ignore everything except for the "HID\VID_045E&PID_028E" at the beginning. You can now close out the Properties dialog. Do that, then right-click the device and click Uninstall.

Now it's time to edit your INF file. Go to Start, Run, and type in "c:\windows\inf\input.inf" (without the quotes.) Notepad should open. If not, do the same thing except add "notepad" to the beginning of the string you type into the Run dialog. Scroll down to the section called "[MicrosoftGame]". Now, in a new line in that section, type in "%XXXX.DeviceDesc%=HID_Inst,, XXXX", replacing each instance of XXXX with that hardware ID you wrote down. (And no, I DON'T just mean those four hexadecimal digits I previously referred to in the same way.) Now scroll down to the "[Strings]" section near the bottom, and type in [XXXX.DeviceDesc="Microsoft Xbox 360 Controller"], not including the brackets. (I used brackets instead of quotes since there are quotes in the string itself.) And the XXXX refers to the same thing as it did last time (the hardware ID you wrote down, including but not limited to those four hexadecimal digits.) Now save the file and exit.

If your controller is still plugged in, unplug it and plug it back in. If not, simply plug it in. If a window appears asking if you want to connect to Windows Update, tell it not to. It may also put up a warning about it not having passed Windows Logo testing. Click "Continue Anyway" on any of these warnings. Eventually, it should finish! Now all there is left to do is go into the Game Controllers control panel, select the controller, click Properties, and calibrate it. Have fun!

P.S. I do recommend XBCD. It's another driver, but it's much better than Microsoft's official one. XBCD+ looks promising, but I haven't tried that yet. Oh, and by the way, I'm not referring to xkcd, the popular webcomic. ;-)

8 comments:

Anonymous said...

so what exactly all do I put into the XXXX the whole ID? (the USB\VID_045E&PID_028F) if not the whole ID, what portion goes into the XXXX categories of the input values? and will this work with a plug and play controller?

Flarn2006 said...

yes it's the whole ID

Anonymous said...

Can anyone recommend the best Endpoint Security tool for a small IT service company like mine? Does anyone use Kaseya.com or GFI.com? How do they compare to these guys I found recently: N-able N-central software deployment
? What is your best take in cost vs performance among those three? I need a good advice please... Thanks in advance!

Anonymous said...

I want not concur on it. I over precise post. Expressly the designation attracted me to review the intact story.

Anonymous said...

Amiable fill someone in on and this enter helped me alot in my college assignement. Say thank you you seeking your information.

Anonymous said...

Hello everyone! Who knows where to upload the film Avatar?
I even bought the film Avatar for a SMS to http://rsskino.ru/kinofilm/avatar.html , the link was, but download fails, the system will boot quite strange cocoa something.
Men, advise where to normal as quickly download film avatar?

generic viagra said...

These controllers are generally compatible with Microsoft so Windows finds drivers for the controllers automatically.

javieth said...

I had some problem with my computer, but the most bigger problem was that i missed the drivers, so i needed to looking information by internet. Finally i reached an information that advised me download by the web a software driver. this information will help me a lot, very useful. actually i found a site interesting called costa rica investment opportunities i think it is useful too.