Repository navigation
Not functional after laptop resumes from sleep #464
Copy link
Copy link
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
After resuming my laptop from sleep, StreamController is still open, but there is an internal error which prevents the Stream Deck itself from working. I have to close the app and open again.
To Reproduce
Steps to reproduce the behavior:
- Sleep the laptop.
- Resume.
- Stream Deck is empty/blank.
- Close app.
- Open app, it works.
Expected behavior
Should work after resume.
Screenshots
N/A
Additional context
- Distribution: Bazzite (Fedora 42)
- Desktop: Gnome
- Version: 1.5.0-beta.11 (Flatpak)
2025-07-31 21:23:40.736 | ERROR | src.backend.DeckManagement.DeckManager:on_resumed:252 - An error has been caught in function 'on_resumed', process 'MainProcess' (3), thread 'DetectResumeThread' (140220339054272):
Traceback (most recent call last):
File "/usr/lib/python3.12/threading.py", line 1032, in _bootstrap
self._bootstrap_inner()
│ └ <function Thread._bootstrap_inner at 0x7f8819426660>
└ <DetectResumeThread(DetectResumeThread, started 140220339054272)>
File "/usr/lib/python3.12/threading.py", line 1075, in _bootstrap_inner
self.run()
│ └ <function DetectResumeThread.run at 0x7f87d6b31b20>
└ <DetectResumeThread(DetectResumeThread, started 140220339054272)>
File "/app/bin/StreamController/src/backend/DeckManagement/DeckManager.py", line 299, in run
self.deck_manager.on_resumed()
│ │ └ <function DeckManager.on_resumed at 0x7f87d6b31800>
│ └ <src.backend.DeckManagement.DeckManager.DeckManager object at 0x7f87d4406a20>
└ <DetectResumeThread(DetectResumeThread, started 140220339054272)>
> File "/app/bin/StreamController/src/backend/DeckManagement/DeckManager.py", line 252, in on_resumed
deck_controller.update_all_inputs()
│ └ <function DeckController.update_all_inputs at 0x7f87d7d1a020>
└ <src.backend.DeckManagement.DeckController.DeckController object at 0x7f8804f49010>
File "/app/bin/StreamController/src/backend/DeckManagement/DeckController.py", line 433, in update_all_inputs
i.update()
│ └ <function ControllerKey.update at 0x7f87d74c0b80>
└ <src.backend.DeckManagement.DeckController.ControllerKey object at 0x7f8804f6ffe0>
File "/app/bin/StreamController/src/backend/DeckManagement/DeckController.py", line 1903, in update
rgb_image = image.convert("RGB").rotate(self.deck_controller.deck.get_rotation())
│ │ │ │ └ <StreamDeck.Devices.StreamDeckOriginalV2.StreamDeckOriginalV2 object at 0x7f8804f54d10>
│ │ │ └ <src.backend.DeckManagement.DeckController.DeckController object at 0x7f8804f49010>
│ │ └ <src.backend.DeckManagement.DeckController.ControllerKey object at 0x7f8804f6ffe0>
│ └ <function Image.convert at 0x7f880c16f240>
└ <PIL.Image.Image image mode=RGBA size=72x72 at 0x7F8804D61C10>
AttributeError: 'StreamDeckOriginalV2' object has no attribute 'get_rotation'
2025-07-31 21:23:40.766 | INFO | src.backend.DeckManagement.DeckManager:on_resumed:244 - Resume from suspend detected, reloading decks...
2025-07-31 21:23:42.768 | INFO | src.backend.DeckManagement.DeckManager:on_resumed:262 - Removing deck
2025-07-31 21:25:27.408 | INFO | src.backend.LockScreenManager.LockScreenManager:lock:63 - Locking screen: False
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
- StatusShow more project fieldsNo status
Activity
ImDevinC commentedon Aug 2, 2025
A few things:
badnetmask commentedon Aug 4, 2025
Strangely enough this time I did not get the python backtrace, but it did not work anyway. I can try again later to see if the backtrace is intermittent.
logs.log
badnetmask commentedon Aug 6, 2025
It appears like in some weird situations I end up with multiple processes, and the Stream Deck works in these cases. Not sure where to go from here...
ncareau commentedon Nov 28, 2025
I have the same issue, on Fedora 43.
Core447 commentedon Dec 30, 2025
Not at my computer right now, but somewhere in the settings there should be an option called something like "Beta-resume mode". Can you try if it works when you change this setting? Please restart the app after changing this setting
getjump commentedon Jan 7, 2026
Feel free to check if the issue persists on my PR #526
Also make sure you have applied udev.rules - not sure if it is actually is required or fix from my PR is enough.
fix: wrap replacement deck in BetterDeck on resume from sleep
fix: wrap replacement deck in BetterDeck on resume from sleep (#565)