Perdeu a conexão do mouse sem fio quando o laptop está na bateria

5

Acabei de comprar uma Mouse sem fio HP , mas estou tendo alguns problemas.

O cursor freqüentemente não responde aos movimentos do mouse. Percebi que isso só acontece no meu laptop quando ele está A bateria está acabando e sempre que o mouse não é movido por 20-30 segundos, eu tenho que tocar no touchpad do notebook para fazer o mouse se reconectar.

Então, parece que talvez o gerenciamento de energia esteja interferindo, mas não sei ao certo como solucionar isso.

Editar: Uma informação importante que eu esqueci completamente é que eu não tive esse problema com o meu anterior mouse sem fio Sweex MI420 .

$ dmesg |grep -i mouse :

[    1.279240] mousedev: PS/2 mouse device common for all mice
[    2.205885] input: HP HP Wireless Laser Comfort Mouse as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.2/1-1.2:1.0/input/input5
[    2.206071] generic-usb 0003:03F0:8501.0001: input,hiddev0,hidraw0: USB HID v1.11 Mouse [HP HP Wireless Laser Comfort Mouse] on usb-0000:00:1a.0-1.2/input0

$ ls /sys/bus/usb/devices :

1-0:1.0
1-1
1-1.1
1-1:1.0
1-1.1:1.0
1-1.1:1.1
1-1.2
1-1.2:1.0
2-0:1.0
2-1
2-1:1.0
usb1
usb2
    
por volting 20.09.2011 / 21:20

2 respostas

4

Corrigi o problema alterando uma configuração em /etc/laptop-mode/conf.d/usb-autosuspend.conf

De acordo com um comentário no arquivo de configuração, alguns dispositivos USB não suportam corretamente a suspensão automática.

Existe uma opção na configuração AUTOSUSPEND_USBID_BLACKLIST para adicionar uma lista de IDs de dispositivos USB para dispositivos ofensivos, adicionei o ID do mouse e agora ele funciona sem problemas.

#
# Configuration file for Laptop Mode Tools module usb-autosuspend.
#
# For more information, consult the laptop-mode.conf(8) manual page.
#


###############################################################################
# USB autosuspend settings
# ------------------------
#
# If you enable this setting, laptop mode tools will automatically enable the
# USB autosuspend feature for all devices.
#
# NOTE: Some USB devices claim they support autosuspend, but implement it in a
# broken way. This can mean keyboards losing keypresses, or optical mice turning
# their LED completely off. If you have a device that misbehaves, add its USB ID
# to the blacklist below and complain to your hardware vendor.
################################################################################

# Enable debug mode for this module
# Set to 1 if you want to debug this module
DEBUG=0

# Enable USB autosuspend feature?
# Set to 0 to disable
CONTROL_USB_AUTOSUSPEND="auto"

# The list of USB IDs that should not use autosuspend. Use lsusb to find out the
# IDs of your USB devices.
# Example: AUTOSUSPEND_USBID_BLACKLIST="046d:c025 0123:abcd"
AUTOSUSPEND_USBID_BLACKLIST="03f0:8501"

# 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"
AUTOSUSPEND_USBTYPE_BLACKLIST=""

# Trigger auto-suspension of the USB deivce under conditional circumstances
BATT_SUSPEND_USB=1
LM_AC_SUSPEND_USB=0
NOLM_AC_SUSPEND_USB=0

# USB Auto-Suspend timeout in seconds
# Number of seconds after which the USB devices should suspend
AUTOSUSPEND_TIMEOUT=2
    
por volting 29.09.2011 / 21:09
2

Possivelmente você precisa alterar os valores de energia dos seus dispositivos USB

Três possíveis áreas a considerar:

  1. Desligar totalmente o gerenciamento de energia do USB
  2. Desativar o controle de suspensão USB em uma base de dispositivo individual
  3. Desligando a suspensão USB (Natty)

Desligar totalmente o gerenciamento de energia do USB

Primeiro, devemos confirmar que isso é realmente um problema de gerenciamento de energia.

Verifique novamente se não há opções de gerenciamento de energia USB no seu BIOS.

Inicialize seu computador com acpi=off como uma opção de inicialização. Se o mouse se comportar corretamente, é mais provável que seja um problema de gerenciamento de energia. Se ainda se comportar de forma errática, arquivar um relatório de bug da barra de lançamento.

Duas maneiras possíveis de desativar todo o gerenciamento de energia do USB.

  1. Opção de inicialização do Grub usbcore.autosuspend=-1
  2. Instalando laptop-mode-tools do centro de software e alterando /etc/laptop-mode/conf.d/usb-autosuspend.conf :

existem vários valores para mudar:

CONTROL_USB_AUTOSUSPEND="auto" --> CONTROL_USB_AUTOSUSPEND="0"
AUTOSUSPEND_USBID_BLACKLIST=""
AUTOSUSPEND_USBTYPE_BLACKLIST=""

Desativar o gerenciamento de energia do USB por dispositivo

Dê uma olhada em /sys/bus/usb/devices

Você deve ver seus hubs USB no formato "x-x", ou seja, para meu laptop, tenho dois "1-1" e "2-1"

Experimente alterar o controle de energia de "auto" para "on"

i.e. fonte

  

poder / controle

     

Este arquivo contém uma das duas palavras: "on" ou "auto". Você pode escrever   essas palavras para o arquivo para alterar a configuração do dispositivo.

     

"on" significa que o dispositivo deve ser retomado e a suspensão automática não é   permitido. (Claro, suspensões do sistema ainda são permitidas.)

     

"auto" é o estado normal no qual o kernel tem permissão para   autosuspende e automatiza o dispositivo.

N.B. Até o kernel 2.6.38 existia um valor similar chamado "power / level" - isto foi preterido / removido em favor de power / control

para mudar o controle de energia para

sudo su
echo on > /sys/bus/usb/devices/1-1/power/control
echo on > /sys/bus/usb/devices/2-1/power/control

Em seguida, desconecte da bateria.

Eu também li, possivelmente, você precisa usar esta técnica diretamente nos próprios dispositivos usb - no meu caso, "usb1" e "usb2"

sudo su
echo on > /sys/bus/usb/devices/usb1/power/control
echo on > /sys/bus/usb/devices/usb2/power/control

Se isso funcionar, tente forçar o nível de energia a ser "ligado" a partir da inicialização editando o arquivo rc.local, ou seja, adicione as seguintes linhas antes da "saída 0" no arquivo

[ -w /sys/bus/usb/devices/1-1/power/control ] && echo on > /sys/bus/usb/devices/1-1/power/control
[ -w /sys/bus/usb/devices/2-1/power/control ] && echo on > /sys/bus/usb/devices/2-1/power/control

ou possivelmente:

[ -w /sys/bus/usb/devices/usb1/power/control ] && echo on > /sys/bus/usb/devices/usb1/power/control
[ -w /sys/bus/usb/devices/usb2/power/control ] && echo on > /sys/bus/usb/devices/usb2/power/control

Desligar a suspensão USB (Natty)

Também vale a pena experimentar "power / autosuspend_delay_ms"

Definir um valor de "-1" significa que o dispositivo usb nunca deve suspender, ou seja,

sudo su
echo -1 > /sys/bus/usb/devices/usb1/power/autosuspend_delay_ms
echo -1 > /sys/bus/usb/devices/usb2/power/autosuspend_delay_ms

ou

sudo su
echo -1 > /sys/bus/1-1/devices/usb1/power/autosuspend_delay_ms
echo -1 > /sys/bus/2-1/devices/usb2/power/autosuspend_delay_ms
    
por fossfreedom 25.09.2011 / 15:31