Strong rumble is not working with sdl2 driver
Is there an existing issue for this?
- [x] This is a bug in RetroArch frontend
- [x] I have searched the existing issues
Description
if your test the rumble in PSX, the strong rumble not works (MGS options menu), tester with PS4 controll way wire and bluetooth.
Expected behavior
No response
Steps to reproduce the bug
run retroarch connect gamepad run psx game test the rumble
Version/Commit
1.20.0
Bisect Results
64c7faf11b
Present in the nightly version
Yes, this is reproduced in the nightly build
Platform & operating system
linux amd64 x86_64-linux-gnu debian 12 kernel 6.1
Affected Cores
pcsx rearmed, lrps2
Environment information
linux, vulkan, sdl2 v 2.30.11, controls config way sdl2.
Relevant log output
ninoh-fox@debian:~$ retroarch
[INFO] RetroArch 1.20.0 (Git 64c7faf11b)
[INFO] === Build =======================================
[INFO] CPU Model Name: 12th Gen Intel(R) Core(TM) i5-12400
[INFO] Funcionalidades: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2
[INFO] Version: 1.20.0
[INFO] Git: 64c7faf11b
[INFO] Built: Feb 12 2025
[INFO] =================================================
[INFO] [Input]: Found input driver: "linuxraw".
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[INFO] [Core]: Versión de la API libretro: 1, API usada en la compilación: 1
[INFO] [Core]: Geometry: 320x240, Aspect: 1.333, FPS: 75.00, Sample rate: 48000.00 Hz.
[INFO] [Video]: Set video size to: 1920x1080.
[INFO] [Vulkan]: Vulkan dynamic library loaded.
[INFO] [Vulkan]: Found vulkan context: "vk_x".
[INFO] [Vulkan]: Detecting screen resolution: 1920x1080.
[INFO] [X/Vulkan]: Window manager is Xfwm4.
[INFO] [X/Vulkan]: Using override-redirect workaround.
[INFO] [XINERAMA]: Xinerama version: 1.1.
[INFO] [XINERAMA]: Xinerama screens: 1.
[INFO] [X/Vulkan]: Using Xinerama on screen #0.
[INFO] [X/Vulkan]: X = 0, Y = 0, W = 1920, H = 1080.
[INFO] [X/Vulkan]: Using true fullscreen.
[INFO] [Vulkan]: Found GPU at index 0: "AMD Radeon RX 550 / 550 Series (RADV POLARIS12)".
[INFO] [Vulkan]: Found GPU at index 1: "Intel(R) UHD Graphics 730 (ADL-S GT1)".
[INFO] [Vulkan]: Found GPU at index 2: "llvmpipe (LLVM 19.1.7, 256 bits)".
[INFO] [Vulkan]: Using GPU index 0.
[INFO] [Vulkan]: Using fences for WSI acquire.
[INFO] [Vulkan]: Using GPU: "AMD Radeon RX 550 / 550 Series (RADV POLARIS12)".
[INFO] [Vulkan]: Queue family 0 supports 1 sub-queues.
[DEBUG] [Vulkan]: Swapchain supports present mode: IMMEDIATE.
[DEBUG] [Vulkan]: Swapchain supports present mode: MAILBOX.
[DEBUG] [Vulkan]: Swapchain supports present mode: FIFO.
[DEBUG] [Vulkan]: Swapchain supports present mode: FIFO_RELAXED.
[INFO] [Vulkan]: Got 3 swapchain images.
[INFO] [Vulkan]: Using resolution 1920x1080.
[INFO] [Vulkan]: Using RGB565 format.
[INFO] [Vulkan]: Loading stock shader.
[INFO] [Joypad]: Found joypad driver: "sdl2".
[INFO] [Autoconf]: No se ha configurado PS4 Controller (1356/2508), usando opción secundaria.
[INFO] [Video]: Found display server: "x11".
[INFO] [Audio]: Set audio input rate to: 48000.00 Hz.
[DEBUG] [PulseAudio]: Sink detected: alsa_output.pci-0000_00_1f.3.analog-stereo
[INFO] [PulseAudio]: Requested 24576 bytes buffer, got 18432.
[INFO] [Audio]: Started synchronous audio driver.
[INFO] [ALSA] Using ALSA version 1.2.8
[INFO] [Microphone]: Initialized microphone driver.
[INFO] [Display]: Found display driver: "vulkan".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_music_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_video_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_image_history.lpl".
[INFO] [Playlist]: Cargando favoritos: "/home/ninoh-fox/.config/retroarch/content_favorites.lpl".
[DEBUG] [Audio]: Started audio driver "pulse" (is_shutdown=false)
[DEBUG] [Audio]: Stopped audio driver "pulse"
[INFO] [Autoconf]: No se ha configurado PS4 Controller (1356/2508), usando opción secundaria.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[DEBUG] [Autoconf]: First unconfigured / unreserved player is 1
[DEBUG] [Autoconf]: Device "PS4 Controller" (54c:9cc) is not reserved for any player slot.
[DEBUG] [Autoconf]: First unconfigured / unreserved player is 1
[DEBUG] [Autoconf]: Device "PS4 Controller" (54c:9cc) is not reserved for any player slot.
[ERROR] [Thumbnail]: Download "/home/ninoh-fox/.config/retroarch/thumbnails/Sony - PlayStation/Named_Snaps/Metal Gear Solid (S) (Disc 1) [SLES-01734].png" failed: File not found.
[ERROR] [Thumbnail]: Download "/home/ninoh-fox/.config/retroarch/thumbnails/Sony - PlayStation/Named_Titles/Metal Gear Solid (S) (Disc 1) [SLES-01734].png" failed: File not found.
[ERROR] [Thumbnail]: Download "/home/ninoh-fox/.config/retroarch/thumbnails/Sony - PlayStation/Named_Boxarts/Metal Gear Solid (S) (Disc 1) [SLES-01734].png" failed: File not found.
[INFO] [Core]: Using content: "/mnt/data/ROMS/PS/Metal Gear Solid (S) (Disc 1) [SLES-01734].chd".
[INFO] [Core]: Content ran for a total of: 00 hours, 00 minutes, 00 seconds.
[INFO] [Core]: Unloading core..
[INFO] [Core]: Unloading core symbols..
[INFO] [Autoconf]: Se ha desconectado PS4 Controller del puerto 1.
[INFO] [XINERAMA]: Xinerama version: 1.1.
[INFO] [XINERAMA]: Xinerama screens: 1.
[INFO] [XINERAMA]: Saved monitor #0.
[DEBUG] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
[INFO] RetroArch 1.20.0 (Git 64c7faf11b)
[INFO] === Build =======================================
[INFO] CPU Model Name: 12th Gen Intel(R) Core(TM) i5-12400
[INFO] Funcionalidades: MMX MMXEXT SSE SSE2 SSE3 SSSE3 SSE4 SSE42 AES AVX AVX2
[INFO] Version: 1.20.0
[INFO] Git: 64c7faf11b
[INFO] Built: Feb 12 2025
[INFO] =================================================
[INFO] [Input]: Found input driver: "linuxraw".
[INFO] [Core]: Loading dynamic libretro core from: "/home/ninoh-fox/.config/retroarch/cores/pcsx_rearmed_libretro.so"
[INFO] [Overrides]: Redirigiendo archivo de guardado a "/home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed/Metal Gear Solid (S) (Disc 1) [SLES-01734].srm".
[INFO] [Overrides]: Redirigiendo guardado rápido a "/home/ninoh-fox/.config/retroarch/states/PCSX-ReARMed/Metal Gear Solid (S) (Disc 1) [SLES-01734].state".
[INFO] [Environ]: GET_LOG_INTERFACE.
[INFO] [Environ]: SET_CONTROLLER_INFO.
[DEBUG] Puerto 1:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 2:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 3:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 4:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 5:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 6:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 7:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[DEBUG] Puerto 8:
[DEBUG] "standard" (1)
[DEBUG] "analog" (261)
[DEBUG] "dualshock" (517)
[DEBUG] "negcon" (773)
[DEBUG] "guncon" (260)
[DEBUG] "konami gun" (516)
[DEBUG] "mouse" (258)
[INFO] [Environ]: GET_CORE_OPTIONS_VERSION.
[INFO] [Environ]: GET_LANGUAGE: "3".
[INFO] [Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_V2_INTL.
[DEBUG] [Environ]: RETRO_ENVIRONMENT_SET_CORE_OPTIONS_DISPLAY.
[INFO] [Remaps]: Core-specific remap found at "/home/ninoh-fox/.config/retroarch/config/remaps/PCSX-ReARMed/PCSX-ReARMed.rmp".
[INFO] [Environ]: GET_MESSAGE_INTERFACE_VERSION.
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_memcard2 = "enabled"
[libretro INFO] Memcard 2: enabled
[INFO] [Environ]: SAVE_DIRECTORY: "/home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed".
[libretro INFO] Use memcard 2: /home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed/pcsx-card2.mcd
[libretro INFO] Starting PCSX-ReARMed r24l-856-g650460ed (cc 12.2.0 64bit pic ssse3 lightrec gpu=neon)
[libretro INFO] build time: Feb 7 2025 11:24:54
[libretro INFO] 12 cpu core(s) detected
Regular mmap to address 0x10000000 succeeded
Regular mmap to address 0x10200000 succeeded
Regular mmap to address 0x10400000 succeeded
Regular mmap to address 0x10600000 succeeded
Regular mmap to address 0x2fc00000 succeeded
Regular mmap to address 0x10800000 succeeded
Memory map is sub-par. Emitted code will be slow.
Using 32-bit LUT
[libretro INFO] Loading memory card /home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed/pcsx-card2.mcd
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_bios = "auto"
[INFO] [Environ]: SYSTEM_DIRECTORY: "/home/ninoh-fox/.config/retroarch/system".
[libretro INFO] found BIOS file: scph101.bin
[INFO] [Environ]: GET_CAN_DUPE: true
[INFO] [Environ]: GET_DISK_CONTROL_INTERFACE_VERSION.
[INFO] [Environ]: SET_DISK_CONTROL_EXT_INTERFACE.
[INFO] [Environ]: GET_RUMBLE_INTERFACE.
[INFO] [Environ]: PERFORMANCE_LEVEL: 6.
[INFO] [Content]: Carga de contenido omitida. La implementación lo cargará por su cuenta.
[INFO] [Environ]: SET_INPUT_DESCRIPTORS:
[DEBUG] Puerto 1:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 2:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 3:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 4:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 5:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 6:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 7:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[DEBUG] Puerto 8:
[DEBUG] "Cruceta arriba" => "D-Pad Up"
[DEBUG] "Cruceta abajo" => "D-Pad Down"
[DEBUG] "Cruceta izquierda" => "D-Pad Left"
[DEBUG] "Cruceta derecha" => "D-Pad Right"
[DEBUG] "Botón B (abajo)" => "Cross"
[DEBUG] "Botón A (derecha)" => "Circle"
[DEBUG] "Botón Y (izquierda)" => "Square"
[DEBUG] "Botón X (arriba)" => "Triangle"
[DEBUG] "Botón Select" => "Select"
[DEBUG] "Botón Start" => "Start"
[DEBUG] "Botón L (lateral)" => "L1"
[DEBUG] "Botón R (lateral)" => "R1"
[DEBUG] "Botón L2 (gatillo)" => "L2"
[DEBUG] "Botón R2 (gatillo)" => "R2"
[DEBUG] "Botón L3 (pulsar analógico izq.)" => "L3"
[DEBUG] "Botón R3 (pulsar analógico der.)" => "R3"
[INFO] [Environ]: SET_PIXEL_FORMAT: RGB565.
[libretro INFO] RGB565 supported, using it
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_frameskip_type = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_frameskip_threshold = "33"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_frameskip_interval = "3"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_region = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_multitap = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_negcon_deadzone = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_negcon_response = "linear"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_analog_axis_modifier = "square"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_vibration = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_analog_combo = "l1+r1+select"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_dithering = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_neon_interlace_enable_v2 = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_neon_enhancement_enable = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_neon_enhancement_no_main = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_neon_enhancement_tex_adj_v2 = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_display_fps_v2 = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_cd_turbo = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_cd_readahead = "12"
[libretro INFO] cdrom precache: 12 buffers
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_drc = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_psxclock = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_nostalls = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_icache_emulation = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_exception_emulation = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_spu_reverb = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_spu_interpolation = "simple"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_spu_thread = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_noxadecoding = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_nocdaudio = "enabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_gpu_slow_llists = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_fractional_framerate = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_screen_centering = "auto"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_screen_centering_x = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_screen_centering_y = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_show_overscan = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_crosshair1 = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_crosshair2 = "disabled"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_konamigunadjustx = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_konamigunadjusty = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_gunconadjustx = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_gunconadjusty = "0"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_gunconadjustratiox = "1.00"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_gunconadjustratioy = "1.00"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_input_sensitivity = "1.00"
[DEBUG] [Environ]: GET_VARIABLE: pcsx_rearmed_show_bios_bootlogo = "enabled"
[libretro INFO] plugin: plugins/builtin_gpu
[libretro INFO] plugin: plugins/builtin_spu
[libretro INFO] plugin: plugins/builtin_pad
[libretro INFO] plugin: plugins/builtin_pad
[libretro INFO] Plugins loaded.
[libretro INFO] chd: TRACK:1 TYPE:MODE1_RAW SUBTYPE:NONE FRAMES:292615 PREGAP:0 PGTYPE:MODE1 PGSUB:NONE POSTGAP:0
[libretro INFO] Loaded CD Image: /mnt/data/ROMS/PS/Metal Gear Solid (S) (Disc 1) [SLES-01734].chd[+chd] (404154047 bytes).
[libretro INFO] Track 01 (DATA) - Start 00:02:00, Length 65:01:40
[libretro INFO] cdrom precache: 12 buffers
[libretro INFO] CD-ROM Label: sles01734
[libretro INFO] CD-ROM ID: sles01734
[libretro INFO] CD-ROM EXE Name: sles_017.34;1
[libretro INFO] BIOS: 19951204, 'CEX-3000/1001/1002 by K.S.', 'A'
[INFO] [Environ]: SET_MEMORY_MAPS.
[DEBUG] ndx flags ptr offset start select disconn len addrspace
[DEBUG] 001 M1A1bc 0x10000000 00000000 00000000 5FE00000 20000000 00200000
[DEBUG] 002 M1A1bc 0x2f800000 00000000 1F800000 7FFFFC00 00000000 00000400
[DEBUG] 003 M1A1bc 0x2fc00000 00000000 1FC00000 5FF80000 20000000 00080000
[INFO] [Environ]: SET_AUDIO_BUFFER_STATUS_CALLBACK.
[INFO] [Core]: Versión de la API libretro: 1, API usada en la compilación: 1
[INFO] [Core]: Geometry: 256x240, Aspect: 1.333, FPS: 50.00, Sample rate: 44100.00 Hz.
[INFO] [Video]: Set video size to: 1920x1080.
[INFO] [Vulkan]: Vulkan dynamic library loaded.
[INFO] [Vulkan]: Found vulkan context: "vk_x".
[INFO] [Vulkan]: Detecting screen resolution: 1920x1080.
[INFO] [X/Vulkan]: Window manager is Xfwm4.
[INFO] [X/Vulkan]: Using override-redirect workaround.
[INFO] [XINERAMA]: Xinerama version: 1.1.
[INFO] [XINERAMA]: Xinerama screens: 1.
[INFO] [X/Vulkan]: Using Xinerama on screen #0.
[INFO] [X/Vulkan]: X = 0, Y = 0, W = 1920, H = 1080.
[INFO] [X/Vulkan]: Using true fullscreen.
[INFO] [Vulkan]: Found GPU at index 0: "AMD Radeon RX 550 / 550 Series (RADV POLARIS12)".
[INFO] [Vulkan]: Found GPU at index 1: "Intel(R) UHD Graphics 730 (ADL-S GT1)".
[INFO] [Vulkan]: Found GPU at index 2: "llvmpipe (LLVM 19.1.7, 256 bits)".
[INFO] [Vulkan]: Using GPU index 0.
[INFO] [Vulkan]: Using fences for WSI acquire.
[INFO] [Vulkan]: Using GPU: "AMD Radeon RX 550 / 550 Series (RADV POLARIS12)".
[INFO] [Vulkan]: Queue family 0 supports 1 sub-queues.
[DEBUG] [Vulkan]: Swapchain supports present mode: IMMEDIATE.
[DEBUG] [Vulkan]: Swapchain supports present mode: MAILBOX.
[DEBUG] [Vulkan]: Swapchain supports present mode: FIFO.
[DEBUG] [Vulkan]: Swapchain supports present mode: FIFO_RELAXED.
[INFO] [Vulkan]: Got 3 swapchain images.
[INFO] [Vulkan]: Using resolution 1920x1080.
[INFO] [Vulkan]: Using RGB565 format.
[INFO] [Shaders]: Specific shader preset found at "/home/ninoh-fox/.config/retroarch/config/global.slangp".
[INFO] [slang]: Compiling shader: "/home/ninoh-fox/.config/retroarch/shaders/shaders_slang/crt/shaders/crt-easymode.slang".
[INFO] [slang]: Using render target format R8G8B8A8_UNORM for pass output #0.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[INFO] [Joypad]: Found joypad driver: "sdl2".
[INFO] [Autoconf]: No se ha configurado PS4 Controller (1356/2508), usando opción secundaria.
[INFO] [Video]: Found display server: "x11".
[INFO] [Audio]: Set audio input rate to: 44100.00 Hz.
[INFO] [Video]: Timings deviate too much. Will not adjust. (Target = 75.00 Hz, Game = 50.00 Hz)
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[DEBUG] [PulseAudio]: Sink detected: alsa_output.pci-0000_00_1f.3.analog-stereo
[INFO] [PulseAudio]: Requested 24576 bytes buffer, got 18432.
[INFO] [Audio]: Started synchronous audio driver.
[INFO] [ALSA] Using ALSA version 1.2.8
[INFO] [Microphone]: Initialized microphone driver.
[INFO] [Display]: Found display driver: "vulkan".
[libretro INFO] port: 1 device: dualshock
[libretro INFO] port: 2 device: dualshock
[libretro INFO] port: 3 device: standard
[libretro INFO] port: 4 device: standard
[libretro INFO] port: 5 device: standard
[libretro INFO] port: 6 device: standard
[libretro INFO] port: 7 device: standard
[libretro INFO] port: 8 device: standard
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_music_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_video_history.lpl".
[INFO] [Playlist]: Cargando historial: "/home/ninoh-fox/.config/retroarch/content_image_history.lpl".
[INFO] [Playlist]: Cargando favoritos: "/home/ninoh-fox/.config/retroarch/content_favorites.lpl".
[DEBUG] [Audio]: Started audio driver "pulse" (is_shutdown=false)
[DEBUG] [Autoconf]: First unconfigured / unreserved player is 1
[DEBUG] [Autoconf]: Device "PS4 Controller" (54c:9cc) is not reserved for any player slot.
[INFO] [Environ]: RETRO_ENVIRONMENT_SET_MINIMUM_AUDIO_LATENCY.
[INFO] [Environ]: SET_GEOMETRY.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[INFO] [Environ]: SET_GEOMETRY: 640x480, Aspect: 1.333.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[INFO] [Environ]: SET_GEOMETRY: 640x240, Aspect: 1.333.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[INFO] [Environ]: SET_GEOMETRY: 256x240, Aspect: 1.333.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[libretro INFO] Auto-enabling dualshock analog mode.
[libretro INFO] Auto-enabling dualshock analog mode.
[INFO] [Environ]: SET_GEOMETRY: 320x256, Aspect: 1.333.
[INFO] [X/Vulkan]: Resized fullscreen resolution to 1920x1080.
[INFO] [Vulkan filter chain]: Creating framebuffer 1920x1080 (max 1 level(s)).
[DEBUG] [Audio]: Stopped audio driver "pulse"
[INFO] [Config]: Se ha guardado una nueva configuración en "/home/ninoh-fox/.config/retroarch/retroarch.cfg".
[DEBUG] [Audio]: Started audio driver "pulse" (is_shutdown=true)
[DEBUG] [Audio]: Started audio driver "pulse" (is_shutdown=true)
[INFO] [SRAM]: Guardando tipo de RAM #0 en "/home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed/Metal Gear Solid (S) (Disc 1) [SLES-01734].srm".
[INFO] [SRAM]: Se han guardado los datos en "/home/ninoh-fox/.config/retroarch/saves/PCSX-ReARMed/Metal Gear Solid (S) (Disc 1) [SLES-01734].srm".
[INFO] [Core]: Content ran for a total of: 00 hours, 00 minutes, 54 seconds.
[INFO] [Runtime]: Saving runtime log file: "/home/ninoh-fox/.config/retroarch/playlists/logs/PCSX-ReARMed/Metal Gear Solid (S) (Disc 1) [SLES-01734].lrtl".
[INFO] [Core]: Unloading game..
[DEBUG] [Audio]: Stopped audio driver "pulse"
[INFO] [Core]: Unloading core..
Lightrec RAM usage: IR 506 KiB, CODE 1353 KiB, MIPS 288 KiB, TOTAL 4852 KiB, avg. IPI 4.693836
[INFO] [Core]: Unloading core symbols..
[INFO] [Core]: Saved core options file to "/home/ninoh-fox/.config/retroarch/config/PCSX-ReARMed/PCSX-ReARMed.opt".
[INFO] [Autoconf]: Se ha desconectado PS4 Controller del puerto 1.
[INFO] [XINERAMA]: Xinerama version: 1.1.
[INFO] [XINERAMA]: Xinerama screens: 1.
[INFO] [XINERAMA]: Saved monitor #0.
[DEBUG] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.
Hi,
Can you confirm at least it is working using Libretro test core pressing Select (weak) or Start (strong) ?
Thank you.
I'm away for a few days, I'll let you know as soon as I can.
Hi, I am make the test and same problem, SELECT active weak motor, Start not works.
Thank you for the test. Did you try with udev controller driver ? It seems it does not work with sdl2 controller driver.
If it is the case, we should rename the issue title to something Strong rumble is not working with sdl2 driver.
Yes, it seems to work with UDEV, but I lose the PS button and keyboard inputs. However, the vibration motors work with the corresponding button.
Yes, it seems to work with UDEV, but I lose the PS button and keyboard inputs
For now, for the keyboard you will have to use X for input driver.
There might be something to check in sdl_joypad_set_rumble ?
For macOS, there is no udev driver, the sdl2 controller driver introduced with RetroArch 1.20.0 is the only one to support vibration with the PS3 controller, and on macOS only the small motor works as well
reposting from another issue I opened:
This is easy to test with the PS1 game Metal Gear Solid which has an options screen for testing each motor independently:
To test with Metal Gear Solid (USA, disc 1) (using PCSX ReARMed):
- launch the game, then go to Quick Menu > Controls > Port 1 Controls and set the Device Type to
dualshock, then save a Core Remap File - go to Quick Menu > Close Content, then relaunch the game
- at the MGS main screen, select OPTION and press Circle, you should see the VIBRATION and VIBRATION TEST options like in my screenshot, if not the controller was not correctly regonized as a DualShock controller
- scroll to the VIBRATION TEST option and hold D-pad left, the small motor will vibrate
- hold D-pad right, nothing happens (the large motor should vibrate)
On macOS mfi also supports vibration, just doesn't support as many controllers as sdl2. The mfi driver is better, if it works.
I did some more tests with different RetroArch cores with a USB-wired official PS3 controller on macOS 11 using the sdl2 controller driver. On the standalone version of these cores (DuckStation, PCSX2, Flycast, Dolphin) both motors work correctly using SDL2
psx
Beetle PSX HW - large motor only PCSX ReARMed - small motor only SwanStation - small motor only
ps2
LRPS2 - small motor only
dreamcast
Flycast - large motor only
n64
Mupen64Plus-Next - mostly large motor, sometimes the small motor (the core might be sending different frequency/intensity vibrations to different motors) ParaLLel N64 - large motor only
gamecube/wii
Dolphin - large motor works correctly, small motor sometimes only spins for half a second or not at all (like it's only getting a very low current - maybe the same reason as Mupen64Plus-Next)
gbc (Pokémon Pinball)
Gambatte - large motor only mGBA - small motor only
after more testing with Gambatte - setting Core Options > Controller Rumble Strength to:
0-2 = no vibration 3-4 = large motor, strong vibration 5 = large motor, weak vibration 6 = large motor, medium vibration 7-10 = large motor, strong vibration
at all Rumble Strength settings, the small motor would make maybe half a spin in 5% of the tests
it seems the issue would be with RetroArch's SDL2 implementation. Maybe upgrading to SDL3 would fix these issues, although they don't occur with other standalone SDL2 emulators
more tests in RetroArch main settings > Input > Haptic Feedback/Vibration > Vibration Strength
with Gambatte core (Core Options > Controller Rumble Strength set to 10/maximum)
0-25% = no vibration 30-50% = large motor, strong vibration 55% = large motor, weak vibration 60% = large motor, medium vibration 65-100% = large motor, strong vibration, gets stronger with earch % increase
with mGBA core
0% = no vibration 5-100% = small motor, same vibration strength
with Beetle PSX HW core
0-25% = no vibration 30-100% = large motor only, from weak to strong, increasing vibration strength with each % increase
I made a feature request to have confiugrable options for dual-motor controllers: https://github.com/libretro/RetroArch/issues/18096