我一直在为这个问题绞尽脑汁。根据之前投票通过的方法:askubuntu_link1同样地askubuntu_link2,我启用了连接到无线鼠标接收器的 USB 设备的电源/唤醒功能,并尝试为我的特定设备创建 udev 规则。但是,在挂起时,我仍然无法从无线鼠标获得任何唤醒响应;我只能通过打开笔记本电脑盖并使用触摸板唤醒。我的笔记本电脑是搭载 Ubuntu 18.04 的 Dell XPS 13 9380。
我开始:
$ grep . /sys/bus/usb/devices/*/power/wakeup
最初屈服,
/sys/bus/usb/devices/1-7/power/wakeup:disabled
/sys/bus/usb/devices/1-9/power/wakeup:disabled
/sys/bus/usb/devices/5-1/power/wakeup:disabled
/sys/bus/usb/devices/6-1.2/power/wakeup:disabled
/sys/bus/usb/devices/6-1/power/wakeup:disabled
/sys/bus/usb/devices/usb1/power/wakeup:disabled
/sys/bus/usb/devices/usb2/power/wakeup:disabled
/sys/bus/usb/devices/usb3/power/wakeup:disabled
/sys/bus/usb/devices/usb4/power/wakeup:disabled
/sys/bus/usb/devices/usb5/power/wakeup:disabled
/sys/bus/usb/devices/usb6/power/wakeup:disabled
查找无线接收器的 USB 端口:
$ lsusb
Bus 006 Device 004: ID 0480:a006 Toshiba America Inc External Disk 1.5TB
Bus 006 Device 003: ID 0bda:8153 Realtek Semiconductor Corp.
Bus 006 Device 002: ID 0424:5807 Standard Microsystems Corp.
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 004: ID 046d:0825 Logitech, Inc. Webcam C270
Bus 005 Device 003: ID 0bda:4014 Realtek Semiconductor Corp.
Bus 005 Device 002: ID 0424:2807 Standard Microsystems Corp.
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 046d:c534 Logitech, Inc. Unifying Receiver
Bus 001 Device 003: ID 0489:e0a2 Foxconn / Hon Hai
Bus 001 Device 002: ID 0c45:6723 Microdia
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
我确认我的设备 ID 是c534。
找到我的设备插入的端口:
$ grep c534 /sys/bus/usb/devices/*/idProduct
/sys/bus/usb/devices/1-9/idProduct:c534
这表明我的设备已插入总线 1、端口 9。
仔细检查唤醒功能是否已启用:
$ cat /sys/bus/usb/devices/1-9/power/wakeup
disabled
启用端口唤醒:
$ sudo sh -c 'echo "enabled" > /sys/bus/usb/devices/1-9/power/wakeup'
检查唤醒是否已启用:$ cat /sys/bus/usb/devices/1-9/power/wakeup enabled
在挂起模式下测试计算机时,我没有被唤醒。
然后,我尝试编辑特定于我的设备的唤醒规则:
$ lsusb | grep Receiver
Bus 001 Device 004: ID **046d:c534** Logitech, Inc. Unifying Receiver
使用设备 ID,我udev
为 USB 端口 1-9 编辑第 10 条优先级规则:
$ sudo nano /etc/udev/rules.d/10-wakeup.rules
ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="046d", ATTRS{idProduct}=="c534" RUN+="/bin/sh -c 'echo enabled > /sys/bus/usb/devices/1-9/power/wakeup'"
系统重启后,检查端口 1-9 是否已启用唤醒功能,在计算机挂起状态下,鼠标仍然没有响应。为什么?我被困住了。
答案1
请注意,在戴尔电脑上(可能并非戴尔独有),默认情况下,USB 在 BIOS 级别被禁用以进行唤醒。我尝试了上述各种解决方案,但都无济于事,后来我找到了更改 BIOS 的“简单”答案。
答案2
鼠标接收器需要电源
当机器处于挂起状态时,Unifying 接收器需要插入有电的 USB 端口。您可以移动鼠标,但如果 Unifying 接收器没有电,则什么也不会发生。
从:USB PowerShare 无法在 XPS13 9380 上使用
确保您确实在 BIOS 设置界面中启用了 USB PowerShare。在某些系统上,默认情况下它是禁用的。
确保您使用的端口确实支持 PowerShare。并非所有戴尔系统都在其所有 USB 端口上实现了 PowerShare。寻找带有电池图标或闪电图标的端口,尽管后者可能会引起一些混淆,因为 9380 还支持 Thunderbolt 3,它使用非常相似的闪电式图标。
在某些戴尔系统上,PowerShare 仅在系统关闭时才有效以及交流电源或睡眠(使用电池或交流电)。并非所有系统都会在系统完全关闭且未插入电源时启用 PowerShare。
答案3
/sys/bus/usb/devices/usb1/power/wakeup
也需要启用。