How do I enable force feedback / rumble?
-
I am trying to get force feedback/rumble working with Retropie games for my Dualshock 3 controller. So far I tested Spyro 2 (PSX) and Mario 64 (N64), none of which show any vibration effects.
The retropie packages have all been updated and the Retropie-Setup commit is
commit 87839ed171dc3fa99adef80869fa152e19452091 (HEAD -> master, origin/master, origin/HEAD) Author: Jools Wills <buzz@exotica.org.uk> Date: Tue Sep 8 05:26:29 2020 +0100
I am not exactly sure how to test whether ff/rumble is generally working. So,
fftest /dev/input/by-id/usb-*event-joystick
gives the following results (no idea, how to interpret them):
Force feedback test program. HOLD FIRMLY YOUR WHEEL OR JOYSTICK TO PREVENT DAMAGES Device /dev/input/by-id/usb-Sony_PLAYSTATION_R_3_Controller-event-joystick opened Features: * Absolute axes: X, Y, Z, RX, RY, RZ, [3F 00 00 00 00 00 00 00 ] * Relative axes: [00 00 ] * Force feedback effects types: Periodic, Rumble, Gain, Force feedback periodic effects: Square, Triangle, Sine, [00 00 00 00 00 00 00 00 00 00 03 07 01 00 00 00 ] * Number of simultaneous effects: 16 Setting master gain to 75% ... OK Uploading effect #0 (Periodic sinusoidal) ... OK (id 0) Uploading effect #1 (Constant) ... Error: Invalid argument Uploading effect #2 (Spring) ... Error: Invalid argument Uploading effect #3 (Damper) ... Error: Invalid argument Uploading effect #4 (Strong rumble, with heavy motor) ... OK (id 1) Uploading effect #5 (Weak rumble, with light motor) ... OK (id 2) Enter effect number, -1 to exit
I configured the following things:
- Retroarch => Settings => Input => Haptic Feedback/Vibration => Enable Device Vibration: ON
- mupen64plus.cfg => Rumble Pak:
# Controller configuration mode: 0=Fully Manual, 1=Auto with named SDL Device, 2=Fully automatic mode = 0 # Specifies which joystick is bound to this controller: -1=No joystick, 0 or more= SDL Joystick number device = 0 # SDL joystick name (or Keyboard) name = "Sony PLAYSTATION(R)3 Controller" # Specifies which type of expansion pak is in the controller: 1=None, 2=Mem pak, 4=Transfer pak, 5=Rumble pak plugin = "5"
Also, I found some old posts which indicated that the Retropie Kernel might not be setup for controller vibration support. Could this be it?
-
@soda-inc I can't speak to the Playstation games, but I got rumble to work very easily with N64 games without having to configure anything using my Logitech F710 controller.
NOTE:
Mario 64 does not support rumble pak features. It was a N64 launch title and it wasn't until Star Fox 64 came out that games supported rumble pak.
EDIT:
Apparently there was a re-released version of Mario 64 in Japan that did support Rumble. My copy is the North America ROM so I can't verify this works.From the Docs page for the N64 controls:
https://retropie.org.uk/docs/Nintendo-64/Hotkeys and special buttons
Key ....................................DescriptionLeft Thumb .......................Enable memory expansion pak.
Right Thumb.....................Enable rumble expansion pak.If you have access to another N64 game that definitely has rumble pak support you could try that.
-
Ah, that is good to know! So I just checked the Japanese version and after using the "right thumb" special button, the rumble feature was actually activated!
Thank you very much for this insight!
Also, the manual activation in
mupen64plus.cfg
was unnecessary. -
@soda-inc said in How do I enable force feedback / rumble?:
Also, I found some old posts which indicated that the Retropie Kernel might not be setup for controller vibration support.
There's no
RetroPie kernel
and there's no special configuration that disables controller vibration support (as you've noticed with N64).When starting a PS1 game, check if you have 'Enable Vibrarion' in the Core settings and also set the Pad 1 Type to Dualshock.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.