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 ). 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?
-
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 setATTR{power/control}="on"
. Verified this setting took. -
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. -
powertop Diagnostics: Installed and used powertop to check and tune USB autosuspend settings, including for xHCI controllers.
-
dmesg and journalctl Monitoring: Checked system logs for errors at the time of disconnection (found none related to the disconnect itself).
-
Different USB Ports: Tried various USB 2.0 and 3.0 ports.
-
Checked for TLP: Confirmed TLP is not installed/active.
-
UEFI/BIOS Settings Review: Checked for USB power management settings (found none obviously related or helpful initially).
-
Cross-Platform Test: Confirmed the keyboard/dongle works correctly on a Mac system. It does.
-
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 alwaysauto
. -
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).
-
PCIe ASPM Kernel Parameter: Tried
rpm-ostree kargs --append-if-missing="pcie_aspm=off"
. -
Intel CPU C-State Kernel Parameter: Tried
rpm-ostree kargs --append-if-missing="intel_idle.max_cstate=1"
. -
Software Unbind/Bind of USB Device: Attempted to unbind and rebind the USB dongle via sysfs commands. (This had no effect on restoring functionality).
-
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.