Difference between revisions of "Glossary:Controller"

From PCGamingWiki, the wiki about fixing PC games
(Miscellaneous: PS4 pro controllers)
(List of controllers: Xiaomi gamepads)
 
(31 intermediate revisions by 6 users not shown)
Line 37: Line 37:
 
{{--}} 14-days trial. Full license can cost up to 33 € (Application + Combo + Advanced mapping + 4 Slots + Rapid Fire).
 
{{--}} 14-days trial. Full license can cost up to 33 € (Application + Combo + Advanced mapping + 4 Slots + Rapid Fire).
  
====[https://github.com/Electronicks/JoyShockMapper JoyShockMapper] (Windows)====
+
====[https://github.com/Electronicks/JoyShockMapper JoyShockMapper] (Windows10)====
 
{{ii}} Open source and easy to use application.
 
{{ii}} Open source and easy to use application.
{{ii}} Converts [[Controller:DualShock 4|DualShock 4]], [[Controller:Switch_Joy-Con|JoyCon]], and [[Controller:Switch Pro Controller|Pro Controller]] input into keyboard and mouse events.
+
{{ii}} Converts [[Controller:DualShock 4|DualShock 4]], [[Controller:Switch_Joy-Con|JoyCon]], and [[Controller:Switch Pro Controller|Switch Pro Controller]] input into keyboard and mouse events.
{{++}} Innovative "Flick Stick" support - adjusting rotation of a stick to the same rotation in game<ref>[https://www.youtube.com/watch?v=C5L_Px3dFtE Gyro Gaming - Intro to Flick Stick]</ref>.
+
{{++}} Innovative "Flick Stick" support - you can adjust rotation of a stick to the same rotation in game<ref>[https://www.youtube.com/watch?v=C5L_Px3dFtE Gyro Gaming - Intro to Flick Stick]</ref>.
 
{{++}} Allows using gyro controls. Community Configs you can find on [http://gyrowiki.jibbsmart.com/games GyroWiki].
 
{{++}} Allows using gyro controls. Community Configs you can find on [http://gyrowiki.jibbsmart.com/games GyroWiki].
  
Line 52: Line 52:
 
{{--}} Not Freeware.
 
{{--}} Not Freeware.
  
====[https://github.com/AntiMicro/antimicro/releases AntiMicro] (Windows and Linux)====
+
====[https://github.com/AntiMicroX/antimicrox/releases AntiMicroX] (Windows and Linux)====
 
{{ii}} Open source and easy to use application.
 
{{ii}} Open source and easy to use application.
{{ii}} [https://github.com/AntiMicroX/antimicroX AntimicroX] is continuation of project for Linux. With version 3.2.0 Windows is now supported<ref>[https://github.com/AntiMicroX/antimicrox/releases/tag/3.2.0 AntiMicroX-3.2.0 - GitHub]</ref>.
 
 
{{++}} Allows any mouse and keyboard input to be bound to any controller buttons across different profiles.
 
{{++}} Allows any mouse and keyboard input to be bound to any controller buttons across different profiles.
{{--}} On Linux, it works only in Xorg environment.
+
{{++}} Supports scripts, executables andmacros consisting of elements mentioned above.
 +
{{++}} Allows assigning multiple switchable sets of mappings to gamepad.
 +
{{++}} Auto profiles support - assign profile to active application window (not in Wayland).
  
 
====[https://joyxoff.com/en/ JoyXoff] (Windows)====
 
====[https://joyxoff.com/en/ JoyXoff] (Windows)====
Line 91: Line 92:
 
{{++}} Supports remapping hardware buttons of Xbox, DualShock and Nintendo. Allows use [[Controller:Xbox Elite Wireless Controller|Xbox Elite]] paddles in any game and lets [[Controller:Switch_Joy-Con|Nintendo Joy-Con]] to work as a pair or separately.
 
{{++}} Supports remapping hardware buttons of Xbox, DualShock and Nintendo. Allows use [[Controller:Xbox Elite Wireless Controller|Xbox Elite]] paddles in any game and lets [[Controller:Switch_Joy-Con|Nintendo Joy-Con]] to work as a pair or separately.
 
{{++}} Big community [https://www.rewasd.com/community config database] with online preview.
 
{{++}} Big community [https://www.rewasd.com/community config database] with online preview.
 +
 +
====[https://schelling.itch.io/gamepad-phoenix Gamepad Phoenix]====
 +
{{ii}} Supports XInput, DirectInput and Wii controllers allows to create a unified button and axis mapping for up to 4 controllers.
 +
{{++}} Emulates XInput, DirectInput (any version) and WinMM APIs.
 +
{{++}} Automatic detection of API, no configuration/file copying needed.
 +
{{++}} Create controller presets, load one by pressing a single button.
 +
{{--}} No force feedback support, no analog stick dead zone handling, no emulation of Windows Raw Input API, no motion control support.
  
 
====[https://github.com/KrossX/Durazno Durazno]====
 
====[https://github.com/KrossX/Durazno Durazno]====
Line 156: Line 164:
 
{{--}} This method requires Steam to be installed on a machine.
 
{{--}} This method requires Steam to be installed on a machine.
 
}}
 
}}
{{Fixbox|description=Use [http://community.pcgamingwiki.com/files/file/734-sdl2-gamepad-tool/ SDL2 Gamepad Tool]|ref={{cn|date=July 2016}}|fix=
+
{{Fixbox|description=Use [https://community.pcgamingwiki.com/files/file/734-sdl2-gamepad-tool/ SDL2 Gamepad Tool]|ref={{cn|date=July 2016}}|fix=
# Download and open [http://community.pcgamingwiki.com/files/file/734-sdl2-gamepad-tool/ SDL2 Gamepad Tool].
+
# Download and open [https://community.pcgamingwiki.com/files/file/734-sdl2-gamepad-tool/ SDL2 Gamepad Tool].
 
# Select desired controller from dropdown menu.
 
# Select desired controller from dropdown menu.
 
# Select "Create a new mapping" and press buttons accordingly.  
 
# Select "Create a new mapping" and press buttons accordingly.  
Line 165: Line 173:
  
 
==macOS==
 
==macOS==
===[http://www.orderedbytes.com/controllermate/ ControllerMate]===
+
===[https://www.orderedbytes.com/controllermate/ ControllerMate]===
 
{{ii}} Allows customize various devices, including the keyboard and mouse, joystick, gamepads for use with your computer.
 
{{ii}} Allows customize various devices, including the keyboard and mouse, joystick, gamepads for use with your computer.
 
{{++}} Programming is accomplished using "building blocks".
 
{{++}} Programming is accomplished using "building blocks".
 
{{--}} Unfriendly User Interface.
 
{{--}} Unfriendly User Interface.
  
===[http://www.usboverdrive.com/ USB Overdrive]===
+
===[https://www.usboverdrive.com/ USB Overdrive]===
 
{{ii}} Device driver that handles any USB mouse, trackball, joystick, gamepad, media keyboard and any Bluetooth mouse and lets you configure them either globally or on a per-application, per-device basis.
 
{{ii}} Device driver that handles any USB mouse, trackball, joystick, gamepad, media keyboard and any Bluetooth mouse and lets you configure them either globally or on a per-application, per-device basis.
 
{{++}} It supports 64-bit kernels.
 
{{++}} It supports 64-bit kernels.
  
 
==Linux==
 
==Linux==
{{ii}} Most distributions come with the ''xpad'' driver already. If you're experiencing problems with using controllers in your game, or want to bind your keyboard to the controller, you may want to try ''[http://xboxdrv.gitlab.io/ xboxdrv]'', or refer to the controller-specific article for more information.
+
{{ii}} Most distributions come with the ''xpad'' driver already. If you're experiencing problems with using controllers in your game, or want to bind your keyboard to the controller, you may want to try ''[https://xboxdrv.gitlab.io/ xboxdrv]'', or refer to the controller-specific article for more information.
 +
{{ii}} [[#AntiMicroX (Windows and Linux)|AntiMicroX]] application is letting to remap gamepads/joystick buttons to: keyboard buttons, mouse buttons and moves, scripts and executables and macros consisting of elements mentioned above.
 +
 
 
===[https://github.com/jgeumlek/MoltenGamepad#moltengamepad MoltenGamepad]===
 
===[https://github.com/jgeumlek/MoltenGamepad#moltengamepad MoltenGamepad]===
 
{{ii}} Flexible Linux input device translator, geared for gamepads.
 
{{ii}} Flexible Linux input device translator, geared for gamepads.
Line 183: Line 193:
 
{{++}} Specialized userspace driver for Wii remotes that make full use of extension controller hotswapping. Supports a command FIFO or socket for controlling a running instance of MoltenGamepad via scripting. Can handle cases where one event device represents multiple logical controllers (like an arcade stick), or vice versa.
 
{{++}} Specialized userspace driver for Wii remotes that make full use of extension controller hotswapping. Supports a command FIFO or socket for controlling a running instance of MoltenGamepad via scripting. Can handle cases where one event device represents multiple logical controllers (like an arcade stick), or vice versa.
 
{{--}} Virtual devices can process rumble events, but this is disabled by default.
 
{{--}} Virtual devices can process rumble events, but this is disabled by default.
 +
 +
===[https://github.com/berarma/oversteer Oversteer]===
 +
{{ii}} Steering Wheel Manager for GNU/Linux
 +
{{++}} Allows change emulation mode, change rotation range.
 +
{{++}} Combine accelerator/brakes pedals for games that use just one axis.
 +
{{++}} Change autocentering force strength.
 +
{{++}} Change force feedback gain.
 +
{{++}} Supports device configuration profiles.
 +
{{++}} Fix system permissions to access all device features.
 +
{{++}} Overlay window to display/configure range.
 +
{{++}} Use wheel buttons to configure range.
 +
{{++}} AllowsHardware performance testing.
 +
{{--}} Features only for new-lg4ff: Combine accelerator/clutch pedals. Useful for flight simulators. Change global force feedback gain (with new-lg4ff), change each conditional force feedback effect type gain. FFBmeter to monitor FFB clipping using wheel leds or overlay window.
  
 
==List of controllers==
 
==List of controllers==
Line 207: Line 230:
 
===Astro===
 
===Astro===
 
* [[Controller:Astro C40|Astro C40]]
 
* [[Controller:Astro C40|Astro C40]]
 +
 +
===Asus===
 +
* [[Controller:Asus ROG TV500BG|ROG TV500BG]]
 +
* [[Controller:Asus ROG Kunai|ROG Kunai GamePad]]
 +
* [[Controller:Asus ROG GameVice|ROG GameVice Controller]]
 +
* [[Controller:Asus ROG Kunai 3|ROG Kunai 3 Gamepad]]
  
 
===Atari===
 
===Atari===
Line 214: Line 243:
 
* [[Controller:Atari VCS Wireless Modern Controller|Atari VCS Wireless Modern Controller]]
 
* [[Controller:Atari VCS Wireless Modern Controller|Atari VCS Wireless Modern Controller]]
  
===Meta===
+
===Beitong===
* [[Controller:Oculus Touch|Oculus Touch]]
+
* [[Controller:Beitong Zeus Elite|Beitong Zeus Elite]]
 +
* [[Controller:Beitong Asura 2|Beitong Asura 2]]
 +
* [[Controller:Beitong Bat 2|Beitong Bat 2]]
 +
* [[Controller:Beitong G1|Beitong G1]]
 +
* [[Controller:Beitong H1|Beitong H1]]
 +
 
 +
===Fanatec===
 +
* [[Controller:Fanatec Speedster|Speedster Controller]]
 +
* [[Controller:Fanatec Zero_G Motion Controller|Zero G Motion Controller]]
 +
* [[Controller:Fanatec Zero_G Wireless Controller |Zero G Wireless Controller]]
  
 
===Flydigi===
 
===Flydigi===
 +
* [[Controller:Flydigi Wee2T|Flydigi Wee2T]]
 +
* [[Controller:Flydigi Apex|Flydigi Apex]]
 +
* [[Controller:Flydigi Vader 2|Flydigi Vader 2]]
 
* [[Controller:Flydigi Apex 2|Flydigi Apex 2]]
 
* [[Controller:Flydigi Apex 2|Flydigi Apex 2]]
 +
 +
===GameSir===
 +
* [[Controller:GameSir G5|GameSir G5]]
 +
 +
===Google===
 +
* [[Controller:Stadia Controller|Stadia Controller]]
  
 
===Hori===
 
===Hori===
 +
* [[Controller:HORI Fighting Commander|HORI Fighting Commander]]
 
* [[Controller:HORI Mini Wired Gamepad|HORI Mini Wired Gamepad]]
 
* [[Controller:HORI Mini Wired Gamepad|HORI Mini Wired Gamepad]]
 
* [[Controller:HORI Wireless Pad|HORI Wireless Pad]]
 
* [[Controller:HORI Wireless Pad|HORI Wireless Pad]]
 
* [[Controller:Pokkén Tournament Pro Pad Controller|HORI Pokemon Tekken DX Pro Pad]]
 
* [[Controller:Pokkén Tournament Pro Pad Controller|HORI Pokemon Tekken DX Pro Pad]]
 
* [[Controller:HORI Pad Wired Controller|HORI Pad Wired Controller]]
 
* [[Controller:HORI Pad Wired Controller|HORI Pad Wired Controller]]
 +
* [[Controller:HORI Dragon Quest Slime Controller|HORI Dragon Quest Slime Controller]]
  
 
===Hyperkin===
 
===Hyperkin===
 
* [[Controller:Hyperkin Duke Controller|Hyperkin Duke Controller]]
 
* [[Controller:Hyperkin Duke Controller|Hyperkin Duke Controller]]
 
* [[Controller:Hyperkin X91|Hyperkin X91]]
 
* [[Controller:Hyperkin X91|Hyperkin X91]]
 +
* [[Controller:Hyperkin Cadet|Hyperkin Cadet]]
 +
* [[Controller:Hyperkin Scout|Hyperkin Scout]]
 +
* [[Controller:Hyperkin Admiral|Hyperkin Admiral]]
 +
* [[Controller:Hyperkin Captain|Hyperkin Captain]]
 +
* [[Controller:Hyperkin ProCube|Hyperkin ProCube Wireless Controller]]
 +
* [[Controller:Hyperkin RetroN 2 Controller|Hyperkin RetroN 2 Controller]]
 +
* [[Controller:Hyperkin RetroN Controller|Hyperkin RetroN BT Wireless Controller]]
 +
* [[Controller:Hyperkin GN6|Hyperkin GN6]]
 +
* [[Controller:Hyperkin Specialist|Hyperkin Specialist]]
 +
* [[Controller:Hyperkin Trooper 2|Hyperkin Trooper 2]]
 +
* [[Controller:Hyperkin Wired Controller|Hyperkin Wired Controller]]
 +
* [[Controller:Hyperkin Trooper|Hyperkin Trooper]]
 +
* [[Controller:Hyperkin Squire|Hyperkin Squire]]
 +
* [[Controller:Hyperkin Knight|Hyperkin Knight]]
 +
* [[Controller:Hyperkin Brave Knight|Hyperkin Brave Knight]]
 +
* [[Controller:Hyperkin Brave Warrior|Hyperkin Brave Warrior]]
 +
 +
===Ipega===
 +
* [[Controller:Ipega 9023s|Ipega 9023s]]
 +
* [[Controller:Ipega 9083s|Ipega 9083s]]
 +
* [[Controller:Ipega 9063|Ipega 9063]]
 +
* [[Controller:Ipega 9028|Ipega 9028]]
 +
* [[Controller:Ipega 9025|Ipega 9025]]
 +
* [[Controller:Ipega 9069|Ipega 9069]]
 +
* [[Controller:Ipega 9191|Ipega 9191]]
 +
* [[Controller:Ipega 9118|Ipega 9118]]
  
 
===Logitech===
 
===Logitech===
Line 237: Line 312:
 
* [[Controller:Logitech Wireless Gamepad F710|Logitech Wireless Gamepad F710]]
 
* [[Controller:Logitech Wireless Gamepad F710|Logitech Wireless Gamepad F710]]
 
* [[Controller:Logitech Extreme 3D Pro|Logitech Extreme 3D Pro]]
 
* [[Controller:Logitech Extreme 3D Pro|Logitech Extreme 3D Pro]]
 +
* [[Controller:Logitech Cordless Controller|Logitech Cordless Controller]]
 +
* [[Controller:Logitech Cordless Action Controller|Logitech Cordless Action Controller]]
 +
* [[Controller:Logitech Cordless Precision Controller|Logitech Cordless Precision Controller]]
 +
 +
===Meta===
 +
* [[Controller:Oculus Touch|Oculus Touch]]
  
 
===Microsoft===
 
===Microsoft===
Line 250: Line 331:
  
 
'''PC:'''
 
'''PC:'''
 +
* [[Controller:Microsoft SideWinder Standard|Microsoft SideWinder Standard]]
 +
* [[Controller:Microsoft SideWinder 3D Pro|Microsoft SideWinder 3D Pro]]
 +
* [[Controller:Microsoft SideWinder Game Pad 1.0|Microsoft SideWinder Game Pad 1.0]]
 +
* [[Controller:Microsoft SideWinder Force Feedback Pro|Microsoft SideWinder Force Feedback Pro]]
 +
* [[Controller:Microsoft SideWinder Force Feedback Wheel|Microsoft SideWinder Force Feedback Wheel]]
 +
* [[Controller:Microsoft SideWinder Precision 2|Microsoft SideWinder Precision 2]]
 +
* [[Controller:Microsoft SideWinder Freestyle Pro|Microsoft SideWinder Freestyle Pro]]
 +
* [[Controller:Microsoft SideWinder Force Feedback 2|Microsoft SideWinder Force Feedback 2]]
 +
* [[Controller:Microsoft SideWinder Game Pad Pro|Microsoft SideWinder Game Pad Pro]]
 +
* [[Controller:Microsoft SideWinder Dual Strike|Microsoft SideWinder Dual Strike]]
 +
* [[Controller:Microsoft SideWinder Precision Racing Wheel|Microsoft SideWinder Precision Racing Wheel]]
 +
* [[Controller:Microsoft SideWinder Plug & Play Game Pad|Microsoft SideWinder Plug & Play Game Pad]]
 +
* [[Controller:Microsoft SideWinder Joystick|Microsoft SideWinder Joystick]]
 +
* [[Controller:Microsoft SideWinder Game Voice|Microsoft SideWinder Game Voice]]
 
* [[Controller:Microsoft SideWinder Strategic Commander|Microsoft SideWinder Strategic Commander]]
 
* [[Controller:Microsoft SideWinder Strategic Commander|Microsoft SideWinder Strategic Commander]]
 +
* [[Controller:Microsoft SideWinder Game Pad 2.0|Microsoft SideWinder Game Pad 2.0]]
 +
* [[Controller:Microsoft SideWinder 3D Pro Plus|Microsoft SideWinder 3D Pro Plus]]
 +
* [[Controller:Microsoft SideWinder Precision Pro 2.0|Microsoft SideWinder Precision Pro 2.0]]
 +
 +
===MSI===
 +
* [[Controller:MSI Force GC20|MSI Force GC20]]
 +
* [[Controller:MSI Force GC30|MSI Force GC30]]
  
 
===Nacon===
 
===Nacon===
 +
* [[Controller:Nacon Compact|Nacon Compact Controller]]
 +
* [[Controller:Nacon GC-200WL|Nacon GC-200WL Wireless Controller]]
 +
* [[Controller:Nacon GC-100XF|Nacon GC-100XF Wired Controller]]
 +
* [[Controller:Nacon GC-400ES|Nacon GC-400ES Wired Controller]]
 +
* [[Controller:Nacon MG-X|Nacon MG-X]]
 +
* [[Controller:Nacon MG-X Pro|Nacon MG-X Pro]]
 +
* [[Controller:Nacon Daija Arcade Stick|Nacon Daija Arcade Stick]]
 
* [[Controller:Nacon Revolution Pro Controller|Nacon Revolution Pro Controller]]
 
* [[Controller:Nacon Revolution Pro Controller|Nacon Revolution Pro Controller]]
 
* [[Controller:Nacon Revolution Pro Controller 2|Nacon Revolution Pro Controller 2]]
 
* [[Controller:Nacon Revolution Pro Controller 2|Nacon Revolution Pro Controller 2]]
 +
* [[Controller:Nacon Revolution Pro Controller 3|Nacon Revolution Pro Controller 3]]
 +
* [[Controller:Nacon Asymmetric Wireless Controller|Nacon Asymmetric Wireless Controller]]
 
* [[Controller:Nacon Revolution Unlimited Pro|Nacon Revolution Unlimited Pro]]
 
* [[Controller:Nacon Revolution Unlimited Pro|Nacon Revolution Unlimited Pro]]
* [[Controller:Nacon Revolution Pro Controller 3|Nacon Revolution Pro Controller 3]]
+
* [[Controller:Nacon Pro Compact|Nacon Pro Compact Controller]]
 +
* [[Controller:Nacon Revolution X Pro|Nacon Revolution X Pro Controller]]
 +
 
 +
===Namco===
 +
* [[Controller:Jogcon|Jogcon]]
 +
* [[Controller:NeGcon|NeGcon]]
 +
* [[Controller:GunCon|GunCon]]
 +
* [[Controller:Namco Arcade Stick|Namco Arcade Stick]]
  
 
===Nintendo===
 
===Nintendo===
Line 274: Line 392:
 
* [[Controller:NES Classic Controller|NES Classic Controller]]
 
* [[Controller:NES Classic Controller|NES Classic Controller]]
 
* [[Controller:SNES Classic Controller|SNES Classic Controller]]
 
* [[Controller:SNES Classic Controller|SNES Classic Controller]]
 +
 
'''Handhelds:'''
 
'''Handhelds:'''
 
* [[Controller:Game Boy|Game Boy]]
 
* [[Controller:Game Boy|Game Boy]]
Line 282: Line 401:
  
 
===Nvidia===
 
===Nvidia===
 +
* [[Controller:Nvidia SHIELD Portable|SHIELD Portable]]
 
* [[Controller:Nvidia SHIELD Controller|SHIELD Controller (2015)]]
 
* [[Controller:Nvidia SHIELD Controller|SHIELD Controller (2015)]]
 
* [[Controller:Nvidia SHIELD Controller (2017)|SHIELD Controller (2017)]]
 
* [[Controller:Nvidia SHIELD Controller (2017)|SHIELD Controller (2017)]]
Line 289: Line 409:
 
* [[Controller:PDP Faceoff Deluxe Wired Pro Controller|PDP Faceoff Deluxe Wired Pro Controller]]
 
* [[Controller:PDP Faceoff Deluxe Wired Pro Controller|PDP Faceoff Deluxe Wired Pro Controller]]
 
* [[Controller:PDP Faceoff Wired Pro Controller|PDP Faceoff Wired Pro Controller]]
 
* [[Controller:PDP Faceoff Wired Pro Controller|PDP Faceoff Wired Pro Controller]]
 +
* [[Controller:PDP Little Wireless Controller|PDP Little Wireless Controller]]
 +
 +
===Polymega===
 +
* [[Controller:Polymega WC01|Polymega WC01 - Universal Wireless Controller]]
 +
* [[Controller:Polymega RC01|Polymega RC01 - Power Controller]]
 +
* [[Controller:Polymega RC02|Polymega RC02 - Super Controller]]
 +
* [[Controller:Polymega RC03|Polymega RC03 - Mega Controller]]
 +
* [[Controller:Polymega RC04|Polymega RC04 - Turbo Controller]]
 +
* [[Controller:Polymega GC01|Polymega GC01 - Gun Controller]]
  
 
===PowerA===
 
===PowerA===
 
* [[Controller:PowerA Wired Controller|PowerA Wired Controller]]
 
* [[Controller:PowerA Wired Controller|PowerA Wired Controller]]
 
* [[Controller:PowerA Spectra|PowerA Spectra]]
 
* [[Controller:PowerA Spectra|PowerA Spectra]]
 +
* [[Controller:PowerA MOGA XP5-X Plus|PowerA MOGA XP5-X Plus]]
 
* [[Controller:Atari VCS Wireless Modern Controller|Atari VCS Wireless Modern Controller]]
 
* [[Controller:Atari VCS Wireless Modern Controller|Atari VCS Wireless Modern Controller]]
 +
* [[Controller:PowerA Fusion|PowerA Fusion]]
  
 
===Razer===
 
===Razer===
 
* [[Controller:OUYA|OUYA Controller]]
 
* [[Controller:OUYA|OUYA Controller]]
* [[Controller:Razer Serval|Razer Serval]]
 
 
* [[Controller:Razer Hydra|Razer Hydra]]
 
* [[Controller:Razer Hydra|Razer Hydra]]
 
* [[Controller:Razer Serval|Razer Serval]]
 
* [[Controller:Razer Serval|Razer Serval]]
 +
* [[Controller:Razer Onza|Razer Onza]]
 +
* [[Controller:Razer Sabertooth|Razer Sabertooth]]
 +
* [[Controller:Razer Wildcat|Razer Wildcat]]
 
* [[Controller:Razer Raiju|Razer Raiju]]
 
* [[Controller:Razer Raiju|Razer Raiju]]
 
* [[Controller:Razer Wolverine|Razer Wolverine]]
 
* [[Controller:Razer Wolverine|Razer Wolverine]]
* [[Controller:Razer Raiju PS4|Razer Raiju PS4]]
+
* [[Controller:Razer Wireless Controller|Razer Wireless Controller]]
* [[Controller:Razer Raiju Ultimate Edition|Razer Raiju Ultimate Edition]]
+
* [[Controller:Razer Wolverine V2|Razer Wolverine V2]]
* [[Controller:Razer Raiju Tournament Edition|Razer Raiju Tournament Edition]]
+
* [[Controller:Razer Raion|Razer Raion]]
* [[Controller:Razer Atrox fight stick|Razer Atrox fight stick]]
+
* [[Controller:Razer Atrox|Razer Atrox]]
 +
* [[Controller:Razer Panthera|Razer Panthera]]
 +
* [[Controller:Razer Junglecat|Razer Junglecat]]
 +
* [[Controller:Razer Kishi|Razer Kishi]]
  
 
===Retro Fighters===
 
===Retro Fighters===
Line 314: Line 450:
 
* [[Controller:Retro Fighters Contender|Contender]]
 
* [[Controller:Retro Fighters Contender|Contender]]
 
* [[Controller:Retro Fighters BladeGC|BladeGC]]
 
* [[Controller:Retro Fighters BladeGC|BladeGC]]
 +
* [[Controller:Retro Fighters BattlerGC|BattlerGC]]
 +
* [[Controller:Retro Fighters Duelist|Duelist]]
 +
* [[Controller:Retro Fighters Defender|Defender]]
 +
 +
===SCUF===
 +
* [[Controller:SCUF Infinity1|SCUF Infinity1]]
 +
* [[Controller:SCUF Elite|SCUF Elite]]
 +
* [[Controller:SCUF Vantage|SCUF Vantage Wireless Controller]]
 +
* [[Controller:SCUF Vantage 2|SCUF Vantage 2]]
 +
* [[Controller:EXO SCUF|EXO SCUF]]
 +
* [[Controller:SCUF H1|SCUF H1]]
 +
* [[Controller:SCUF Prestige|SCUF Prestige]]
 +
* [[Controller:SCUF INPACT|SCUF INPACT]]
 +
* [[Controller:SCUF Infinity4PS PRO|SCUF Infinity4PS PRO]]
 +
* [[Controller:SCUF Instinct|SCUF Instinct]]
 +
* [[Controller:SCUF Reflex|SCUF Reflex]]
  
 
===Sega===
 
===Sega===
Line 320: Line 472:
 
* [[Controller:Sega Saturn Controller|Sega Saturn Controller]]
 
* [[Controller:Sega Saturn Controller|Sega Saturn Controller]]
 
* [[Controller:Dreamcast Controller|Dreamcast Controller]]
 
* [[Controller:Dreamcast Controller|Dreamcast Controller]]
 +
* [[Controller:ASCII Seamic Controller|Seamic Controller]]
 +
* [[Controller:Sega Saturn PS2 Controller|Sega Saturn PS2 Controller]]
 +
* [[Controller:Wireless Controller Surf Wave|Wireless Controller Surf Wave]]
  
 
===Sony===
 
===Sony===
Line 333: Line 488:
 
* [[Controller:PlayStation Classic Controller|PlayStation Classic Controller]]
 
* [[Controller:PlayStation Classic Controller|PlayStation Classic Controller]]
 
* [[Controller:DualSense|DualSense]]
 
* [[Controller:DualSense|DualSense]]
 +
 
'''Handhelds:'''
 
'''Handhelds:'''
 
* [[Controller:PlayStation Portable|PlayStation Portable]]
 
* [[Controller:PlayStation Portable|PlayStation Portable]]
 
* [[Controller:PlayStation Vita|PlayStation Vita]]
 
* [[Controller:PlayStation Vita|PlayStation Vita]]
 +
 +
===SplitFish===
 +
* [[Controller:FragFX Shark|FragFX Shark]]
 +
* [[Controller:FragFX Piranha|FragFX Piranha]]
 +
* [[Controller:FragFX FragChuck|FragFX FragChuck]]
  
 
===SteelSeries===
 
===SteelSeries===
* [[Controller:SteelSeries Stratus XL|SteelSeries Stratus XL]]
+
* [[Controller:SteelSeries Stratus XL|Stratus XL]]
* [[Controller:SteelSeries Stratus Duo|SteelSeries Stratus Duo]]
+
* [[Controller:SteelSeries Stratus Duo|Stratus Duo]]
 +
* [[Controller:SteelSeries Nimbus+|Nimbus+]]
 +
* [[Controller:SteelSeries Free|Free]]
 +
 
 +
===Thrustmaster===
 +
* [[Controller:Thrustmaster T-Wireless|Thrustmaster T-Wireless]]
 +
* [[Controller:Thrustmaster Dual Analog 4|Thrustmaster Dual Analog 4]]
 +
* [[Controller:Thrustmaster Score-A|Thrustmaster Score-A]]
 +
* [[Controller:Thrustmaster GP XID|Thrustmaster GP XID]]
 +
* [[Controller:Thrustmaster eSWAP Pro|Thrustmaster eSWAP Pro]]
 +
* [[Controller:Thrustmaster Dual Trigger 3-in-1|Thrustmaster Dual Trigger 3-in-1]]
  
 
===Valve===
 
===Valve===
Line 345: Line 516:
 
* [[Controller:Steam Link Touch Controller|Steam Link Touch Controller]]
 
* [[Controller:Steam Link Touch Controller|Steam Link Touch Controller]]
 
* [[Controller:Valve Index Controller|Valve Index Controller]]
 
* [[Controller:Valve Index Controller|Valve Index Controller]]
 +
* [[Controller:Steam Deck|Steam Deck]]
  
 
===Vive===
 
===Vive===
Line 350: Line 522:
 
* [[Controller:Vive Tracker|Vive Tracker]]
 
* [[Controller:Vive Tracker|Vive Tracker]]
  
===Google===
+
===Xiaomi===
* [[Controller:Stadia Controller|Stadia Controller]]
+
* [[Controller:Xiaomi Mi Bluetooth Gamepad|Xiaomi Mi Bluetooth Gamepad]]
 +
* [[Controller:Xiaomi Gamepad Elite Edition|Xiaomi Gamepad Elite Edition]]
 +
 
 +
===XIM===
 +
* [[Controller:XIM NEXUS|XIM NEXUS]]
  
 
===Miscellaneous===
 
===Miscellaneous===
 
* [[Controller:Tobii Eye Tracking|Tobii Eye Tracking]]
 
* [[Controller:Tobii Eye Tracking|Tobii Eye Tracking]]
 +
* [[Controller:Eyeware_Beam|Eyeware Beam Head & Eye Tracker]]
 +
* [[Controller:Gravis PC GamePad|Gravis PC GamePad]]
 
* [[Controller:Leap Motion Controller|Leap Motion]]
 
* [[Controller:Leap Motion Controller|Leap Motion]]
 
* [[Controller:TT Premium X1 RGB App|TT Premium X1 RGB App (Virtual Game Controller)]]
 
* [[Controller:TT Premium X1 RGB App|TT Premium X1 RGB App (Virtual Game Controller)]]
* [[Controller:Thrustmaster eSwap Pro|Thrustmaster eSwap Pro Controller]]
 
* [[Controller:SCUF Vantage|SCUF Vantage Wireless Controller]]
 
 
* [[Controller:Capcom Home Arcade|Capcom Home Arcade]]
 
* [[Controller:Capcom Home Arcade|Capcom Home Arcade]]
 
* [[Panasonic Q Controller|Panasonic Q Controller]]
 
* [[Panasonic Q Controller|Panasonic Q Controller]]
 
* [[Controller:Azeron Classic|Azeron Classic]]
 
* [[Controller:Azeron Classic|Azeron Classic]]
 
* [[Controller:Azeron Compact|Azeron Compact]]
 
* [[Controller:Azeron Compact|Azeron Compact]]
 +
* [[Controller:Asciiware NES Advantage|NES Advantage]]
 +
* [[Controller:NES Zapper|NES Zapper]]
 +
* [[Controller:Power Glove|Power Glove]]
 +
* [[Controller:Sega Menacer|Sega Menacer]]
 +
* [[Controller:Nintendo Super Scope|Nintendo Super Scope]]
 +
* [[Controller:Apple Pippin Controller|Apple Pippin Controller]]
 +
* [[Controller:WU-TANG Taste The Pain Controller|WU-TANG Taste The Pain Controller]]
 +
* [[Controller:Nyko Air Flo|Nyko Air Flo]]
 +
* [[Controller:Katana Force 2|Katana Force 2]]
  
 
==Other information==
 
==Other information==

Latest revision as of 17:12, 27 April 2022

This page may require cleanup to meet basic quality standards. The specific problem is: Correct any bad information. Keep things easy, clean and be complete when writing solutions, or I'll eat your donuts and I'll steal your cats. You can help by modifying the article. The discussion page may contain useful suggestions.

General information

DirectInput (and XInput) on Wikipedia
Xbox 360 Controller (XInput) on Wikipedia

Key points

Controllers are an alternative to keyboard and mouse input. Almost all recently released PC games support controllers, although many only support the newer XInput controllers by default.

General[edit]

Controller to Keyboard Input[edit]

These utilities allow keyboard keys to be bound to any controller buttons for games with poor or no controller support. These keys must match with the in-game settings.

Steam Input (Windows, macOS and Linux)[edit]

Works with non-Steam games if they're added and launched through Steam.
Lets users share and customize game-specific controller profiles.
Adds or extends the functionality of input devices in various ways (e.g. keyboard/mouse input mapped to a controller, XInput support for DirectInput-only devices, etc).
Overrules games own possible controller specific configurations e.g. automatic button prompt change.
UI for changing bindings is very much made with controllers in mind.
Requires Steam and the Steam Overlay to function.
When game is blocking 3rd party game overlays you can use GlosSI.

reWASD (Windows)[edit]

Supported controllers: Xbox Elite 1/2, DualSense, Xbox One/S/X, DualShock 4, DualShock 3, PS3 Navigation, Xbox 360, Stadia, Logitech, Switch Pro, GameCube, Joy-Con, Azeron, Steam, Nvidia SHIELD.
Adds or extends the functionality of input devices in various ways (e.g. allows you to remap controller to keyboard & mouse, reassign with Xbox Elite paddles and turn your ordinary joystick to Turbo & Macro controller).
You can chose which driver (Virtual X360, XOne or DS4) has to be used by connected device. This allows to run PS4 Remote Play or PS Now on Xbox controllers or even on keyboard & mouse.
Allows remapping and Keyboard and Mouse keys to keyboard, mouse or controller buttons.
Allows use of Xbox Elite paddles in any game.
Allows use of Steam Controller without Steam.
Allows Nintendo Joy-Con to work as a pair or separately.
Supports remapping hardware buttons of Xbox, DualShock and Nintendo on PC.
Lets users share and customize game-specific controller profiles.
Runs on Windows 10, 8.1, 8 and 7.
14-days trial. Full license can cost up to 33 € (Application + Combo + Advanced mapping + 4 Slots + Rapid Fire).

JoyShockMapper (Windows10)[edit]

Open source and easy to use application.
Converts DualShock 4, JoyCon, and Switch Pro Controller input into keyboard and mouse events.
Innovative "Flick Stick" support - you can adjust rotation of a stick to the same rotation in game[1].
Allows using gyro controls. Community Configs you can find on GyroWiki.

Controller Companion (Windows)[edit]

Mouse, media and keyboard control.
Supports Xbox 360 and Xbox One controllers. Application comes with an installer for Xbox 360 Controller Emulator (x360ce) which will allow use Playstation controllers.
Using Steam Workshop as community configs database.
Very user friendly User Interface, bindings are easy to configure.
Virtual Keyboard support. After pressing the left stick, pops up the arcade style virtual keyboard inspired by Beyond Good & Evil input interface.
Auto-disable whenever another program, game or Steam Big Picture is running.
Not Freeware.

AntiMicroX (Windows and Linux)[edit]

Open source and easy to use application.
Allows any mouse and keyboard input to be bound to any controller buttons across different profiles.
Supports scripts, executables andmacros consisting of elements mentioned above.
Allows assigning multiple switchable sets of mappings to gamepad.
Auto profiles support - assign profile to active application window (not in Wayland).

JoyXoff (Windows)[edit]

Mouse, media and keyboard control.
Supports Xbox 360 and Xbox One controllers.
Virtual Keyboard support. After pressing the left stick, pops up the arcade style virtual keyboard inspired by Beyond Good & Evil input interface or Xbox One themed plain virtual keyboard.
For Playstation controllers Xbox 360 Controller Emulator (x360ce) is needed.

Keysticks (Windows)[edit]

Mouse, media and keyboard control.

Xpadder (Windows)[edit]

Mouse and keyboard control.
Not Freeware.

Universal Control Remapper (Windows)[edit]

Open Source.

JoyToKey (Windows)[edit]

Mouse and keyboard control.
Not Freeware.

Windows[edit]

XInput wrappers[edit]

Generic game controllers are classified as DirectInput by Windows, these can be used in any games with XInput support by using a wrapper.
See Controller to Keyboard Input for games with no controller support.

Steam Input[edit]

Very easy to set up if you have Steam installed.
With controllers like DualShock 4 and Switch Pro Controller allows haptic feedback passtrough as well.

reWASD[edit]

Supports all main controllers, including Xbox Elite, Xbox Elite 2, Xbox One, DualShock 3, DualShock 4, PS Navigation, Switch Pro, Joy-Con, Xbox 360, Stadia, Logitech, Steam, GameCube.
Supports remapping hardware buttons of Xbox, DualShock and Nintendo. Allows use Xbox Elite paddles in any game and lets Nintendo Joy-Con to work as a pair or separately.
Big community config database with online preview.

Gamepad Phoenix[edit]

Supports XInput, DirectInput and Wii controllers allows to create a unified button and axis mapping for up to 4 controllers.
Emulates XInput, DirectInput (any version) and WinMM APIs.
Automatic detection of API, no configuration/file copying needed.
Create controller presets, load one by pressing a single button.
No force feedback support, no analog stick dead zone handling, no emulation of Windows Raw Input API, no motion control support.

Durazno[edit]

Allows XInput controllers to be customized.

XInput Plus[edit]

The Xbox Controller Driver and the buggy Force Feedback Driver aren't required with this program.
Features a wide array of advanced options, tweaks, features and some major fixes which other wrappers may lack.
Can translate DirectInput calls into XInput and back. It can also be used on older games using dinput.dll and dinput8.dll.

Xbox 360 Controller Emulator[edit]

Can be used to force DirectInput controllers to be detected as XInput ones.
Useful for games which may require multiple players. It also features a wide array of options.
Does not work with games using Unity due to implementation differences.[2]

XOutput[edit]

Converts DirectInput to XInput, reads and sends data to virtual XBox 360 controller.

Primary device[edit]

Some games only use controller set as primary controller on Windows and ignores the rest. If incorrect or no controllers are set to primary, game doesn't work with used controller.
Set your used controller as primary one[citation needed]
  1. Open the Start menu, type joy.cpl, then press Enter.
  2. Push Advanced.
  3. From dropdown list, locate your used controller and then push OK.

Multiple controller order for older games[edit]

Instructions[3]
  1. Open the Start menu, type joy.cpl, then press Enter.
  2. Click on the Advanced button.
  3. Select the Preferred device from the drop down menu located on the center.

Issues fixed[edit]

Slow or random movement[edit]

This may be caused by worn out sticks or by low in-game deadzones.
Calibrating[citation needed]
  1. Open the Start menu, type joy.cpl, then press Enter.
  2. Select the desired controller and click on the Properties button.
  3. Select the Settings tab, then push the Calibrate button and follow the on screen instructions.

Fast movement[edit]

Remove any virtual controllers and use the Xbox 360 Controller Emulator instead. If the issue persists see below.
Common issue on games running on the Unity engine due to the Unity input manager using Raw Input instead of DirectInput.
Finding Virtual Controllers[citation needed]
  1. Open the Start menu, type joy.cpl, then press Enter.
  2. Locate the name of the virtual controller driver or utility and remove it.
Rebind Controller Buttons
For Unity games with no launchers hold Shift to access the launcher as the game starts, then select the Input tab.
Check the wiki article for the desired game to find a different rebinding solution. Configuration files may hold such settings.

SDL2[edit]

Many games use SDL2 to handle controller input. This means as long as the controller is on the list, game should detect, use it and give proper controller placement and prompts. Controllers that aren't on the list, do nothing and has to be manually added.
To see what games use SDL2, refer to game-specific middleware section.
Configure controller through Steam Big Picture modes settings[citation needed]
This method requires Steam to be installed on a machine.
Use SDL2 Gamepad Tool[citation needed]
  1. Download and open SDL2 Gamepad Tool.
  2. Select desired controller from dropdown menu.
  3. Select "Create a new mapping" and press buttons accordingly.
    • If some button isn't present on the controller, use the "Skip" button and if some key is registered twice, use the "previous" button.
  4. Either set the string as enviromental variable, which should make the controller work with every SDL2 game or alternatively copy the string and paste it to gamecontrollerdb.txt found in games install folder.

macOS[edit]

ControllerMate[edit]

Allows customize various devices, including the keyboard and mouse, joystick, gamepads for use with your computer.
Programming is accomplished using "building blocks".
Unfriendly User Interface.

USB Overdrive[edit]

Device driver that handles any USB mouse, trackball, joystick, gamepad, media keyboard and any Bluetooth mouse and lets you configure them either globally or on a per-application, per-device basis.
It supports 64-bit kernels.

Linux[edit]

Most distributions come with the xpad driver already. If you're experiencing problems with using controllers in your game, or want to bind your keyboard to the controller, you may want to try xboxdrv, or refer to the controller-specific article for more information.
AntiMicroX application is letting to remap gamepads/joystick buttons to: keyboard buttons, mouse buttons and moves, scripts and executables and macros consisting of elements mentioned above.

MoltenGamepad[edit]

Flexible Linux input device translator, geared for gamepads.
Create virtual gamepads that almost all games can use. Virtual gamepads are persistent, which fixes the numerous games that break when controllers are disconnected.
Flexible generic device driver framework, where only a text file is needed to support input sources that don't need special features. All configuration files are designed to be human-readable and editable.
Easy loading and saving of event mappings that can be changed at run time.
Specialized userspace driver for Wii remotes that make full use of extension controller hotswapping. Supports a command FIFO or socket for controlling a running instance of MoltenGamepad via scripting. Can handle cases where one event device represents multiple logical controllers (like an arcade stick), or vice versa.
Virtual devices can process rumble events, but this is disabled by default.

Oversteer[edit]

Steering Wheel Manager for GNU/Linux
Allows change emulation mode, change rotation range.
Combine accelerator/brakes pedals for games that use just one axis.
Change autocentering force strength.
Change force feedback gain.
Supports device configuration profiles.
Fix system permissions to access all device features.
Overlay window to display/configure range.
Use wheel buttons to configure range.
AllowsHardware performance testing.
Features only for new-lg4ff: Combine accelerator/clutch pedals. Useful for flight simulators. Change global force feedback gain (with new-lg4ff), change each conditional force feedback effect type gain. FFBmeter to monitor FFB clipping using wheel leds or overlay window.

List of controllers[edit]

8BitDo[edit]

Amazon[edit]

Astro[edit]

Asus[edit]

Atari[edit]

Beitong[edit]

Fanatec[edit]

Flydigi[edit]

GameSir[edit]

Google[edit]

Hori[edit]

Hyperkin[edit]

Ipega[edit]

Logitech[edit]

Meta[edit]

Microsoft[edit]

Consoles:

PC:

MSI[edit]

Nacon[edit]

Namco[edit]

Nintendo[edit]

Consoles:

Handhelds:

Nvidia[edit]

PDP[edit]

Polymega[edit]

PowerA[edit]

Razer[edit]

Retro Fighters[edit]

SCUF[edit]

Sega[edit]

Sony[edit]

Consoles:

Handhelds:

SplitFish[edit]

SteelSeries[edit]

Thrustmaster[edit]

Valve[edit]

Vive[edit]

Xiaomi[edit]

XIM[edit]

Miscellaneous[edit]

Other information[edit]

Controller hotplugging[edit]

Controller hotplugging is the ability to switch controllers without restarting a game.

DirectInput[edit]

DirectInput is Microsoft's older controller API (used with nearly all games until 2006). XInput controllers operate in DirectInput mode for these games. Logitech's F310 and F710 gamepads have a physical switch which should be set to "D" for these games.

XInput[edit]

XInput is Microsoft's API for Xbox 360-compatible controllers such as the official Xbox 360 Controller.

Windows.Gaming.Input[edit]

Windows.Gaming.Input is Microsoft's API for Xbox One-compatible controllers such as the official Xbox One Controller primarily built for Universal Windows Platform apps, but can on occasions be found in Win32 games as well.
An example of a new addition only available through the Windows.Gaming.Input API is the use of the impulse triggers of the Xbox One Controller.

Steam Input[edit]

Steam Input is feature of the Steam client referring to the entire collection of software, hardware, and configuration utilities that Steam uses to interface with games. It acts like a wrapper using the Steam Community Overlay to intercept and manipulate player input before passing it on along to the game.

References