USB Power Management – How to Disable USB Autosuspend for Specific Device

power-managementpowertopusb

This is related to the issue discussed in Wireless mouse temporarily freezes (sleeps) on battery power.

Summary: the mouse freezes when operating on battery since it is autosuspended after a certain time and needs more time to wake up.

Disabling USB autosuspend for the mouse's receiver in PowerTOP is a temporary solution, but it does not survive a reboot.

How can I permanently disable the USB autosuspend for only one specific device?

A solution that does not involve installing additional packages is preferred (after all, I want to disable something), but it is not required. Removing PowerTOP (which seems to be a solution for some) is not what I want – I like PowerTOP…

And installing laptop-mode-tools to disable USB autosuspend altogether is not what I want, either, thus the new question.

Also: Will this affect the battery of my notebook? The Logitech unifying receiver for the mouse stays connected all the time, so if that prevents the autosuspend from happening for all devices that would probably be bad.

Best Answer

Ubuntu 16.04 (Xenial Xerus)

sudo apt install tlp
sudo lsusb

Find the USB device's input id - it should look like 1234:5678.

Edit the file sudo vi /etc/default/tlp and add your device's input ID to USB_BLACKLIST by adding the following line with your device's input id like so:

USB_BLACKLIST="1234:5678"

Ubuntu 14.04 (Trusty Tahr)

As mentioned here at hecticgeek.com, the trick consists of two parts:

Using lsusb to ascertain the device IDs of the USB devices you wish to disable autosuspend for.

And then adding them to AUTOSUSPEND_USBID_BLACKLIST in the /etc/laptop-mode/conf.d/runtime-pm.conf (usb-autosuspend.conf until Ubuntu 14.04) configuration file (details are well documented in there as well).

Related Question