Bazzite, Proton 10: Controllers Not Recognized After Sleep: a Fix
So as you may have noticed from our of my earlier reviews of the Epomaker Glyph Keyboard, I now have a ROG Ally (the 2023 version with the short battery life) that I purchased used, as I wanted to try out something more powerful than the Steam Deck. And it’s a pretty good machine, batteries issues aside (the default battery runs out pretty quickly). I installed Bazzite (that I tried before for the Xbox Ally X, which convinced me it was a viable option) and for the most part it worked as expected, apart from one big annoyance: putting the device to sleep while you are playing a game, taking a break, and hitting the power button to return from sleep results in the game showing up as you left it, but the controllers completely disconnected.
And there is nothing you can do to fix it in-game. The Steam Big Picture interface still works so you can go back into the device settings and all, but that won’t do any good to you. The only fix is to force-stop the game, and restart it, making you lose precious time and potentially some progress you did not get to save.
My first reaction was to point the finger at Bazzite: what the fuck were they doing that the Steam Deck had no issue with? Turns out, my reaction was completely misguided, it was not exactly Bazzite’s fault, but Proton 10.
Proton 10 and controller issues
Long story short: Proton 10 base uses cached XInput device state with no event-driven rescan on device change. So a re-enumerated controller after wake is never re-bound. This is a well known issue and many people are actually aware of it if you search around a little.
Controller hot-reconnection broken #7952
“A controller re-connection mid-game will not reconnect to the game until the game itself is restarted. The controller is still able to access and navigate steam Big Picture overlay upon re-connection, so it is definitely connected and inputs are being read/received.”
“I believe the issue to be within Proton, as reverting from proton experimental back to 9.0-2 fixes the behavior. This happens on all games from what I can tell.”
“If it disconnects (idle, low battery, whatever), the game doesn’t recognize it anymore once it’s connected again. Have to restart the whole game so it works again.”
Wireless controller stops working in current game after disconnect #10003
“When my wireless controller disconnects, either from putting it onto its charging dock or letting it automatically disconnect from inactivity, it no longer works in the currently running game after reconnecting. The only button that still works is the Home button that brings up the Steam overlay.”
“Hotfix/Experimental/11.0 all had the issue of the controller not coming back after reconnecting. 10.0-4 didn’t detect the controller at all.”
Fix landed Feb 2026, and was closed Apr 2026. Valve pointed it to a specific commit.
The root cause was posted in the thread (in October 2026), and it is still open in upstream:
“Two separate Wine bugs, both still present in upstream Wine master and in ValveSoftware/wine proton_11.0.”
“Bug 1: xinput never re-queues a read that was cancelled because its thread exited… The controller stays ‘enabled’, its state never changes, and its removal is never noticed.”
“Bug 2: the game is told about the pad before XInput can open it… After that pass the game never calls XInputGetStateEx again.”
The GitHub threads say idle/dock/power-off disconnect are causing the issue. On handhelds running Linux, system suspend does the same thing: the pad loses power and re-enumerates as a new HID instance on wake. That is the trigger for the same hotplug/reconnection bug, so the symptom looks like the controller dies after sleep.
The fix until now was to downgrade to Proton 9. But there’s a better fix nowadays, with the recent release of GE-Proton 11-12 from Glorious Eggroll.
GE Proton 11 to the Rescue
GE-Proton 11-12 sits on Valve bleeding-edge Wine (from 2026-10-31) and adds event-driven XInput rescan, HID report truncation, and GE’s own hotplug lifecycle rework. This means that the reconnected controller re-binds on resume. In hands, this is now resolved (at least in my experience on several games I tried on my handheld running Bazzite) with the recent release of GE Proton 11-12, by switching to it in the compatibility options.

This is something that Glorious Eggroll has been working on for several versions (for different controller issues).
Proton 11.0-1 (notes):
“Fixed controller hotplug not working for 8BitDo Ultimate 2C and other controllers that expose multiple HID devices.” Rebased on Wine 11.0.
Proton 11.0-2 (notes):
“Improved reliability of controller hotplug.” Plus suspend-specific lines: “Fixed Forza Horizon 6 auto-closing after system suspend/resume.” and “Fixed audio issues in DRAGON QUEST BUILDERS happening after device suspend.”
GE-Proton11-8 (notes):
“Improved DS4 speaker audio, Sony controller hotplugging… Addressed audio initialization races and expensive controller polling.”
GE-Proton11-12 (notes):
“XInput now rescans controllers only when a device could have changed. This replaces the Far Cry 4 and Witcher 3 rescan hacks.” Also “HID input reports are cut to their declared length.”
All good, now gaming on non-Steam Deck handhelds is becoming fun, and fully functional again.