ViGEmBus driver – Virtual Gamepad Emulation Framework (ViGEm)

vigembus driver
Download is available until [expire_date]
  • Version 1.21.442
  • Download 113240
  • File Size 6 MB
  • File Count 1
  • Create Date May 25, 2022
  • Last Updated September 24, 2022

ViGEmBus driver - Virtual Gamepad Emulation Framework (ViGEm)

The ViGEmBus driver and ViGEmClient libraries represent the core of the Virtual Gamepad Emulation Framework (or ViGEm , for short). ViGEm aims for a 100% accurate emulation of well-known gaming peripherals as pure software-based devices at kernel level. As it mimics "the real thing" games and other processes require no additional modification whatsoever to detect ViGEm-based devices (no Proxy-DLLs or API-Hooking) and simply work out of the box. While the (now obsolete) Scarlett.Crush Productions Virtual Bus Driver is the spiritual father of this project, ViGEm has been designed and written from the ground up utilizing Microsoft's Kernel-Mode Driver Framework.


  • Download the latest setup of ViGEmBus matching your system architecture. It's a file named ViGEmBusSetup_xXX.msi
  • Run the setup and follow the instructions

Congratulations! That was it, ViGEmBus is now ready to use.

In case you are experiencing issues, have a look at the troubleshooting section below.


Emulated devices

Currently supports emulation of the following USB Gamepads:

  • Microsoft Xbox 360 Controller
  • Sony DualShock 4 Controller

Use cases

A few examples of the most common use cases for ViGEm are:

  • You want to setup and use DS4Windows
  • You have an unsupported input device you'd like to use within games without modifying said game.
  • You want the freedom to use a different controller of your choice in PS4 Remote Play.
  • You encountered a game not compatible with x360ce (prior to version 4.x).
  • You want to extend the reach of your input device (like send traffic to a different machine over a network).
  • You want to test/benchmark your game and need a replay mechanism for your user inputs.
  • You want to work around player slot assignment order issues in XInput.


Section based on the latest version!

The whole troubleshooting section is based on top of the latest version of ViGEmBus. If you are using or trying to install an older version, then your experience will greatly differ and following this section may actually cause more issues. Use common sense 🙂

General health checks

The ViGEmBus has no user interface, but don't worry, it's easy to verify if everything is working as expected when you know where to look:

  • Open Device Manager by pressing Win+X and selecting it from the menu:
    Device Manager
  • Click on the View tab at the top and change the view type to Devices by connection
  • Look for entries named Nefarius Virtual Gamepad Emulation Bus or Virtual Gamepad Emulation Bus

If more than one entry appears, you might have multiple version of ViGEmBus installed which may cause conflicts.

If you have only one entry and it is the one starting with Nefarius then continue following this section:

  • Right click on the Nefarius Virtual Gamepad Emulation Bus then select Properties
  • At the General tab, its status should be working properly
  • At the Driver tab the Driver Version should match the latest version you downloaded and installed

If everything matches the instructions, then things should work as expected. A special case is when the user has a laptop from the HP Omen Gaming line. If this is your case, have a look at the ViGEm issues in HP Omen laptops section.

ViGEmBus issues in HP Omen laptops

HP's line of Omen gaming Laptops/Desktops come pre-installed with a modified (forked) version of the ViGEmBus driver (from 2018). Apps trying to locate the latest ViGEmBus may end up detecting the modified HP driver instead, causing all sorts of issue since it is based on an outdated version.

If this is your situation, follow the guide outlined here.

Purging every trace of ViGEmBus

If you are facing issues and/or have multiple ViGEmBus entries in your Device Manager it's best to remove every trace of it from your system to start clean again:

  • First, follow the removal section to uninstall ViGEmBus via the normal way so we can tackle things in order
  • After uninstalling ViGEmBus by using its uninstaller, reboot your computer
  • Open Device Manager by pressing Win+X and selecting it from the menu
  • Click on the View tab at the top and select Devices by connection
  • For each entry that exists with the name of Nefarius Virtual Gamepad Emulation Bus or Virtual Gamepad Emulation Bus, right click on them and select Uninstall then give confirmation when asked to

Having no ViGEmBus entries left at the Device Manager does not mean your system is fully rid of it, so let's continue:

  • Download and open the Driver Store Explorer
  • On its interface, click at the INF bar at the top left side so the list gets ordered by name
  • Scroll to the V letter section and mark every entry of vigembus.inf. BE CAREFUL TO NOT MARK ANYTHING ELSE! After that, on the right side, mark the Force Deletion checkbox and then click on Delete Driver
  • Reboot your computer
  • Verify again on the Driver Store Explorer if there are no entries left of vigembus.inf and if there are no entries left of (Nefarius) Virtual Gamepad Emulation Bus on the Device Manager. If there are, repeat this section

And done, no ViGEmBus left anywhere! Now it's safe to try re-installing the latest version according to the installation section.

Other issues

This guide should cover all known issues regarding the ViGEmBus setup, so give it a good read.

If you are facing another issue that is not covered here, feel free to reach us through the proper means.


Leave a Reply

Your email address will not be published.