A combination of a Windows service and a touch interface to take advantage of your device's inertial measurement unit (IMU) and enhance your gaming experience with the controller.
The Controller Service provides gyroscope and accelerometer support to devices with an embedded IMU through a virtual controller. Handheld Companion front-end provides a touch-enabled interface to manage all service settings, your game-specific profiles and the overlay.
- When turned-on, embedded controller will be cloaked to applications outside the whitelist and virtual controller enabled.
- When turned-off, embedded controller will be uncloaked and virtual controller disabled.
Controller Service supports emulation of the following USB Gamepads:
A few examples of the most common use cases for Controller Service
are:
- You want to add high-precision motion controls to your Windows game library through Steam.
- You want to play your Sony Playstation 4 library through PlayStation Now or PS4 Remote Play.
- You want to enjoy all your Wii, WiiU and Switch games with full motion controls through UDP motion control protocol.
The software is built for Windows 10/Windows 11 (x86 and amd64).
- AYA Neo and its different versions
- AYA Next and its different versions
- ONEXPLAYER MINI and its different versions (Intel, AMD, Gundam)
- Bosch BMI160
- USB IMU (GY-USB002)
- English
- French
- Chinese (Simplified)
- Chinese (Traditional)
The software has a built-in overlay. The overlay can be used to display a virtual controller and a virtual touchpad on top of your gaming sessions. The virtual touchpad is used to mimic the DualShock 4 physical touchpad and grants maximum compatibility with PS Now and PS Remote software suites.
- OEM controller
- Emulated controller (DualShock 4, Xbox 360)
- ZDO+ controller
- Fisher-Price controller
Found a bug and want it fixed? Open a detailed issue on the GitHub issue tracker! Have an idea for a new feature? Let's have a chat about your request on Discord.
Please respect that the GitHub issue tracker isn't a helpdesk. We offer a Discord server, where you're welcome to check out and engage in discussions!
If you would like to support this project, please consider making a donation to BenjaminLSR
via PayPal.
Controller Service relies on ViGEmBus
driver and ViGEmClient
libraries as well as HidHide
kernel-mode filter driver. Therefore, we strongly encourage you in donating to Nefarius
via PayPal for continued maintenance and development.
Installers are available as an all-in-one setup.
Run the install.exe
as administrator and you'll be set!
- ViGEmBus: Nefarius
- ViGEmClient : Nefarius
- SharpDX : https://github.com/sharpdx/SharpDX
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
We believe in the fair use of open-source solutions. We expect OEMs to come forward before distributing our solution with their devices. This way we can work together to make your device and our solution compatible in the best possible way. We reserve the right to take any action necessary to block partial or full access to the application to any entities that do not comply with the license or fair use principle.