-
Notifications
You must be signed in to change notification settings - Fork 6
Impulse Triggers
A separate Pad-page tab that drives the trigger motors on physical Xbox One, Elite, and Series pads. Game passthrough, audio-driven trigger rumble, and a steady-force override all live on this tab.

The Impulse Triggers tab is visibility-gated on the active source device's HasRumbleTriggers flag. PadForge sets that flag for the Microsoft VID (0x045E) PIDs that ship with trigger motors: Xbox One (original wired, 2015 firmware, S Bluetooth, Wireless Adapter), Xbox Elite (original wired and Series 1), Xbox Elite Series 2 (wired and Bluetooth), and Xbox Series X|S (Wireless Adapter and Bluetooth). Pick any of those in the Pad page's source picker and the tab appears.
DualSense and DualSense Edge do not surface this tab. Their trigger motors are written through DualSense's own effects channel — the Vibration mode on the Adaptive Triggers tab — not Microsoft's impulse-trigger protocol. The same Xbox impulse data that a game sends gets routed there automatically, so a DualSense playing Forza still buzzes both triggers.
Xbox 360 and most third-party pads have no trigger motors and the tab stays hidden.
The tab is per pad per slot. Every physical pad mapped to the slot keeps its own Impulse Triggers, Constant Trigger Force, and Audio Bass Trigger Rumble values. Pick a different device in the assigned-devices dropdown and the tab rebinds to that device.
For body-motor rumble, the FFB pipeline for wheels and sticks, and audio bass rumble on the body motors, see Force Feedback.
Game-driven passthrough. Forza, Gears, Halo, and any other game that writes Xbox impulse trigger motor commands reach the real trigger motors on the assigned pad. No setup. The card lets you scale the magnitude per trigger and swap the two trigger motors if a game writes them backwards.
| Setting | Range | Default | What it does |
|---|---|---|---|
| Left Trigger | 0–100% | 100% | Scales the left trigger motor magnitude. |
| Right Trigger | 0–100% | 100% | Scales the right trigger motor magnitude. |
| Swap left and right trigger motors | On/Off | Off | Flips which physical trigger motor receives the left vs. right signal. Use when the trigger pulses feel reversed. |
Test Left Trigger and Test Right Trigger fire a short pulse on the selected device only, so you can verify one pad without buzzing the others.
Real-time bars show the current magnitude on each trigger motor as games drive them. Use the bars to confirm a game is sending impulse data, to watch which trigger a game favors, and to tune the scale sliders while you see the result.
A per-device override that applies a continuous force to each trigger motor until you toggle off. Same override-with-resume behavior as Constant Force on the Force Feedback tab. Game-driven trigger force takes over while active and the constant force resumes when the game stops sending.
| Setting | Range | Default | What it does |
|---|---|---|---|
| Apply constant trigger force | On/Off | Off | Sends the configured force to the trigger motors. |
| Left Trigger | 0–100% | 0% | Steady force on the left trigger motor. |
| Right Trigger | 0–100% | 0% | Steady force on the right trigger motor. |
Persisted in PadSetting as ConstantTriggerForceEnabled, ConstantTriggerForceLeft, ConstantTriggerForceRight.
A separate audio-bass channel that drives the trigger motors instead of the body motors. Captures system audio via Windows loopback, isolates bass with a low-pass filter, and converts bass energy into trigger motor magnitude. Runs alongside the body-motor Audio Rumble on the Force Feedback tab. They share the loopback capture but keep independent sensitivity, cutoff, and per-motor scaling.
| Setting | Range | Default | What it does |
|---|---|---|---|
| Drive trigger motors from audio | On/Off | Off | Routes audio bass into the trigger motors on the selected device. |
| Sensitivity | 1.0–20.0 | 4.0 | Bass intensity multiplier for the trigger channel. |
| Bass Cutoff (Hz) | 20–200 Hz | 80 Hz | Low-pass cutoff for the trigger channel. |
| Left Trigger | 0–100% | 100% | Audio-driven level for the left trigger motor. |
| Right Trigger | 0–100% | 100% | Audio-driven level for the right trigger motor. |
The Level meter shows current bass energy on the trigger channel as audio plays. PadForge follows your default audio output device. Switch from speakers to headphones and you do not need to reconfigure anything.
| Pad family | Trigger motor delivery |
|---|---|
| Xbox One | Raw HID output report (game passthrough, constant force, audio bass) |
| Xbox Elite (Series 1 and Series 2) | Raw HID output report |
| Xbox Series X|S | Raw HID output report |
| DualSense / DualSense Edge | Routed through the dispatcher as Adaptive Trigger Vibration |
| Xbox 360, generic, most third-party pads | No trigger motors. Tab is hidden. |
DualSense pads receive impulse data as Adaptive Trigger Vibration mode. Plug a DualSense into the same virtual Xbox slot as an Xbox One+ pad and trigger pulses fire on both in step.
On Xbox One, Elite, and Series pads, PadForge writes the raw HID output report (9-byte Bluetooth or 13-byte GIP shape, per SDL3 HIDAPI's SDL_hidapi_xboxone.c) directly through the HID device interface. SDL3, XInput, WGI, and GameInput are bypassed entirely. PadForge is the sole writer of rumble and impulse-trigger data on those pads. SDL_RumbleJoystick and SDL_RumbleGamepadTriggers are not called. Same architectural pattern as the Sony sole-writer for DualSense and DualShock 4 effect packets. See Force Feedback for body-motor rumble routing.
Every slider has its own reset button. Each card has a Reset All.
- Impulse Triggers Reset All: both triggers 100%, Swap off.
- Constant Trigger Force Reset All: toggle off, left 0%, right 0%.
- Audio Bass Trigger Rumble Reset All: disabled, sensitivity 4.0, cutoff 80 Hz, both triggers 100%.
| Problem | Try this |
|---|---|
| No trigger rumble at all | Check the assigned device is an Xbox One / Elite / Series pad or a DualSense. Xbox 360 and most third-party pads have no trigger motors. |
| Trigger pulses feel reversed | Turn on Swap left and right trigger motors. |
| Audio-driven trigger rumble silent | Confirm audio plays through your default output device. Check the Level meter. Raise sensitivity if it barely moves. |
| Game-driven trigger rumble missing on DualSense | The DualSense receives impulse data as Adaptive Trigger Vibration. Confirm the slot is Xbox output and the same slot has an Xbox One+ pad or the game writes impulse triggers natively. |
| Trigger rumble too aggressive on audio | Lower the per-trigger scale or drop the bass cutoff. |
- Force Feedback: body-motor rumble, audio bass rumble on body motors, HID PID 1.0 FFB for wheels and sticks, Constant Force.
- Adaptive Triggers: DualSense trigger resistance, weapon, vibration, slope, and multi-position effects.
- Devices: check trigger-motor capability per device.
- Controller Slots: create and configure virtual controllers.