2

I've been using Kubuntu for a few years now and had no trouble at all. Last week, I upgraded it to Kubuntu 12.04, and since then, have been having trouble with my optical mouse.

The mouse works fine as long as I am actively using the computer. If I pause for more than a short period of time (about a minute), the light on the mouse turns off, and it no longer responds to motion. If I click one of the mouse buttons, or push a key on the keyboard, the light turns back on and the mouse responds normally again.

The fact that the keyboard usage turns it back on seems to indicate that this is a power saving function. I have however disabled all power saving features, and continue to have this problem.

Any suggestions as to the cause/fix for this?

2 Answers 2

5

The solution almost works, in my case:

I have a logitech mouse.

I look for it in "lsusb"

change directory

cd /sys/bus/usb/devices

Look for your mouse sudo lsusb

in my case

Bus 001 Device 007: ID 046d:c016 Logitech, Inc. Optical Wheel Mouse

Ok, I get Bus 001 Device 007 and an ID of 046d.

Now I look for the right file

Since I changed to the righ directory, I just execute the following

for i in *
do
echo $i
cat $i/idVendor
echo "--"
cat $i/busnum
cat $i/devnum 
echo "++"
done | less

And look for the ID i retrieved before "046d"

1-3.3
046d
--
1
7
+++

the diretory is 1-3.3 ( in my case )

so

cd 1-3.3

Auto-switch off??? sure... just check the right directory

cd power

and

cat autosuspend_delay_ms

In my case the time to auto switch off / turn off of the led indicator ( the red light ) was 2000 ms about 2 seconds.

This part may be optimized, originally I proposed:

Now the trick is to change it, using a plain sudo gave some problems so I created a small script to do so, the content of the script was: ( just create it in the tmp )

echo $2 > $1

use vi, gedit, kate, gvim, bla bla bla

now change the permissions

chmod 755 your_script

and now launch it with a sudo

in my case i adjusted auto turn of to 10 minutes--> 60000 ms

sudo /tmp/your_script 60000 /sys/bus/usb/devices/1-3.3/power/autosuspend_delay_ms

But it can be done just by

echo 6000 | sudo tee /sys/bus/usb/devices/1-3.3/power/autosuspend_delay_ms

It seems that echo and sudo do not get along.

Thanx John!

And that did the trick for me

1
  • 1
    Rather than all of the script machinations, I'd suggest just: echo 6000 | sudo tee /sys/bus/usb/devices/1-3.3/power/autosuspend_delay_ms I'm assuming you got a permission error. That's something everybody runs into once in a while. Does that work better? If so, please edit your answer. Thanks. Jun 9, 2012 at 20:09
0

As explained here:

To disable autosuspend your USB device, first use lsusb as root to find out the bus number and device number of your usb device:

The command sudo lsusb should give an output like this:

Bus 005 Device 014: ID 04b3:4485 IBM Corp.
Bus 005 Device 001: ID 0000:0000
Bus 004 Device 009: ID 0483:2016 SGS Thomson Microelectronics Fingerprint Reader
Bus 004 Device 001: ID 0000:0000
Bus 002 Device 001: ID 0000:0000
Bus 003 Device 001: ID 0000:0000
Bus 001 Device 008: ID 04b3:310c IBM Corp.
Bus 001 Device 007: ID 050d:0121 Belkin Components F5D5050 100Mbps Ethernet
Bus 001 Device 001: ID 0000:0000

Then find your device's directory in /sys/bus/usb/devices/. Look in directories that are named with two numbers separated with a dash:

The command ls /sys/bus/usb/devices should give an output like this:

1-0:1.0  1-1  1-1:1.0  1-2  1-2:1.0  2-0:1.0  3-0:1.0  4-0:1.0  4-2
4-2:1.0  5-0:1.0  5-6  5-6:1.0  usb1  usb2  usb3  usb4  usb5  

Commands --> output:

cd /sys/bus/usb/devices && cat 1-1/busnum --> 1

cd /sys/bus/usb/devices && cat 1-1/devnum --> 8

cd /sys/bus/usb/devices && cat 1-2/busnum --> 1

cd /sys/bus/usb/devices && cat 1-2/devnum --> 7

We know the USB to ethernet device's directory is 1-2 because the device and bus numbers match the lsusb output. Now we can tell the kernel that it should not suspend this device automatically if it is not being used.

cd /sys/bus/usb/devices && sudo echo -1 > 1-2/power/autosuspend
2
  • Hmm - great answer - sadly it didn't seem to work. When I do an lsusb, it lists my mouse as: ` Bus 002 Device 006: ID 0461:4d15 Primax Electronics, Ltd Dell Optical Mouse ` So I tried (as root): echo -1 > /sys/bus/usb/devices/2-6/power/autosuspend And that didn't seem to fix it. I also tried: echo 3600000 > /sys/bus/usb/devices/2-6/power/autosuspend_delay_ms Which presumably would give me an hour of idle time before that happens. Alas, that didn't do it either.
    – Jacob
    May 3, 2012 at 21:04
  • 1
    cd /sys/bus/usb/devices && sudo echo -1 > 1-2/power/autosuspend may not work. Please use cd /sys/bus/usb/devices && sudo echo -1 > 1-2/power/autosuspend_delay_ms
    – aashish
    Aug 3, 2017 at 16:31

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .