-
Notifications
You must be signed in to change notification settings - Fork 6
Installation
- Download
PadForge-v{version}-win-x64.zipfrom the Releases page. - Extract the zip to any folder (e.g.
C:\PadForge\). - Run
PadForge.exe. - Go to Settings and click Install next to HIDMaestro to enable virtual controllers.
- On the Dashboard, click Add Controller and choose a type (Microsoft, PlayStation, Extended, MIDI, or Keyboard+Mouse).
- Connect a physical controller. It appears on the Devices page. Click the slot badge on its card to assign it.
- Done. Games now see a virtual controller.
Upgrading from PadForge v2? On first launch, v3 detects ViGEmBus and vJoy if you have them installed and offers to uninstall them. v3 does not need either driver — HIDMaestro replaces both.
| Requirement | Details |
|---|---|
| OS | Windows 10 or 11 (x64) |
| Runtime | .NET 10 Desktop Runtime (bundled, no separate install needed) |
| Format | Portable single-file executable. No installer. Extract and run. |
Settings live in PadForge.xml alongside the executable. To relocate, move the entire folder.
On first launch, PadForge opens the Dashboard with no drivers installed:
- Install HIDMaestro. Go to Settings and click Install next to HIDMaestro. Approve the UAC prompt. Enables every virtual controller category except Keyboard+Mouse (which needs no driver).
- Create a virtual controller. On the Dashboard, click Add Controller and pick a category — Microsoft (Xbox), PlayStation, Extended (HIDMaestro: flight sticks, wheels, third-party gamepads, custom HID), MIDI, or Keyboard+Mouse.
- Check devices. Go to the Devices page. PadForge auto-detects all connected controllers (Xbox, PlayStation, Switch, generic USB gamepads, etc.).
- Assign a device. Click the slot badge on a device card to route that physical controller through the virtual controller.
Games now see the virtual controller as a standard gamepad.
HIDMaestro is the engine PadForge uses to create virtual controllers. It is not an optional add-on — if you want anything beyond Keyboard+Mouse output, you need it. The HM driver itself is installed once from Settings on first run; after that, every controller you add to the Dashboard is a dynamic instance HIDMaestro creates on demand to match the controller "shape" you picked (Xbox Series, DualSense, Logitech wheel, etc.). When you delete the slot, the device disappears. Slots and devices are 1:1, automatically.
The HM installer is bundled inside PadForge.exe. Click Install on the HIDMaestro card under Settings to register it with pnputil. After that, no further driver UI — PadForge takes over, and the per-slot device lifecycle is invisible.
If you upgraded from PadForge v2, HIDMaestro fully replaces the old ViGEmBus + vJoy combination. The legacy driver cleanup dialog on first v3 launch handles uninstalling those.
Two optional drivers install from the Settings page. Both are bundled (HidHide) or downloaded on demand (MIDI Services); no separate install is required if you don't need their features.
| Purpose | Hides physical controllers from games so only virtual controllers are visible. |
| Install when | Games detect both physical and virtual controllers (double input). |
| Skip when | No double input issues. |
| Purpose | Virtual MIDI devices for controlling music software via gamepad. |
| Install when | Sending MIDI messages to DAWs, synthesizers, or VJ software. |
| Skip when | No MIDI output needed (most users). |
Requires Windows 11 24H2 (build 26100) or later. The Install button is disabled on older versions.
Always available. Maps controller inputs to keyboard keys and mouse movements with no driver.
PadForge ships an embedded fork of OpenXInput (xinput1_4.dll + devobj.dll under Resources/OpenXInput/x64/). At launch PadForge tells the loader to resolve those copies first, so its own enumeration of XInput devices skips the virtual controllers it just created. The system XInput is untouched, so games and Steam see PadForge's virtuals normally. Nothing to install.
PadForge auto-requests elevation (UAC prompt) on startup because HIDMaestro INF install/uninstall and HidHide whitelist management both need administrator access.
| Scenario | Behavior |
|---|---|
| Accept UAC | PadForge runs elevated. All virtual controllers work normally. |
| Decline UAC | PadForge runs without elevation. Some operations (driver install/uninstall, HidHide whitelist edits) are unavailable, but already-installed drivers continue to function. |
Enable Settings > Window > Start at login to launch PadForge automatically on sign-in.
For a fully silent background experience, enable all three options:
| Option | Effect |
|---|---|
| Start at login | Launches PadForge on sign-in. |
| Start minimized | Skips showing the main window. |
| Minimize to system tray | Keeps PadForge in the notification area instead of the taskbar. |
With all three enabled, PadForge runs in the background with only a system tray icon.
No installer means removal is straightforward:
- Go to Settings and click Uninstall next to each installed driver (HIDMaestro, HidHide, Windows MIDI Services).
- Close PadForge.
- Delete the PadForge folder.
If you previously had ViGEmBus and/or vJoy installed (from PadForge v2), the legacy driver cleanup dialog on first v3 launch handles uninstalling them.
- Settings: install and manage optional drivers.
- Dashboard: main control panel after first launch.
- Devices: view detected physical controllers.
- Controller Slots: create and configure virtual controllers.
- Driver Management: detailed driver information.
- HIDMaestro Deep Dive: how PadForge talks to HIDMaestro under the hood.