libretro / RetroArch

Cross-platform, sophisticated frontend for the libretro API. Licensed GPLv3.
http://www.libretro.com
GNU General Public License v3.0
10.09k stars 1.81k forks source link

SteamDeck - Controllers cannot reconnect in RetroArch #14837

Open navarretejulian opened 1 year ago

navarretejulian commented 1 year ago

Description

After opening RetroArch on the steamdeck if the a controller gets disconnected for whatever reason or the console goes to sleep for a while, any controller with be unusable until RetroArch is restarted.

Expected behavior

To be able to disconnect and reconnect a controller in RetroArch without issue

Actual behavior

If controller gets disconnected while RetroArch is open, the only way to get it working again is to restart RetroArch

Steps to reproduce the bug

  1. Connect external controller or use steamdeck controller
  2. Start RetroArch
  3. Disconnect then reconnect controller or put console to sleep for a while
  4. Attempt to use any controller in RetroArch

Version/Commit

Environment information

gouchi commented 1 year ago

Please provide some log.

Thank you.

navarretejulian commented 1 year ago

[INFO] RetroArch 1.14.0 (Git ad89b0c655) [INFO] === Build ======================================= [INFO] CPU Model Name: AMD Custom APU 0405 [INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSE4 SSE4.2 AES AVX AVX2 [INFO] Built: Dec 13 2022 [INFO] Version: 1.14.0 [INFO] Git: ad89b0c655 [INFO] ================================================= [INFO] [Input]: Found input driver: "sdl2". [INFO] [Environ]: SET_PIXEL_FORMAT: RGB565. [INFO] [Core]: Version of libretro API: 1, Compiled against API: 1 [INFO] [Audio]: Set audio input rate to: 48000.00 Hz. [INFO] [Video]: Set video size to: fullscreen. [INFO] [Vulkan]: Vulkan dynamic library loaded. [INFO] [Vulkan]: Found vulkan context: "vk_x". [INFO] [Vulkan]: Detecting screen resolution: 1280x800. [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 = 1280, H = 800. [INFO] [X/Vulkan]: Requesting compositor bypass. [INFO] [X/Vulkan]: Using true fullscreen. [INFO] [Vulkan]: Found GPU at index 0: "AMD Custom GPU 0405 (RADV VANGOGH)". [INFO] [Vulkan]: Using GPU index 0. [INFO] [Vulkan]: Using semaphores for WSI acquire. [INFO] [Vulkan]: Using GPU: "AMD Custom GPU 0405 (RADV VANGOGH)". [INFO] [Vulkan]: Queue family 0 supports 1 sub-queues. [INFO] [Vulkan]: Got 3 swapchain images. [INFO] [Vulkan]: Using resolution 1280x800. [INFO] [Vulkan]: Using RGB565 format. [INFO] [Vulkan]: Loading stock shader. [INFO] [Joypad]: Found joypad driver: "sdl2". [INFO] [Autoconf]: Steam Virtual Gamepad configured in port 1. [INFO] [Autoconf]: Steam Virtual Gamepad configured in port 2. [INFO] [X11]: Suspending screensaver (X11, xdg-screensaver). [WARN] Could not suspend screen saver. [INFO] [Video]: Found display server: "x11". [INFO] [PulseAudio]: Requested 12288 bytes buffer, got 9216. [INFO] [Display]: Found display driver: "vulkan". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_history.lpl". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_music_history.lpl". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_image_history.lpl". [INFO] [Playlist]: Loading favorites file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_favorites.lpl".

[INFO] [X/Vulkan]: Resized fullscreen resolution to 1280x800. [INFO] [Autoconf]: Steam Virtual Gamepad disconnected from port 1. [INFO] [Config]: Saved new config to "/home/deck/.local/share/Steam/steamapps/common/RetroArch/retroarch.cfg".

[WARN] [SDL]: Failed to create rumble effect for joypad 1: Haptic: Error uploading effect to the device: No such device

[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]: Steam Virtual Gamepad disconnected from port 2. [INFO] [XINERAMA]: Xinerama version: 1.1. [INFO] [XINERAMA]: Xinerama screens: 1. [INFO] [XINERAMA]: Saved monitor #0. [INFO] [Video]: Average monitor Hz: 54.611982 Hz. (384.999 % frame time deviation, based on 2048 last samples).

navarretejulian commented 1 year ago

[INFO] RetroArch 1.14.0 (Git ad89b0c655) [INFO] === Build ======================================= [INFO] CPU Model Name: AMD Custom APU 0405 [INFO] Capabilities: MMX MMXEXT SSE SSE2 SSE3 SSE4 SSE4.2 AES AVX AVX2 [INFO] Built: Dec 13 2022 [INFO] Version: 1.14.0 [INFO] Git: ad89b0c655 [INFO] ================================================= [INFO] [Input]: Found input driver: "sdl2". [INFO] [Environ]: SET_PIXEL_FORMAT: RGB565. [INFO] [Core]: Version of libretro API: 1, Compiled against API: 1 [INFO] [Audio]: Set audio input rate to: 48000.00 Hz. [INFO] [Video]: Set video size to: fullscreen. [INFO] [Vulkan]: Vulkan dynamic library loaded. [INFO] [Vulkan]: Found vulkan context: "vk_x". [INFO] [Vulkan]: Detecting screen resolution: 1280x800. [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 = 1280, H = 800. [INFO] [X/Vulkan]: Requesting compositor bypass. [INFO] [X/Vulkan]: Using true fullscreen. [INFO] [Vulkan]: Found GPU at index 0: "AMD Custom GPU 0405 (RADV VANGOGH)". [INFO] [Vulkan]: Using GPU index 0. [INFO] [Vulkan]: Using semaphores for WSI acquire. [INFO] [Vulkan]: Using GPU: "AMD Custom GPU 0405 (RADV VANGOGH)". [INFO] [Vulkan]: Queue family 0 supports 1 sub-queues. [INFO] [Vulkan]: Got 3 swapchain images. [INFO] [Vulkan]: Using resolution 1280x800. [INFO] [Vulkan]: Using RGB565 format. [INFO] [Vulkan]: Loading stock shader. [INFO] [Joypad]: Found joypad driver: "sdl2". [INFO] [Autoconf]: Steam Virtual Gamepad configured in port 1. [INFO] [X11]: Suspending screensaver (X11, xdg-screensaver). [WARN] Could not suspend screen saver. [INFO] [Video]: Found display server: "x11". [INFO] [PulseAudio]: Requested 12288 bytes buffer, got 9216. [INFO] [Display]: Found display driver: "vulkan". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_history.lpl". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_music_history.lpl". [INFO] [Playlist]: Loading history file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_image_history.lpl". [INFO] [Playlist]: Loading favorites file: "/home/deck/.local/share/Steam/steamapps/common/RetroArch/content_favorites.lpl".

[INFO] [X/Vulkan]: Resized fullscreen resolution to 1280x800. [INFO] [Config]: Saved new config to "/home/deck/.local/share/Steam/steamapps/common/RetroArch/retroarch.cfg".

[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]: Steam Virtual Gamepad disconnected from port 1. [INFO] [XINERAMA]: Xinerama version: 1.1. [INFO] [XINERAMA]: Xinerama screens: 1. [INFO] [XINERAMA]: Saved monitor #0. [INFO] [Video]: Does not have enough samples for monitor refresh rate estimation. Requires to run for at least 4096 frames.

navarretejulian commented 1 year ago

In the first log I put the steamdeck to sleep. The steamdeck controller stopped working.

In the second log I disconnected and reconnected the external controller. It stopped working

martyfuhry commented 12 months ago

Looks like a duplicate issue of https://github.com/libretro/RetroArch/issues/14524.