Skip to content

Razer Mouse Dead at Boot (USB Autosuspend)

Symptom

Razer DeathAdder Essential (1532:0098) is not recognised at boot — cursor dead. Unplug + replug the USB cable and it works instantly. Returns dead after every reboot.

Root cause

USB autosuspend (kernel usbcore) cuts power / suspends the port before the device is bound at boot. The existing udev rule (/etc/udev/rules.d/99-razer-no-autosuspend.rules) fires on ACTION=="add" but races the suspend and loses, so it's unreliable.

System: CachyOS (Arch-based), Hyprland, limine bootloader, no TLP/powertop installed (so autosuspend comes from the kernel default, not a userspace daemon).

Fix (applied 2026-07-18)

Disable USB autosuspend kernel-wide via a limine drop-in config (persists across limine-update, doesn't touch the main config):

sudo mkdir -p /etc/limine-entry-tool.d
echo 'KERNEL_CMDLINE[default]+=usbcore.autosuspend=-1' | sudo tee /etc/limine-entry-tool.d/usb-autosuspend.conf
sudo limine-update

Reboot. Verify the param took effect:

cat /proc/cmdline | grep autosuspend
# expect: ... usbcore.autosuspend=-1

Verify the device stays awake

for d in /sys/bus/usb/devices/*; do
  [ -f "$d/idVendor" ] && grep -q 1532 "$d/idVendor" 2>/dev/null && echo "Razer: $d control=$(cat $d/power/control)"
done
# expect control=on

Notes

  • The old udev rule (99-razer-no-autosuspend.rules) was left in place as a harmless backup for when autosuspend is on. Delete it if you want a single source of truth.
  • usbcore.autosuspend=-1 disables autosuspend for ALL USB devices, not just the mouse. Fine for a desktop; on a laptop this costs a little idle power.
  • Bootloader is limine (not grub) — param goes in a limine drop-in, not /etc/default/grub.