Disabling USB Auto-Suspend on Ubuntu

These days Linux supports a lot of devices. However, occasionally you will find a device that works but only for a while, requiring a reboot to work again. This is often due to the device itself not behaving according to the USB standard, and that's more often than not caused by misbehaving USB suspend.

The proper way of fixing this would be either a workaround in the driver or, God forbid, a fix in the device's firmware. But quite often nobody does anything, so what's left is to do the improper. And the easiest improper fix is to disable USB autosuspend.

For the command line, just add usbcore.autosuspend=-1 to GRUB_CMDLINE_LINUX_DEFAULT:

sudo sed -i 's/GRUB_CMDLINE_LINUX_DEFAULT="[a-z ]*/& usbcore.autosuspend=-1/' \
sudo update-grub2

Once the system is up, you can check that the value is indeed -1 (disabled).

cat /sys/module/usbcore/parameters/autosuspend

3 thoughts to “Disabling USB Auto-Suspend on Ubuntu”

  1. Thanks Josip. This is the only solution to Apple Magic Trackpad Series 1 disconnecting for several seconds every few minutes or so, that worked with my Intel NUC running Ubuntu 22.04. Typed in exact script and after reboot, bingo, Auto-Suspend shows up as -1 and problem now solved. Even eight years after this solution was published it still works many thanks Rob!

Leave a Reply

Your email address will not be published. Required fields are marked *