Helpful Tips | System Requirements | Haptic Questions | About XInput wrapper | Third party files
DualFeel Gaming for Xinput Devices and Tech Hardware
Using XInput
Using XInput is as simple as calling the XInput functions as required. Using the XInput functions, you can retrieve controller state, get device IDs, and set controller rumble effects.
Multiple Controllers
The XInput API supports up to four controllers connected at any time. The XInput functions all require a User Index parameter that is passed in to identify the controller being set or queried. This ID will be in the range of 0-3 and is set automatically by XInput. The number corresponds to the port that the controller is plugged into, and is not modifiable.
Each controller displays which ID it is using by lighting up a quadrant on the "ring of light" in the center of the controller. A User Index value of 0 corresponds to the top-left quadrant; the numbering proceeds around the ring in clockwise order.
iFeelPixel Application (v2.6.3 and beyond) support multiple controllers:
- Enable Tactile Alerts on Xinput Devices
- Compatible with Microsoft #XBox 360/ONE/S/X/Elite Controllers (Native support)
- Compatible with Nintendo #Switch JoyCons/PRO Controllers HD Rumble (BetterJoy required)
- Compatible with Sony #DualSense PS5 Game Controllers haptic feedback (reWASD required)
- Compatible with Sony #DualShock PS4 Controllers (DS4Windows required, Sony PlayStation Now software, which will install correct drivers, for buttons and axis to work properly)
- reWASD is a must-have tool to use Nintendo Switch Pro controller on PC and others supported devices (ShareWare working with DirectInput/Xinput games).
Limited Support (haptic devices partially functional):
- Compatible with Valve #Steam Controllers (reWASD or GloSC Required, Setting Up GloSC as a Plug and Play Xbox Controller)
- SC Controller allows to setup, configure and use Steam/DS4/Similar Controller(s) without ever launching Steam. Haptic Feedback and in-game Rumble support. Emulates Xbox360 controller.
- Compatible with Nvidia #Shield Controllers (reWASD required for wireless capability, Geforce Experience Vibration working but only with USB wired, cannot read Input Actions and Input Axes outside of games)
- AutoOculusTouch is a library and script for AutoHotKey. It allows you to read the state of oculus controller devices (Touch, Remote or XBox controller) from within an AutoHotKey script.
Force Feedback
Force feedback is the generation of push or resistance in an input/output device - for example, by motors mounted in the base of a joystick. DirectInput/Xinput enables you to generate force-feedback effects for devices that have compatible drivers.
In addition to getting the state of the controller, you may also send vibration data to the controller to alter the feedback provided to the user of the controller. The controller contains two rumble motors that can be independently controlled.
Speed of the left motor
Valid values are in the range 0 to 65,535. Zero signifies no motor use; 65,535 signifies 100 percent motor use.
Speed of the right motor
Valid values are in the range 0 to 65,535. Zero signifies no motor use; 65,535 signifies 100 percent motor use.
Remarks
Not that the left motor is the low-frequency rumble motor, the right motor is the high-frequency rumble motor. The two motors are not the same, they do not always need to be set to the same amount, as they provide different effects.
Instructions
- Make sure your gamepad is plugged or connected before start iFeelPixel
- File > "Tactile Alerts (SteelSeries/XBOX)" must be checked
- Options > DualFeel Gaming > "Enable Tactile Alerts on Xinput Devices" must be checked
- You can modify the Duration of the Force Effect, the default value is 250 ms (recommended range : 100ms to 1000ms)
- You can modify the left motor speed and/or the right motor speed to generate differents tactile sensations, the default value is 65534 (~100%)
Latest Changes
- DualFeel Gaming: Adaptive Triggers button added for PS gaming controller
- DualFeel Gaming: Menu File > DualSense Support (adaptive triggers Mxater)
- DualFeel Gaming: Menu File > DualSense Firmware (Improve performances)
- DualFeel Gaming: Gamepad Profiler and Controller Settings buttons added
- DualFeel Gaming: Menu File > Main Settings
- DualFeel Gaming: Falcon Force checkbox added
- DualFeel Gaming: Inverse Z-Axis checkbox added
- DualFeel Game: Rumble Gaming Mouse (Rival 500/700/710, Xinput/Dinput mode)
- DualFeel Game: Gaming Controllers detection improved
- DualFeel Game: POV to Arrow (Down, Up, Left, Right) or POV to Pixel (1by1)
- DualFeel Game > File > Gaming Controllers > Show Xinput Device Data
- DualFeel Game > File > Gaming Controllers > Show Gamepad name in Systray
- DualFeel Game > File > Gaming Controllers > Enumerate Officials Controllers
- DualFeel supports PS5 DualSense Gaming Controllers (reWASD required)
- DualFeel send tactile effects if any Gaming Controllers buttons are pressed
- DualFeel includes a Tactile Orientation Navigation and Ranging (TONAR)
- TONAR Joystick Data renamed to "DualFeel Gaming"
- Echo Feedback renamed to "Echolocation system" (Based on screen size)
- Speed Effect renamed to "Speed Force" (100px: 500ms)
- Rumble POV/LR changed to "Rumble POV" (Independent Triggers)
- Always monitor Joystick renamed to "Always Monitor Gaming Controllers"
- File > Gaming Controllers > Xbox Halo, PS5 DualSense, Switch Pro
- Options > TouchSound Multimedia added
Issues
- DualFeel Fix: Rumble Left/Right Trigger button was not working (Dinput)
- DualFeel issue: Stop Rumble is not implemented in Gamesense SDK
Helpful Tips:
In most cases you will find that a gentle upward slope yields the best tactile sensations (as shown in the illustration above). Exact settings for each slider and range depend on the events of the app you are playing to and your computer's strength levels, so play with the settings until it feels good on your computer.
Many apps will allow you to adjust the strength of the controller independently from the effects strength. You may find that different apps feel better with different settings. So, it is recommended that you save your settings for each app you use.
If you are unable to adjust the sliders so that the tactile effects match the app, proceed to the Sensations Do Not Match Sound or No Sensations page in the troubleshooting section.
You may decide you only want to use the Button Effects feature of DualFeel Gaming in some cases. To do so, there are different ways:
- Uncheck "Rumble Joystick Buttons", "Rumble LR Triggers" and "Rumble LR Sticks"
- Or uncheck "Enable Tactile Alerts on Xinput and Dinput devices"
- Or uncheck the "Always Monitor Joystick" option and close the window
- Or uncheck iFeelPixel > File > Haptic Feedback > "Tactile Alerts (SteelSeries/Xbox)"
You can Turn ON/OFF Vibration for SteelSeries Rival mouse to feel only the gamepad vibration. If "Rumble Gaming Mouse" is checked, tactile effects will be sent to Rival 500/700/710.
In File Menu, you can Hide/Show Radar Animation when TONAR is enabled. The Intiface Game Haptics Router allows users to reroute rumble signals intended for gamepads or VR controllers to various robotic adult devices. You can bypass Gamepad Rumble to Gamepad.
ToolTips:
"Echo Feedback (Loop)" Send Tactile Effect (Active) and receive Tactile Echo (Passive)
"Echo Feedback (Rever)" Reverse Echo Radar Animation
"Force Effect" Effect Duration in milliseconds (Recommended range: 100 to 1000)
"Speed Force" Time by Distance, speed in milliseconds per 100 pixel (Default: 500ms)
"Dead Zone" Dead Zone Radius (Range: 1000 to 32000)
"Rumble Left Stick" Start Vibration if Left Stick is pressed
"Inverse XY-Axis" JoyMouse (JM) Inverse XY-Axis (Left Stick Button)
"Rumble Right Stick" Start Vibration if Right Stick is pressed
"Inverse XY-Axis" JM Inverse RU-Axis [Xinput] or RZ-Axis [Dinput] (Right Stick Button)
"Rumble POV" Start Vibration if POV is pressed
"Rumble LTrigger" Start Vibration if Left Trigger is pressed
"Rumble RTrigger" Start Vibration if Right Trigger is pressed
"POV to Arrow" POV to Arrow or Pov to Pixel for Mouse Emulator
"Rumble Buttons" Start Vibration if Buttons are pressed
"Individual Joystick Buttons" Button status and individual selection for vibration. Joystick Button multiplier (Cycle: 1-32768, 2-65536, 4-131072)
"Gamepad/Joystick image" Switch Input Mode (Xinput/Dinput)
"Device Index " Joystick Number (Range: 0 to 15 for Dinput, 0 to 3 for Xinput)
"Enable Tactile Alerts on Xinput Devices" Compatibility Xbox/Switch/DualShock/DualSense controllers (Native Support/BetterJoy required/DS4Windows required/reWASD required)
"Rumble All Devices" Rumble All Xinput/Dinput Devices connected (Max Devices: 4 Xinput, 1 Dinput, Pro Version required)
"Rumble Gaming Mouse" Rumble SteelSeries Rival Gaming Mouse (Rival 500/700/710)
"Start Rumble" Start Vibration Effect
"Stop Rumble" Stop Vibration Effect
"Show State" Stop Gamepads Vibration then show connection status
"Left Motor Speed" Reset Low Frequency Vibration
"Right Motor Speed" Reset High Frequency Vibration
"XBOX controller" Open Controller Settings or reWASD Gamepad Profiler
"Joystick to Mouse Emulator"
Menu/Start Button + RB: Enable/Disable Joystick To Mouse Emulator
Back/Select Button + LB: Enable/Disable Tactile Alerts on Xinput/Dinput Devices
Left Stick + LB: inverse XY-Axis
Right Stick + RB: inverse RU-Axis (Xinput) or inverse RZ-Axis (Dinput)
Input device Control cursor motion: (LStick=Fast | RStick=Medium | POV=Slow)
Xinput mouse buttons: (B4096=LClick | B8192=RClick | B512=Lock LClick | B16384=MClick) Dinput mouse buttons (B2=LClick | B4=RClick | B1=Lock LClick | B8=MClick
"Monitor Gaming Controllers" Gamepad Joystick will be always monitored
"Falcon Force" Send Falcon Force Feedback
"Inverse Z-Axis" JoyMouse inverse Z-Axis [Xinput] [Dinput]
System Requirements:
- Required processor speed depends on what other games or applications are running.
- Windows 7, 8, 10
- Memory* 4GB (Minimum), 8GB (Recommended)
- A compatible force feedback gaming device: Xbox 360/One/Elite controllers have been verified
as compatible.
- The latest drivers for your force feedback
device. (Please contact the manufacturer directly for updates.)
- DirectX version 9 and later
- Advanced users may disable vibration on Xbox pad. Just Download Xinput patched files then extract them in iFeelPixel app folder. Delete files if you want enable vibration again.
Note: Select the force feedback device you want to use with iFeelPixel, if your prefered device is not selected/connected you cannot feel rumble effects
Why should I use DualFeel Gaming?
DualFeel Gaming is a force feedback gaming utility to bring
force feedback to the vast majority of PC games, Video games and Audio games. With a force
feedback device, you can feel sensations in the media you own and
medias you will buy in the future for your PC. You no longer have to
guess which games offer force feedback, and you no longer have to
wait for force feedback patches for your favorite games. If you don't
like the native force feedback effects in a game, you now have the
option of using DualFeel Gaming effects instead.
How does DualFeel Gaming work?
iFeelPixel has two complementary features. First, TouchSound uses your sound output
data to create instant force feedback sensations for PC games, Video games and Audio games.
Second, DualFeel allows you to program force feedback effects into your
gaming device's buttons that can be felt on every button press.
What medias does DualFeel Gaming work with?
DualFeel Gaming works with PC games, Video games and Audio games. Whether you love sports,
first-person shooter, strategy, arcade, interactive movies, musical play or other multimedia games, DualFeel Gaming works for almost every PC game style.
Where can I download DualFeel Gaming?
DualFeel Gaming is bundled with iFeelPixel TactileWare since version 2.6.3. You can download the latest version here.
Is DualFeel Gaming as good as native force feedback effects?
Native force feedback effects built into games always has the
potential of being better than any sensations DualFeel Gaming
can offer. Some game developers do a great job of creating very
realistic force feedback effects, especially for driving and flight
simulations, and we recommend experiencing the native effects built
into a game whenever possible. However, only a few PC
games created today offer any force feedback sensations in game
play for SteelSeries Rival 500/700 gaming mouse/XBOX/Switch/DualShock/DualSense.
Are there any drawbacks to using it over native force feedback
effects?
iFeelPixel can potentially allow you to feel ALL pixels,
including background image and individual pictures, not just game interactions.
However, DualFeel Gaming allows you to adjust the tactile
generated sensations across multiples distinct frequency ranges in order
to customize profiles for each of your games. You also have the
option of disabling rumble-based effects and only using effects that
you've loaded into your button presses through the button loader feature. For more detailed information, please
refer to our help documentation.
How to connect Wellness Tech Hardware with iFeelPixel or Video Games?
The Intiface Game Haptics Router (GHR developed by Nonpolynomial) allows users to reroute rumble signals intended for gamepads or VR controllers to various wellness toys. Using this method, many aplications and video games can be turned into intimate interaction environments, with some even allowing online, multi-player interaction.
Notice: GHR does not support directly the SteelSeries Rival Gaming Mouse. This requested feature has been postponed by the main developer. So we've added ourself the Xinput support for Rival Gaming Mouse. iFeelPixel app v3 can monitor the Visualizer settings of Game Haptics Router. That's mean you can feel tactile feedback games like an Xbox controller! We recommend to use it with offline video games.
Game Haptics Router Instructions:
- 1. Click the Black Box to launch Game Haptics Router
- 2. Attach Game or App in Process List
- 3. Keep Visualizer/Settings open
- (Do not update/minimize GHR)
Just attach the GHR to iFeelPixel Process (Enable Xinput in DualFeel Gaming) or any video games to start feel hyper vibes:
You can change Vibration settings under Vizualizer tab:
Vibration Multiplier (x1-5) | Baseline vibration (0-100%) | Packet Timing Gap (In Milliseconds, 100ms default, make larger if haptic hardware is lagging) | Pass Gamepad Rumble to Gamepad
For other useful settings, see File > Haptic Game:
- Game Haptics Router (Launch GHR)
- Pixel Detection (Swith automatically the detection method)
- Disable 50% effects (Decrease the number of Tactile Effects sent to the mouse)
- Show Visualizer (Show or Hide the Visualizer in SteelSeries Rivality)
- Anti-minimizer (Keep GHR always visible and working)
Latest changes iFeelPixel version 4.0.0:
- SteelSeries: 4K UHD target percentage checkbox added
- SteelSeries: X/Y target percentage max value updated to 200% (was 100%)
- SteelSeries: Menu File > Haptic Games > Save target percentage
- SteelSeries: Menu Options > Windows Themes (Display)
About XInput wrapper:
- XInput wrapper for Game Maker by Jonne L.W. 'yellowsix'
- Adapted to be compatible with Visual Basic 6 by José Miguel (VB6Xinput.dll file)
- DualFeel Gaming released by iFeelPixel Association © Copyright 2002-2022
- Menu/Start Button + RB Button: Enable/Disable Joystick To Mouse Emulator
- Back/Select Button + LB: Enable/Disable Tactile Alerts on Xinput Devices
- DualSense Support Adaptative Triggers made by Mxater
|