Skip to content

Troubleshooting

hifihedgehog edited this page Mar 19, 2026 · 34 revisions

Troubleshooting

This page covers common problems and their solutions. If your issue is not listed here, check the GitHub Issues page.


No Devices Detected

Symptoms: The Devices page is empty. The Dashboard shows "0 / 0 devices online."

Solutions:

  1. Check your USB connection. Try a different USB port, preferably one directly on your computer rather than through a hub.
  2. Try a different cable. Some cables are charge-only and do not carry data.
  3. Check that SDL3.dll is present in the same folder as PadForge.exe. If it is missing, re-extract the PadForge zip file.
  4. Restart PadForge. Some devices are only detected during startup or device refresh. PadForge re-scans every 2 seconds, but certain timing-dependent devices may need a fresh start.
  5. Check Windows Device Manager. Make sure Windows itself recognizes the device. Look under "Human Interface Devices" or "Sound, video and game controllers." If the device does not appear in Windows, the issue is the device or its driver, not PadForge.
  6. Bluetooth controllers: Make sure the controller is paired and connected in Windows Bluetooth settings before starting PadForge.
  7. Check HidHide. If HidHide is installed and cloaking is active, it may be hiding the controller from PadForge. Open the HidHide Client application and make sure PadForge is listed in the application whitelist. Alternatively, disable "Enable device hiding" on the PadForge Settings page temporarily to test.
  8. Check for driver conflicts. Some controller management tools (DS4Windows, BetterJoy, reWASD, x360ce) install drivers that intercept controller access. Close these applications and try again.
  9. DualShock 3 controllers: DS3 controllers require a compatible driver such as DsHidMini. Standard Windows HID drivers do not support DS3. Make sure DsHidMini is installed and the controller appears in Device Manager.

Controller Detected but Not Mapping Correctly

Symptoms: The controller appears on the Devices page but pressing buttons or moving sticks produces no output or the wrong output on the virtual controller.

Solutions:

  1. Check auto-mapping support. PadForge auto-maps known gamepads (Xbox, DualSense, DualShock 4, Switch Pro, etc.) using SDL3's gamepad database. Unknown or unusual controllers may not have auto-mapping entries and will require manual mapping.
  2. Assign the device to a slot. On the Devices page, make sure the device has at least one virtual controller slot selected (the numbered toggle buttons). An unassigned device produces no output.
  3. Map inputs manually. Go to the Button and Axis Mappings tab for the virtual controller slot. Use the Record buttons to manually map each button and axis. Press the Record button, then press the physical input you want to assign.
  4. Enable Force Raw Joystick Mode. If SDL3's gamepad remapping produces wrong outputs for your controller, go to the Devices page, select the device, and enable Force raw joystick mode in the Input Mode section. This reads raw joystick indices directly. You will need to manually record all mappings afterward.
  5. Check the Devices page live input. Select the controller on the Devices page and verify that the live input state (axes, buttons, POV) responds correctly when you press buttons and move sticks. If the live input is wrong, the issue is at the driver or HID level.
  6. Check the source dropdown. On the Button and Axis Mappings tab, each mapping row has a source dropdown. Make sure it shows the correct input device, not a different device.

Virtual Controller Not Appearing in Games

Symptoms: You have created a virtual controller slot and assigned a device, but games do not detect the virtual controller.

Solutions:

  1. Install ViGEmBus. Xbox 360 and DualShock 4 output types require the ViGEmBus driver. Go to Settings and click Install next to ViGEmBus. PadForge will show an error in the status bar ("ViGEmBus driver is not installed") if it cannot find the driver when creating a virtual controller.
  2. Install vJoy. The vJoy output type requires the vJoy driver. Install it from the Settings page. PadForge will display "vJoy driver is not installed (vJoyInterface.dll not found)" if the driver is missing.
  3. Install Windows MIDI Services. The MIDI output type requires Windows MIDI Services. Install it from the Settings page. This requires Windows 11.
  4. Make sure the slot is enabled. The power icon on the Dashboard slot card should be green, not red.
  5. Make sure the engine is running. The engine status on the Dashboard should show "Running" with a green power icon.
  6. Restart the game. Some games only scan for controllers at startup.
  7. Check the game's input settings. Some games need you to manually select or enable the controller in their settings menu.
  8. Check vJoy in joy.cpl. For vJoy output, press Win+R, type joy.cpl, and press Enter. Your vJoy controllers should be listed. If they are not, see the "vJoy Controllers Not Working" section below.

Double Input in Games

Symptoms: Every button press registers twice. Menus scroll too fast. The game shows two controllers. Stick movements appear doubled.

Cause: The game is reading both your physical controller and PadForge's virtual controller simultaneously. This is the most common issue for new PadForge users.

Solutions:

  1. Install HidHide. Go to Settings and click Install next to HidHide. This driver hides your physical controller from games so they only see the PadForge virtual controller.
  2. Enable device hiding in PadForge. After installing HidHide, go to Settings and check "Enable device hiding." PadForge will automatically hide physical devices that have HidHide enabled and whitelist itself.
  3. Enable HidHide per device. On the Devices page, select the physical controller and enable the "Hide from games" toggle. This tells HidHide to cloak that specific device.
  4. Check the HidHide whitelist. PadForge automatically adds itself to the HidHide whitelist so it can still read hidden devices. If PadForge stops seeing a device after enabling HidHide, check the whitelist on the Settings page and make sure PadForge's path is listed.
  5. Whitelist other applications. If other applications (emulators, other tools) also need to see the hidden device, add their executable paths to the HidHide whitelist on the Settings page.
  6. Restart the game after installing HidHide or changing its settings.
  7. Check the game's controller settings. Some games let you disable specific controllers. Disable the physical one and keep the virtual one.
  8. Steam overlay conflict. If using Steam, its controller configuration may create an additional virtual controller. Disable Steam Input for the specific game or close Steam entirely.

Rumble Not Working

Symptoms: No vibration from your physical controller when games send force feedback.

Solutions:

  1. Check the Force Feedback tab. Make sure Overall Gain is above 0%. This is the master volume for all rumble. If it is at 0%, no rumble will be sent to the device regardless of other settings.
  2. Check per-motor strength. Both the left motor and right motor strength sliders should be above 0%.
  3. Click Test Rumble on the Force Feedback tab to verify your controller supports vibration. If no vibration occurs, the device does not have rumble motors or the driver does not support rumble.
  4. Make sure a device is assigned to the slot and is connected (green status dot on the Devices page).
  5. Check if the device supports rumble. Not all controllers have rumble motors. The Devices page shows device capabilities. Controllers without native rumble will attempt haptic fallback (sine/constant force effects) if the device supports haptics, but results vary.
  6. Check if the game sends rumble. Not all games use force feedback. Try a different game to verify.
  7. Close other controller software (like Steam's controller configuration, DS4Windows, or reWASD) that might be intercepting rumble commands.
  8. DualShock 3 limitation. DS3 controllers via DsHidMini in SDF mode do not support rumble through SDL3. The driver reports no rumble capability. DsHidMini's XInput mode supports rumble, but this changes the device type.
  9. vJoy FFB note. If using vJoy output, the game must send DirectInput force feedback effects. Rumble is routed from vJoy FFB effects to the physical controller. See the "vJoy FFB Not Working" section if force feedback effects are not being received.

Audio Bass Rumble Not Working

Symptoms: Audio Bass Rumble is enabled but you feel no vibration from the controller, or the Level meter stays flat.

Solutions:

  1. Check that audio is playing. Audio rumble requires active audio output through your system's default render device (speakers or headphones). The Level meter on the Force Feedback tab should show activity when audio is playing.
  2. Check WASAPI capture. PadForge uses WASAPI loopback to capture system audio. If the Level meter shows no activity even while audio is playing, the capture may have failed to start. Try disabling and re-enabling Audio Bass Rumble on the Force Feedback tab. PadForge automatically reconnects when the default audio device changes.
  3. Check Overall Gain. The master Overall Gain slider applies to audio rumble as well. Make sure it is above 0%.
  4. Increase sensitivity. The default sensitivity (4) may be too low for quiet audio or music without prominent bass. Try increasing it to 8--12. The sensitivity range is 1--20.
  5. Raise the bass cutoff. If your audio has little deep bass, raise the Bass Cutoff slider (20--200 Hz, default 80 Hz) to capture more frequencies. A higher cutoff includes more mid-bass content, which may make the rumble more responsive.
  6. Check motor scales. Both the Left Motor and Right Motor sliders on the audio rumble section must be above 0% for rumble to be felt.
  7. Verify your device supports rumble. Click Test Rumble on the Force Feedback tab. If no vibration occurs with Test Rumble, the device does not have rumble motors and audio rumble will have no effect.
  8. Check for exclusive audio access. Some applications (DAWs, audio editors, certain games) may open the audio device in exclusive mode, which prevents WASAPI loopback capture from working.
  9. No audio device. If no default audio render device is present (for example, all audio output is disabled), the WASAPI loopback capture cannot start. Ensure at least one audio output device is active in Windows Sound settings.

vJoy Controllers Not Working

Symptoms: vJoy virtual controllers do not appear in games or joy.cpl (Windows Game Controllers).

Solutions:

  1. Run PadForge as administrator. vJoy device management requires elevated privileges. PadForge automatically requests elevation on startup when the vJoy driver is installed. If the UAC prompt was cancelled, PadForge will run without admin rights and vJoy will not function. Right-click PadForge.exe and select "Run as administrator."
  2. Check the vJoy driver on the Settings page. Make sure it shows "Installed" with a version number.
  3. Verify in joy.cpl. Press Win+R, type joy.cpl, and press Enter. You should see your vJoy controllers listed. If not, PadForge may not have created the device nodes yet -- create a vJoy slot on the Dashboard first.
  4. Restart PadForge if you just installed the vJoy driver. The driver needs a fresh app launch to initialize device nodes properly.
  5. Check for "No free vJoy devices" error. If you see this error in the status bar, PadForge created the device nodes but could not acquire a free device ID. Try restarting PadForge.

vJoy Phantom Controllers

Symptoms: More vJoy controllers appear in joy.cpl than expected. Duplicate entries show up. Games see extra controllers that should not exist.

Cause: vJoy phantom controllers are caused by multiple ROOT\HIDCLASS device nodes existing simultaneously. Each device node reads ALL registry keys, so N nodes times N keys equals N-squared controllers.

Solutions:

  1. Restart PadForge. PadForge manages exactly one ROOT\HIDCLASS device node for vJoy. On startup, it detects and corrects phantom nodes automatically.
  2. Uninstall and reinstall vJoy. On the Settings page, uninstall vJoy, then reinstall it. This performs a full cleanup of device nodes, registry keys, and driver store entries.
  3. Close other vJoy management tools. Do not run vJoyConf or other vJoy configuration utilities while PadForge is running. They may create additional device nodes that conflict with PadForge's management.
  4. Check Device Manager. Open Device Manager, look under "Human Interface Devices" for multiple "vJoy Device" entries. There should be exactly one. If there are multiple, uninstalling vJoy from PadForge's Settings page will clean them up.

vJoy FFB Not Working

Symptoms: Games send force feedback effects but vJoy controllers do not pass them through to the physical controller for rumble.

Solutions:

  1. Verify the game uses DirectInput FFB. vJoy FFB only works with games that send DirectInput force feedback effects. XInput-only games (most modern games) do not send effects through DirectInput and will not trigger vJoy FFB. For those games, use Xbox 360 or DualShock 4 output type instead.
  2. Check Overall Gain. The master Overall Gain on the Force Feedback tab must be above 0% for FFB effects to produce rumble.
  3. Check motor strength. Per-motor strength sliders should be above 0%.
  4. Verify the physical controller supports rumble. Click Test Rumble to confirm. If the physical controller does not support rumble, FFB effects have no output path.
  5. Check effect types. PadForge processes ConstantForce, Sine, Square, Triangle, SawtoothUp, SawtoothDown, and Spring effects from vJoy FFB. If the game sends an unusual effect type, it may not produce rumble.
  6. Restart the game. Some games only initialize DirectInput FFB at startup and require a restart after PadForge creates the vJoy device.

MIDI Not Available

Symptoms: The MIDI button does not appear in the "Add Controller" popup. Creating a MIDI slot fails.

Solutions:

  1. Install Windows MIDI Services. MIDI output requires Windows MIDI Services to be installed. Go to Settings and click Install next to Windows MIDI Services. PadForge downloads the latest version from GitHub (~210 MB).
  2. Check your Windows version. Windows MIDI Services requires Windows 11. It is not available on Windows 10. PadForge checks availability by initializing the MIDI Services SDK at startup -- if this fails, the MIDI option is hidden.
  3. Restart PadForge after installing. After installing Windows MIDI Services, restart PadForge so it can re-evaluate MIDI availability.
  4. Check the MIDI service. Windows MIDI Services runs as a Windows service. Open Services (Win+R, type services.msc) and verify that the "Windows MIDI Services" service is running.
  5. Error: "Failed to create MIDI session." This means the MIDI Services SDK initialized but could not connect to the background service. Restart the Windows MIDI Services service or restart your computer.

No MIDI Output

Symptoms: A MIDI virtual controller slot is active, but no MIDI messages are being received by your DAW, synthesizer, or other MIDI application.

Solutions:

  1. Check the MIDI device name. PadForge creates a system-wide MIDI endpoint named "PadForge MIDI N" (where N is the MIDI instance number). In your DAW or MIDI application, look for this name in the MIDI input device list.
  2. Check the receiving application. Make sure your DAW or MIDI application is configured to receive from the PadForge MIDI endpoint. Some applications require manually selecting the MIDI input.
  3. Make sure the engine is running. The engine must be running and the slot must be enabled (green power icon) for MIDI messages to be sent.
  4. Check channel settings. Verify the MIDI channel (1--16) on PadForge's MIDI configuration bar matches what your receiving application expects.
  5. Check CC and note assignments. On the MIDI mapping configuration, verify that axes are assigned to the correct CC numbers and buttons to the correct note numbers that your receiving application listens for.
  6. Verify with a MIDI monitor. Use a MIDI monitor tool (such as MIDI-OX or the Windows MIDI Services console) to verify that PadForge is actually sending messages. If messages appear in the monitor but not in your DAW, the issue is in the DAW's configuration.

My Macro Doesn't Fire

Symptoms: You have created a macro with a trigger, but pressing the trigger does nothing.

Solutions:

  1. Check that all trigger components are active simultaneously. If the trigger uses buttons, axes, and/or POV directions, every component must be pressed or deflected at the same time. A partial press will not activate the macro.
  2. Check axis thresholds. For axis triggers (stick or trigger), the physical input must pass the configured threshold percentage. If the threshold is set to 50%, the stick or trigger must be pushed past the halfway point before the macro activates.
  3. Make sure the macro is enabled. Each macro has an enable checkbox. If it is unchecked, the macro is saved but will not fire.
  4. Make sure the engine is running. The engine must be running and the slot must be enabled (green power icon) for macros to fire.
  5. Check trigger source. If the trigger source is set to "Input Device" but no physical device is assigned to the slot, the trigger has nothing to read from. Switch to "Output Controller" or assign a device.
  6. Check for conflicting macros. If multiple macros have overlapping triggers on the same slot, they may interfere with each other. Review all macros on the slot to check for conflicts.

Mouse Actions from Macros Aren't Working

Symptoms: A macro with Mouse Move, Mouse Button, or Mouse Scroll actions does not produce visible mouse movement or clicks.

Solutions:

  1. Check the axis source. Mouse Move and Mouse Scroll actions read from a controller axis. Make sure the axis source matches where the input is coming from -- "Output Controller" reads from the virtual controller's mapped output, while "Input Device" reads directly from the physical device. Pick the one that matches your setup.
  2. Adjust the sensitivity slider. If the mouse cursor moves but is too fast or too slow, change the sensitivity value in the macro action settings. Higher values mean faster movement per frame.
  3. Verify the trigger is firing. Mouse actions only run while the macro is active. Check that the trigger itself is working (see "My Macro Doesn't Fire" above).
  4. Anti-cheat software. Some games with anti-cheat systems may block simulated mouse input. This is a limitation of the anti-cheat, not PadForge.

Always-Mode Macro Won't Stop

Symptoms: A macro set to "Always" trigger mode runs continuously and you cannot stop it by releasing buttons.

Solutions:

  1. This is expected behavior. Always-mode macros run continuously while the virtual controller slot is active. They do not require any trigger buttons -- they fire every frame regardless of input.
  2. Disable the macro. Uncheck the enable checkbox on the macro to stop it from firing. The macro is preserved and can be re-enabled later.
  3. Delete the macro. If you no longer need it, click the delete button to remove it entirely.
  4. Disable the slot. Clicking the power icon on the Dashboard slot card to disable the slot will also stop all macros on that slot.

Keyboard+Mouse Not Working

Symptoms: A Keyboard+Mouse slot is active but key presses or mouse movement do not appear in games or other applications.

Solutions:

  1. Ensure the slot type is set to Keyboard+Mouse. Check the Dashboard card and verify the Keyboard+Mouse icon is selected (fully opaque).
  2. Map keys and buttons. Go to the Mappings tab and assign physical controller buttons to keyboard keys or mouse buttons. Without mappings, no output is produced.
  3. Check mouse sensitivity. Mouse movement from stick input is relative (not absolute). If movement seems too slow or too fast, adjust the sensitivity in the Sticks tab or in the macro action settings.
  4. Anti-cheat software. Some games with anti-cheat systems (such as EAC, BattlEye, or Vanguard) may block simulated keyboard and mouse input. This is a limitation of the anti-cheat, not PadForge.
  5. Make sure the engine is running. The engine must be running and the slot must be enabled (green power icon) for any output to be sent.

Settings Not Saving

Symptoms: Changes revert after restarting PadForge. The settings file does not update.

Solutions:

  1. Wait for autosave. PadForge has a debounced autosave timer that triggers after you stop making changes. Most settings are saved automatically. If PadForge closes unexpectedly before the autosave fires, recent changes may be lost.
  2. Click Save on the Settings page if you want to force an immediate save.
  3. Check file permissions. Make sure PadForge has write access to its own folder. The settings file (PadForge.xml) lives next to the executable. If the folder is read-only (for example, in Program Files without elevation), settings cannot be saved. PadForge will show an error in the status bar: "Error saving settings."
  4. Check the settings folder. Click "Open Folder" on the Settings page and verify the PadForge.xml file exists and is not read-only. Right-click the file, go to Properties, and make sure "Read-only" is not checked.
  5. Antivirus interference. Some antivirus software may block PadForge from writing files. Add an exception for PadForge's folder.
  6. Corrupted settings file. If PadForge shows "Error loading settings" on startup, the XML file may be corrupted (truncated write, disk error). Try deleting PadForge.xml and restarting. PadForge will create a fresh configuration with default values. Alternatively, click "Reset to Defaults" on the Settings page.
  7. OneDrive or cloud sync conflict. If PadForge's folder is synced by OneDrive, Dropbox, or similar services, concurrent access from multiple machines can corrupt the settings file. Move PadForge to a non-synced folder or ensure only one machine runs it at a time.

App Won't Start or UAC Prompt Issues

Symptoms: PadForge does not start, closes immediately after launch, or shows a UAC prompt every time.

Solutions:

  1. UAC prompt is expected when vJoy is installed. PadForge auto-detects the vJoy driver at startup. If vJoy is installed, PadForge relaunches itself with administrator privileges because vJoy device node management requires elevation. This UAC prompt is normal.
  2. UAC was cancelled. If you click "No" on the UAC prompt, PadForge continues running without elevation. Xbox 360, DualShock 4, MIDI, and Keyboard+Mouse output types will work normally, but vJoy output will not function because it cannot create or manage device nodes.
  3. Remove vJoy to skip elevation. If you do not use vJoy output and want to avoid the UAC prompt, uninstall the vJoy driver from the Settings page. PadForge will then start without requesting elevation.
  4. Single instance enforcement. PadForge allows only one instance. If a previous instance is still running (or stuck in the background), the new instance will close immediately. Check Task Manager for existing PadForge processes and end them.
  5. Missing .NET runtime. PadForge requires .NET 10 runtime. If the runtime is not installed, Windows may show an error dialog or silently fail. Download the .NET 10 Desktop Runtime from Microsoft's website.
  6. Missing SDL3.dll. If SDL3.dll is missing from PadForge's folder, the application will crash on startup. Re-extract PadForge from the release zip file.

High CPU Usage

Symptoms: PadForge is using a significant percentage of CPU, causing fans to spin up or other applications to slow down.

Solutions:

  1. Increase the polling interval. Go to Settings > Input Engine and increase the polling interval. The default is 1ms (~1000 Hz), which provides the best responsiveness but uses more CPU due to the high-resolution timer and spin-wait tail. Try 4ms (~250 Hz) or 8ms (~125 Hz) for casual use.
  2. Disable polling on focus loss. If you only need PadForge active while a game is running, uncheck "Continue polling when window loses focus" in Settings. Note: this will stop all output when PadForge's window loses focus, which may not be desired during gameplay.
  3. Reduce virtual controller count. Each active slot adds processing overhead (input reading, mapping, output writing). Remove slots you are not using.
  4. Check audio bass rumble. When Audio Bass Rumble is enabled, PadForge runs a WASAPI loopback capture and real-time DSP filter. This adds some CPU usage. Disable Audio Bass Rumble on unused slots.

DSU Motion Not Working in Emulator

Symptoms: The emulator does not receive gyroscope or accelerometer data from PadForge.

Solutions:

  1. Enable the DSU server. On the Dashboard, check "Enable DSU motion server (cemuhook)" and verify the status shows "Listening."
  2. Check the port. The default port is 26760. Make sure the port in PadForge matches the port configured in your emulator. If you see "Port already in use" in PadForge's status, another application (such as another instance of PadForge, BetterJoy, or DS4Windows) is using that port. Change the port or close the conflicting application.
  3. Use the correct address. If the emulator is on the same computer, use 127.0.0.1 as the server address. PadForge's DSU server binds to the loopback address (127.0.0.1) only.
  4. Check your controller. Not all controllers have motion sensors. Check the Devices page to see if your controller lists gyro/accel capabilities. Supported controllers include DualSense, DualShock 4, Switch Pro Controller, and Switch 2 Pro Controller.
  5. Check slot position. The DSU protocol supports a maximum of 4 slots. Your motion-capable device must be assigned to one of the first 4 virtual controller slots (slots 1--4). Devices assigned to slots 5--16 are not broadcast over DSU.
  6. Check your firewall. Make sure UDP port 26760 (or your custom port) is not blocked by Windows Firewall or third-party firewall software.
  7. Emulator configuration. In your emulator's motion settings, add a cemuhook/DSU server entry with address 127.0.0.1 and the matching port. Some emulators require you to select which DSU slot to read from -- choose the slot that corresponds to your motion-capable controller.

Web Controller Not Connecting

Symptoms: The browser shows "Disconnected" or cannot reach the web controller URL.

Solutions:

  1. Enable the web controller. On the Dashboard, enable the web controller and verify the status shows "Running" with a URL.
  2. Check that both devices are on the same local network. The browser device and the PadForge computer must be on the same Wi-Fi or LAN network. The URL shown on the Dashboard uses the PadForge computer's local IP address.
  3. Verify the port is not blocked. The default port is 8080. PadForge automatically creates a Windows Firewall rule for the web controller port, but this requires administrator privileges. If PadForge is not running elevated (and vJoy is not installed), the firewall rule may not be created. Manually add a firewall rule for TCP port 8080, or run PadForge as administrator.
  4. Port already in use. If you see "Port in use" in the status, another application is using port 8080. Change the web controller port in Settings to an unused port (for example, 8081 or 9090).
  5. Access denied (error code 5). On non-elevated systems, HttpListener may not have permission to listen on the specified port. Run PadForge as administrator, or use a port above 1024 and create a URL reservation with netsh http add urlacl.
  6. Use landscape orientation. The web controller requires landscape orientation on the browser device. Rotate your phone or tablet to landscape mode.
  7. Try a different browser. The web controller uses WebSockets. Make sure your browser supports WebSockets (all modern browsers do). Try Chrome, Firefox, or Edge.

Profile Not Switching Automatically

Symptoms: Auto-profile switching is enabled and a profile is configured for a game, but PadForge does not switch profiles when the game is in the foreground.

Solutions:

  1. Enable auto-profile switching. On the Profiles section, make sure "Enable auto profile switching" is checked. If this is disabled, PadForge does not monitor the foreground window.
  2. Check the executable path. Profile matching uses full executable paths (for example, C:\Games\MyGame\game.exe). Make sure the path in the profile exactly matches the game's actual executable location. The match is case-insensitive but the full path must match. Use the file browser button when adding executables to avoid typos.
  3. Multiple executable entries. If the game can launch from different locations, add all paths separated by the pipe character (|) in the executable field.
  4. Check foreground detection. PadForge identifies the foreground window's process at 30 Hz. Some games use launcher processes (Steam, Epic Games Launcher) that remain in the foreground briefly before the actual game starts. Make sure you have added the game's own executable, not the launcher's.
  5. Elevated process detection. If a game runs as administrator but PadForge does not, PadForge may not be able to read the foreground process path. Run PadForge as administrator to ensure it can detect all foreground applications.
  6. Save the profile. After configuring a profile, make sure you save settings. Profile data is stored in PadForge.xml and must be saved to persist.

Sensitivity Curves Not Responding

Symptoms: You have set a sensitivity curve but stick or trigger output does not seem affected.

Solutions:

  1. Check the correct axis. For sticks, sensitivity curves are set independently for X and Y. Make sure you are editing the curve on the axis that corresponds to the direction you are testing (X for horizontal, Y for vertical).
  2. Check the preset. If the preset is set to "Linear," no modification is applied -- the output matches input 1:1. Select a different preset (such as Smooth, Aggressive, or S-Curve) or add custom control points.
  3. Try the reset button. Click the reset button next to the sensitivity preset dropdown to restore the curve to Linear, then apply a new preset to verify the curve editor is working.
  4. Check dead zone interaction. The sensitivity curve only applies to input that passes the dead zone. If your dead zone is set very high, there may not be enough remaining range for the curve to have a noticeable effect.
  5. Custom control points too close. If custom control points are placed very close together or in a nearly linear arrangement, the resulting curve may be indistinguishable from linear. Spread the points further apart or use more extreme positions to see a visible effect.
  6. Check per-direction max range. If individual axis directions have different max range values, the curve may behave differently in each direction. Review the per-direction max range settings on the Sticks tab.
  7. Check dead zone shape. Non-default dead zone shapes (such as Axial, Hybrid, or Sloped) may affect how the sensitivity curve interacts with dead zone processing. Try switching to the default (Scaled Radial) to isolate the issue.

Steam Controller Conflicts

Symptoms: Controller behaves unexpectedly, especially Switch Pro Controller or Switch 2 Pro Controller. Controller is not detected or rumble stops working.

Solutions:

  1. Disable Steam Input for the specific controller. In Steam, go to Settings > Controller and turn off the relevant controller support option.
  2. Close Steam entirely if you are not using it. Steam can exclusively lock certain controller interfaces, preventing PadForge from accessing them.
  3. Switch 2 Pro Controller specifically: Steam may lock the WinUSB interface that PadForge needs for initialization. Close Steam before connecting the controller, or disable Steam's Switch controller support.

Buttons Map to Wrong Outputs

Symptoms: Buttons do not match their expected positions. Some buttons trigger two inputs or produce no input at all. D-pad and face buttons may work but shoulder buttons, triggers, or stick clicks do not.

Solutions:

  1. Enable Force Raw Joystick Mode. On the Devices page, select the problematic device and enable Force raw joystick mode in the Input Mode section. This bypasses SDL3's gamepad remapping and reads the raw joystick indices directly.
  2. Record mappings manually. With force raw mode enabled, auto-mapping is not available. Use the Record buttons on the Button and Axis Mappings tab to map each button individually.
  3. Check in joy.cpl. Press Win+R, type joy.cpl, and verify your controller's buttons work correctly there. If they do, force raw mode should fix the issue in PadForge.
  4. Known affected devices: DualShock 3 (with DsHidMini in SDF mode), certain third-party controllers with non-standard HID report layouts.

Force Raw Joystick Mode

Symptoms: Buttons map to wrong outputs. Some buttons trigger two inputs. Shoulder buttons, triggers, or stick clicks produce no input.

Cause: SDL3's built-in gamepad mapping doesn't match your device's HID report layout (common with DualShock 3 + DsHidMini, or certain third-party controllers).

Solution:

  1. Go to the Devices page
  2. Select the problematic device
  3. In the Input Mode section, enable Force raw joystick mode
  4. Go to the Mappings tab and manually record each button
  5. Auto-mapping is not available in raw mode, but raw button indices will be correct

Mouse or Keyboard Input Issues

Symptoms: Mouse buttons don't register on the Devices page. Mouse movement is too subtle to see. Mouse axes can't be recorded via the Record button.

Solutions:

  1. Mouse buttons not registering: This was fixed in a recent update. Make sure you are running the latest version of PadForge.
  2. Mouse movement barely visible: Mouse axes show relative deltas (movement since last poll), not absolute positions. Fast mouse movements will show larger axis values. The movement is amplified internally so it registers clearly.
  3. Recording mouse axes: When recording a mapping for a mouse axis, simply move the mouse in the desired direction. PadForge detects mouse axes instantly -- no need to hold the movement like with a joystick.
  4. Input consumption safety: PadForge does not automatically consume mouse or keyboard inputs when you assign them to a slot. You must manually enable "Consume mapped inputs" or "Hide from games" if you want input hiding, and PadForge will warn you about the risks before enabling.

Stick Drift After Calibration

Symptoms: The stick drifts even after setting dead zones.

Solution: Use center offset calibration:

  1. Go to the Sticks tab
  2. Leave the stick at rest (do not touch it)
  3. Click Calibrate Center
  4. PadForge measures the actual rest position and applies an offset so the dead zone is centered correctly

Volume Macro Issues

Symptoms: Volume macro changes volume in the wrong direction, or the OSD appears when it should not.

Solutions:

  1. Wrong direction. If the volume increases when you expect it to decrease (or vice versa), enable Invert axis on the volume action settings.
  2. Unwanted OSD. If the Windows volume on-screen display appears each time the macro fires, disable Show volume OSD on the volume action.
  3. Volume not changing. Make sure the macro trigger is actually firing. Check the "My Macro Doesn't Fire" section above.

Quick Reference

Problem First Thing to Try
No devices Check USB connection, cable, and Windows Device Manager
Controller detected but not mapping Assign device to a slot, check source dropdown on mappings tab
No virtual controller in game Install ViGEmBus, vJoy, or Windows MIDI Services
Double input Install HidHide, enable device hiding, enable per-device "Hide from games"
Wrong button mapping Enable "Force raw joystick mode" on Devices page, re-record mappings
No rumble Check Overall Gain > 0%, check motor strength > 0%, click Test Rumble
Audio bass rumble not working Check audio is playing, check Level meter, increase sensitivity, check Overall Gain
vJoy not appearing Run PadForge as administrator, check vJoy driver status on Settings page
vJoy phantom controllers Restart PadForge (auto-corrects), or uninstall/reinstall vJoy
vJoy FFB not working Verify game uses DirectInput FFB (not XInput), check Overall Gain
No MIDI button in UI Install Windows MIDI Services (requires Windows 11), restart PadForge
No MIDI output Check "PadForge MIDI N" in DAW's MIDI input list, check channel
No motion in emulator Enable DSU server, check port matches emulator, use 127.0.0.1
DSU port in use Close conflicting app (BetterJoy, DS4Windows), or change port
Web controller disconnected Check same network, check firewall, try different port
Web controller access denied Run PadForge as administrator, or use port above 1024
Profile not switching Check executable path matches exactly, enable auto-switching
Sensitivity curve no effect Check correct axis (X vs Y), verify preset is not Linear
Settings lost Wait for autosave, check file permissions, check for corrupted XML
App won't start (UAC) Accept UAC prompt, or uninstall vJoy to skip elevation
App won't start (crash) Check SDL3.dll present, check .NET 10 runtime installed
High CPU Increase polling interval (Settings > Input Engine)
Steam conflict Disable Steam Input or close Steam entirely
Macro doesn't fire Check all trigger components active simultaneously, check axis threshold
Mouse macro not working Verify axis source, adjust sensitivity slider
Always-mode macro won't stop Disable or delete the macro, or disable the slot
Keyboard+Mouse not working Check slot type, add mappings, check anti-cheat
Mouse buttons not registering Update to latest PadForge version
Stick drift after dead zone Use Calibrate Center on the Sticks tab
Volume macro wrong direction Enable Invert axis on the volume action
Volume OSD appearing unwanted Disable Show volume OSD on the volume action
DualShock 3 buttons missing Enable Force raw joystick mode, re-record mappings
DualShock 3 rumble not working DsHidMini SDF mode does not support rumble via SDL3

Related Pages

Clone this wiki locally