Viv*_*sas 5 keyboard backlight lenovo brightness 16.04
我有一台新的 Lenovo Ideapad 500S,上面运行着新的 Ubuntu 16.04.1。不幸的是,亮度升高/降低键不起作用。(它们在 Windows 中运行良好。)
运行acpi_listen显示我生成了音量增大/减小键的事件,但没有生成亮度增大/减小的事件。运行xev也没有给我任何亮度上/下键的输出。
使用、、和 等GRUB_CMDLINE_LINUX_DEFAULT选项/etc/default/grub多次编辑该行后,我可以确认这会更改其中的软链接,而我目前只在那里。acpi_backlight=vendorvideo.use_native_backlight=1acpi_osi=Linuxacpi_osi=/sys/class/backlight/intel_backlight
运行echo <NUM> | sudo tee /sys/class/backlight/intel_backlight/brightness效果很好并改变了亮度,从Settings > Brightness and Lock.
Ubuntu 中似乎没有任何东西能够检测到这些键,所以我不确定对 grub 配置进行任何更改是否重要。
如果有人知道如何解决此问题,以及是否有任何其他信息有助于调试此问题,请告诉我。
更新:
添加acpi_osi=Linux acpi_backlight=intel_backlight到 grub 中的行似乎会使亮度降低键生成一些内容xev(尽管还没有生成任何内容acpi_listen)。输出是:
KeyPress event, serial 37, synthetic NO, window 0x3c00001,
root 0xd3, subw 0x0, time 391361, (728,884), root:(793,936),
state 0x0, keycode 120 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 37, synthetic NO, window 0x3c00001,
root 0xd3, subw 0x0, time 391368, (728,884), root:(793,936),
state 0x0, keycode 120 (keysym 0x0, NoSymbol), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Run Code Online (Sandbox Code Playgroud)
附加输出:
$ lspci -nnk | grep -iA2 vga
00:02.0 VGA compatible controller [0300]: Intel Corporation Sky Lake Integrated Graphics [8086:1916] (rev 07)
Subsystem: Lenovo Skylake Integrated Graphics [17aa:3828]
Kernel driver in use: i915_bpo
Run Code Online (Sandbox Code Playgroud)
我最终使用几个解决方法解决了这个问题。
第一步是让按键可被检测到。我有一台类似型号的笔记本电脑(Lenovo Z400),我查看了为其生成的键码。基于此,我将其放入我的/etc/rc.local/:
setkeycodes e054 225 # Brightness up -> brightness up
setkeycodes e04c 224 # Brightness down -> brightness down
Run Code Online (Sandbox Code Playgroud)
第二步是让按键改变亮度。我首先注意到运行xdotool key 232并xdotool key 233完美地增加和减少了亮度(包括 Unity 中的更改通知)。然后我尝试了两件事来使亮度发挥作用。
首先,我注意到xev现在向我显示了事件XF86MonBrightnessUp和XF86MonBrightnessDown两个键,这意味着在 X 级别一切工作正常。因此,我只是使用 Ubuntu 的快捷方式管理器并将两个键(被读取为 XF86 等效键)注册到xdotool命令中。这太棒了!
然而,几周后,由于我更改了一些软件包/驱动程序,xev停止报告 XF86 事件,因此上述方法不起作用。然而,acpi_listen表明video/brightnessdown事件video/brightnessup正在生成,因此,经过一番谷歌搜索后,我将以下内容放入一个新文件中/etc/acpi/events/ideapad-monitor-brightness-up:
setkeycodes e054 225 # Brightness up -> brightness up
setkeycodes e04c 224 # Brightness down -> brightness down
Run Code Online (Sandbox Code Playgroud)
还有一个ideapad-monitor-brightness-down与 和 等效的文件xdotool key 232解决了问题。从那以后就没有出现过任何问题。:)
| 归档时间: |
|
| 查看次数: |
4175 次 |
| 最近记录: |