笔记本电脑使用电池时丢失无线鼠标连接

我刚买了一台惠普无线鼠标 ,但我遇到了一些问题。

光标经常变得对鼠标移动无响应。 我注意到它只发生在我的笔记本电脑上电池耗尽时,每当鼠标移动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 

我通过更改/etc/laptop-mode/conf.d/usb-autosuspend.conf的设置来/etc/laptop-mode/conf.d/usb-autosuspend.conf

根据配置文件中的注释,某些USB设备无法正确支持自动挂起。

配置AUTOSUSPEND_USBID_BLACKLIST中的一个选项是为违规设备添加USB设备ID列表,我添加了鼠标ID,现在它可以正常工作。

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

您可能需要更改USB设备的功率值

需要考虑的三个方面:

  1. 完全关闭USB电源管理
  2. 在单个设备的基础上关闭USB挂起控制
  3. 关闭USB悬架(Natty)

完全关闭USB电源管理

首先,我们应该确认这确实是一个电源管理问题。

仔细检查BIOS中没有USB电源管理选项。

使用acpi=off作为grub-boot选项启动计算机。 如果鼠标行为正确,则最有可能是电源管理问题。 如果它仍然表现不正常,则提交一个启动板错误报告。

两种可能的方法来禁用所有USB电源管理。

  1. Grub引导选项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

在此处输入图像描述

您应该以“xx”格式看到您的USB集线器,即对于我的笔记本电脑,我有两个“1-1”和“2-1”

通过将功率控制从“自动”更改为“开启”进行实验

即来源

功率控制

此文件包含两个单词之一:“on”或“auto”。 您可以将这些单词写入文件以更改设备的设置。

“on”表示应恢复设备并且不允许自动挂起。 (当然,系统暂停仍然是允许的。)

“auto”是允许内核自动挂起并自动恢复设备的正常状态。

NB直到内核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文件强制从启动“打开”电源级别,即在文件中的“exit 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悬架(Natty)

它也值得尝试“power / autosuspend_delay_ms”

设置值“-1”意味着usb设备永远不应该挂起ie

 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