Потеряно соединение с беспроводной мышью, когда ноутбук работает от батареи

Я только что купил беспроводную мышь HP , но у меня возникли некоторые проблемы.

Курсор часто перестает реагировать на движения мыши. Я заметил, что это происходит на моем ноутбуке только в том случае, если он работает от батареи и, когда мышь не двигается, скажем, в течение 20-30 секунд, мне нужно коснуться сенсорной панели ноутбука, чтобы получить мышь, чтобы восстановить соединение.

Похоже, что, возможно, управление питанием мешает, но я не совсем уверен, как это устранить.

Редактировать: Важной информацией, о которой я совершенно забыл упомянуть, является то, что у меня не было этой проблемы с моей предыдущей 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
5
задан 2 September 2012 в 17:58

2 ответа

Я исправил проблему, изменив настройку в /etc/laptop-mode/conf.d/usb-autosuspend.conf

Согласно комментарию в файле конфигурации, некоторые USB-устройства неправильно поддерживают автоподключение.

В конфигурации AUTOSUSPEND_USBID_BLACKLIST есть опция, позволяющая добавить список идентификаторов USB-устройств для неисправных устройств, я добавил идентификатор мыши, и теперь он работает без проблем.

#
# 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
0
ответ дан 2 September 2012 в 17:58

Возможно необходимо изменить значения питания для USB-устройств

Три возможных области для рассмотрения:

  1. Выключение управления питанием USB полностью
  2. Выключение USB приостанавливает управление на основе отдельного устройства
  3. Выключение (Аккуратной) приостановки USB

Выключение управления питанием USB полностью

Сначала мы должны подтвердить, что это - действительно проблема управления питанием.

Двойная проверка там не является опциями управления питанием USB в Вашем BIOS.

Загрузите свой компьютер с acpi=off как параметр загрузки личинки. Если мышь будет вести себя правильно затем, то это, скорее всего, будет проблема управления питанием. Если это все еще ведет себя, беспорядочно регистрируют отчет об ошибках панели запуска.

Два возможных способа отключить все управление питанием USB.

  1. Параметр загрузки личинки usbcore.autosuspend=-1
  2. Установка laptop-mode-tools от Центра программного обеспечения и изменения /etc/laptop-mode/conf.d/usb-autosuspend.conf:

существуют различные значения там для изменения:

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

Выключение управления питанием USB на основе для каждого устройства

Взгляните на /sys/bus/usb/devices

enter image description here

Необходимо видеть концентраторы USB в формате "x-x", т.е. для моего ноутбука я имею два "1-1" и "2-1"

Эксперимент путем изменения управления питанием от "автоматического" до "на"

т.е. источник

питание/управление

Этот файл содержит одно из двух слов: "на" или "автоматический". Можно записать те слова в файл для изменения настроек устройства.

"на" средствах, что устройство должно быть возобновлено и автоприостановить, не позволяется. (Конечно, система приостанавливает, все еще позволяются.)

"автоматический" нормальное состояние, в котором ядру позволяют автоприостановить и автовозобновить устройство.

N.B. вплоть до ядра 2.6.38 было подобное значение, названное "питанием/уровнем" - это было удержано от использования/удалено в пользу питания/управления

таким образом изменить управление питанием на на

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

Затем разъединение от батареи.

Я читал также возможно, необходимо использовать эту технику непосредственно на самих USB-устройствах - в моем-случае "usb1" и "usb2"

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

Если это работает, попытайтесь вынудить уровень мощности быть "включенным" от начальной загрузки путем редактирования rc.local файла т.е. добавить следующие строки перед "выходом 0" в файле

[ -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

или возможно:

[ -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

Выключение (Аккуратной) приостановки USB

Который также стоит экспериментировать с "power/autosuspend_delay_ms"

Устанавливание значения "-1" означает, что USB-устройство никогда не должно приостанавливать т.е.

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

или

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
2
ответ дан 2 September 2012 в 17:58

Другие вопросы по тегам:

Похожие вопросы: