Game controller not recognized on Windows
Modern Xbox and PlayStation controllers mostly work out of the box - when they don't, it's usually the connection (cable, Bluetooth pairing) or, for older and generic controllers, a missing driver that leaves the device unknown to Windows.
Why this happens
- Charging-only USB cable without data lines - the controller charges but never connects.
- Bluetooth pairing failed or the Bluetooth side has its own driver problem.
- Older or generic (no-name) controllers need a driver Windows doesn't ship.
- The game expects a different input mode (XInput vs DirectInput) than the controller provides.
Quick checks first
1Swap the cable and port
Use a data-capable USB cable (the one that came with the controller, ideally) and a rear USB port. Charging-only cables are the top cause of “plugged in, nothing happens”.
2Re-pair Bluetooth controllers
Remove the controller in Settings → Bluetooth & devices, put it in pairing mode (hold the pairing button until the light flashes fast), add it again. If Bluetooth itself is flaky, see our Bluetooth troubleshooting article.
3Check the controller test panel
Win+R → joy.cpl - Windows' game controller list. If the controller appears here and buttons register in Properties, Windows sees it fine and the problem is inside the game's settings.
4Does Windows show an unknown device instead?
Win+X → Device Manager: an unknown entry appearing when you plug the controller in means Windows has no driver for it - common with older and generic gamepads.
If the controller shows up as unknown or not at all, the next step is to identify it and install its driver by its Hardware ID.
Fixing it manually
Install the controller driver by Hardware ID
- Device Manager → the unknown device → Properties → Details → Hardware Ids, copy the USB\VID_xxxx&PID_xxxx value.
- Search the ID in our database to identify the actual controller chip and its driver.
- Create a restore point, install, then unplug and reconnect the controller and check joy.cpl.
Fix the input mode mismatch
- Older games expect XInput (Xbox-style); many generic pads speak DirectInput. If the pad works in joy.cpl but not in the game, look for a mode switch on the controller itself or use the game's/launcher's controller settings (Steam Input handles most cases).
Know the exact device model?
Search the driver database by controller name or Hardware ID (USB\VID_xxxx&PID_xxxx). Review matching Windows versions and available driver releases.
Controllers identify as USB\VID_xxxx&PID_xxxx in Device Manager (VID_045E is Microsoft/Xbox, VID_054C is Sony). Generic pads often reuse well-known chips that our search decodes by ID.
Try for example: USB\VID_045E&PID_02EA · read the Hardware ID guide · or browse the driver category
Browse usb & peripherals drivers by brand
Frequently asked questions
▸The controller works in Windows (joy.cpl) but the game ignores it.
Windows and the driver are fine - the game expects a different input mode or the wrong device is selected in its settings. Steam users: enable Steam Input for the game; elsewhere, check the game's controller settings for a device list.
▸An Xbox controller connects but the sticks drift or buttons misfire.
Drift is usually hardware wear, not a driver issue. Misfiring buttons on a fresh controller are worth re-testing on another PC before touching drivers.