Pourquoi ma souris USB est suspendue après 3 secondes d'inactivité?

13

La LED inférieure de la souris s'éteint au bout de 3 secondes après la connexion, les mouvements du curseur et l'arrêt de la molette. Appuyez sur n'importe quel bouton, reconnectez ou réinitialisez le périphérique USB pour le reprendre pendant 3 secondes supplémentaires (lorsqu'il est repris en appuyant sur le bouton, cet événement ne passe pas à X).

Cela se produit lorsque vous utilisez l'un des ports USB. Cette souris fonctionne bien avec d'autres ordinateurs avec Linux. Cela fonctionnait bien avant.

Pourquoi cela peut-il arriver? Comment le réparer?

Mise à jour : cela ne se produit que si l'ordinateur portable est sur batterie.

Réponse : cela est dû à l'économie d'énergie effectuée par les outils en mode ordinateur portable. Pour désactiver temporairement l’économie d’énergie, on peut utiliser

for i in /sys/bus/usb/devices/*/power/control; do echo on > $i; done
Vi.
la source
Cela ne se produit que sur Linux ou d'autres systèmes d'exploitation?
soandos
Je viens de l'observer. Le redémarrage peut le réparer, mais je veux savoir pourquoi cela peut se produire.
Vi.
Ma souris sans fil sans nom fait ça. Peu importe que mon ordinateur soit branché ou sur batterie. Pour aggraver les choses, aucune activité ne "suspendra" la souris une fois qu'elle est coincée, me forçant à retirer et réinsérer les piles toutes les 3 à 5 secondes. Morceau inutile de s ** t.
Emanuel Landeholm
@Vi .: Je propose de changer la réponse acceptée à celle d'OscarGarcia, car la sienne est la plus précise, répond en fait à vos deux questions et n'a aucun effet secondaire comme la désactivation de la suspension automatique USB ...
Martin Pecka

Réponses:

5

C'est une très vieille question, liée au mode ordinateur portable, mais je posterai ma solution:

Dans Ubuntu 14.04, j'ai modifié /etc/laptop-mode/conf.d/usb-autosuspend.confet modifié ces lignes en liste noire usbhid:

# The list of USB driver types that should not use autosuspend.  The driver
# type is given by "DRIVER=..." in a USB device's uevent file.
# Example: AUTOSUSPEND_USBID_BLACKLIST="usbhid usb-storage"
## Old value: AUTOSUSPEND_USBTYPE_BLACKLIST=""
AUTOSUSPEND_USBTYPE_BLACKLIST="usbhid"

Dans Ubuntu 12.04 je dois éditer /etc/laptop-mode/conf.d/runtime-pm.confet changer ces lignes en liste noire usbhid:

# The list of device driver types that should use autosuspend.  The driver
# type is given by "DRIVER=..." in a device's uevent file.
# Example: AUTOSUSPEND_DEVTYPE_WHITELIST="usbhid usb-storage"
## Old value: AUTOSUSPEND_RUNTIME_DEVTYPE_WHITELIST=""
AUTOSUSPEND_RUNTIME_DEVTYPE_WHITELIST="usbhid"

Vous pouvez également blacklister usb-storage! et vous pouvez également blacklister l'appareil par ID ( AUTOSUSPEND_RUNTIME_DEVID_WHITELISTdans Ubuntu 12.04 ou AUTOSUSPEND_USBID_BLACKLISTdans Ubuntu 14.04).

Ensuite, vous devrez redémarrer le mode ordinateur portable pour que les modifications prennent effet:

sudo /etc/init.d/laptop-mode restart

Et puis rebranchez la souris. La souris ne suspendra plus.

Cela fonctionne pour moi au travail (Ubuntu 12.04) et à la maison (Ubuntu 14.04).

J'espère que cela aide :)

OscarGarcia
la source
Cette réponse a résolu mon problème dans Debian. J'ai mis sur liste noire usbhidet psmouseet après avoir redémarré le laptop-modeservice et rebranché ma souris, le problème est résolu
Sharuzzaman Ahmat Raslan
Cela devrait vraiment être la réponse acceptée, car elle ne met sur liste noire que les appareils HID en suspension automatique, mais vous laisse la possibilité de suspendre automatiquement tous les autres appareils.
Martin Pecka
Pour cette raison, je suggère AUTOSUSPEND_USBID_BLACKLISTaussi.
OscarGarcia
Ne fonctionne pas pour moi sur Ubuntu 14.04, Lenovo Thinkpad :(
Thomas
@Thomas, laquelle des solutions ne fonctionne pas pour vous? Pourriez-vous partager l'id lsusb ou le module, type de souris, ect? S'il utilise un adaptateur sans fil, il est peut-être nécessaire de le mettre sur liste noire aussi! Edit: avez-vous laptop-toolsinstallé?
OscarGarcia
11

J'ai la solution parfaite!

Si

for i in /sys/bus/usb/devices/*/power/control; do echo on > $i; done

fonctionne pour vous, mais une seule fois, modifiez /etc/laptop-mode/conf.d/usb-autosuspend.confpour remplacer:

CONTROL_USB_AUTOSUSPEND="auto"

par

CONTROL_USB_AUTOSUSPEND=0

Ça marche pour moi.

Leo
la source
Mec, tu as vraiment dit quelque chose qui a du sens. Merci!
BrunoJCM
Je ne savais pas que j'avais installé le package 'laptop-mode-tools'. Cela peut aussi expliquer d'autres problèmes avec l'indicateur de scalling cpu que j'avais.
BrunoJCM
seule la première commande (pour ...) a fonctionné. J'ai tout essayé, même en arrêtant le service en mode ordinateur portable et cela n'a pas changé. Merci
lepe
Le fichier /etc/laptop-mode/conf.d/usb-autosuspend.confn'existe pas pour moi. Dois-je le créer?
Simon Baars
0

Il s'agit d'un comportement normal de toutes les souris après avoir obtenu le sans fil, pour économiser la batterie. vous pouvez l'ajuster si un logiciel tiers est inclus dans la boîte.

sieste
la source
2
Il ne dit pas s'il s'agit d'une souris sans fil.
Renan
1
Il s'agit d'une souris USB filaire.
Vi.
D'accord. Je viens de regarder ma souris USB filaire et elle devient inactive après 5 secondes, et c'est également pour économiser de l'énergie, car vous pouvez l'utiliser avec un ordinateur portable dont le temps de la batterie est important. Et n'est-ce pas une bonne fonctionnalité?
sieste
La LED n'est pas grisée, mais est éteinte du tout, empêchant l'utilisation normale de la souris (besoin de cliquer à chaque fois avant de bouger).
Vi.
1
Veuillez commenter la réponse ci-dessus, celle-ci est complètement fausse et trompeuse.
BrunoJCM