Help needed: 2.4GHz wireless keyboard dongle goes to sleep until replugged

Hey, everyone! I’m dealing with a particularly sticky problem and just stumbled across this forum as I was looking for the answer.

I had a 2.4GHz wireless keyboard that was losing connectivity to my computer periodically. (I’m running Bazzite 42 — a gaming-focused fork of Fedora Universal Blue.) I got tired of it, so I decided to replace it. Now, the new keyboard is doing the same thing. When it happens, even turning the keyboard off and back on doesn’t work. The computer doesn’t receive input from the keyboard until I replug the receiver.

The keyboards are different brands. I’ve tried different ports — some USB 2 and some USB 3. I have a 2.4GHz wireless mouse connected to the same computer, and it doesn’t have problems so interference doesn’t seem to be the issue.

I’ve tried a whole bunch of stuff (listed below; buckle up if you want to wade through it all :sweat_smile:). I have no idea where to go from here. Does anyone have experience with an issue like this or have ideas what I might try?

  1. udev Power Settings for Dongle: Attempted to set custom power settings for the wireless dongle (Vendor: 0c45, Product: fefe) using /etc/udev/rules.d/ to set ATTR{power/control}="on". Verified this setting took.

  2. Global USB Autosuspend Kernel Parameter: Used rpm-ostree kargs --append-if-missing="usbcore.autosuspend=-1". This seemed to help by making it take longer for the dongle to go to sleep.

  3. powertop Diagnostics: Installed and used powertop to check and tune USB autosuspend settings, including for xHCI controllers.

  4. dmesg and journalctl Monitoring: Checked system logs for errors at the time of disconnection (found none related to the disconnect itself).

  5. Different USB Ports: Tried various USB 2.0 and 3.0 ports.

  6. Checked for TLP: Confirmed TLP is not installed/active.

  7. UEFI/BIOS Settings Review: Checked for USB power management settings (found none obviously related or helpful initially).

  8. Cross-Platform Test: Confirmed the keyboard/dongle works correctly on a Mac system. It does.

  9. udev Rule for xHCI Controller Power: Attempted to set ATTR{power/control}="on" for the Intel Raptor Lake xHCI controller via a PCI udev rule. I couldn’t get this rule to apply. When confirming the setting, it was always auto.

  10. Manual Setting of xHCI power/control: Manually set the xHCI controller’s power/control to on. (This worked to change the setting but did not solve the keyboard disconnection problem).

  11. PCIe ASPM Kernel Parameter: Tried rpm-ostree kargs --append-if-missing="pcie_aspm=off".

  12. Intel CPU C-State Kernel Parameter: Tried rpm-ostree kargs --append-if-missing="intel_idle.max_cstate=1".

  13. Software Unbind/Bind of USB Device: Attempted to unbind and rebind the USB dongle via sysfs commands. (This had no effect on restoring functionality).

  14. usbreset Utility: Compiled and used the usbreset utility on the specific USB device path (/dev/bus/usb/001/003). This successfully restored keyboard functionality, but it’s not really a practical long-term solution. I just wanted to see if anything would fix the problem aside from unplugging and replugging the receiver. This is the only thing that did.

:face_exhaling:

1 Like

You could be dealing with some Bazzite tweaks since it is made to be SteamdeckOS and installable on mobile devices. Try a live distro of a desktop specific OS (Fedora in this case) and see if you have the same issue.

1 Like

I haven’t tried Fedora yet, but I did have the same issue on CachyOS. I’ll give Fedora a shot and see what happens…

When in doubt. Use the root distros, not the derivatives. They have the most support. If you have issues with those, then, yeah, you have some hardware quirks to workaround.