You are not logged in.
Pages: 1
Hi everybody
I've been using arch for a few weeks now, and a few days on my new laptop (Samsung R530). I'm having a problem with some of the special keys.
Fn + Left and Fn + Right do volume, and that works fine. However, Fn + Up and Fn + Down should do screen brightness, and those don't do anything.,
I've tried the steps in the Ubuntu hotkeys troubleshooter, and neither xev nor acpi_listen register anything for the brightness keys. Anyone have any ideas for what to try next?
Offline
Does the key generate a scancode?
You might look at this thread: http://bbs.archlinux.org/viewtopic.php?id=84978
Nothing is too wonderful to be true, if it be consistent with the laws of nature -- Michael Faraday
Sometimes it is the people no one can imagine anything of who do the things no one can imagine. -- Alan Turing
---
How to Ask Questions the Smart Way
Offline
Try adding "acpi_backlight=vendor" to the kernel line in your menu.lst. This may make your keys work.
Offline
Here is another good source of information
"You can watch for your administrator to install the latest kernel with watch uname -r" - From the watch man page
Offline
Hi everybody, thanks for the tips.
Extra Keyboard Keys was really useful. I used dmesg to get the scancodes, then found that the samsung-other keymap in /lib/udev/keymaps/ had all the scancode -> keycode mappings I needed.
Since then I've had more problems though. After I've got the scancodes mapped, if I do xev and press Fn + Up (brightness up), I get this going continuously until I press escape. Often it's enough to crash X or KDE (screen goes blank but I can get to virtual terminal):
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080829, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080829, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080862, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080862, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080896, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080896, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080929, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080929, (164,-11), root:(1340,12),
state 0x0, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080962, (164,-11), root:(1340,12),
state 0x100, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080962, (164,-11), root:(1340,12),
state 0x100, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080995, (164,-11), root:(1340,12),
state 0x100, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyPress event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1080995, (164,-11), root:(1340,12),
state 0x100, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 35, synthetic NO, window 0x4800001,
root 0xb1, subw 0x0, time 1081028, (164,-11), root:(1340,12),
state 0x100, keycode 233 (keysym 0x1008ff02, XF86MonBrightnessUp), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
Offline
Also, doing showkey and pressing Fn + Up or Fn + Down seems to be getting presses without the corresponding releases:
keycode 225 press
keycode 225 press
keycode 224 press
keycode 224 press
keycode 224 press
keycode 225 press
keycode 225 press
Offline
I have found a solution for this. You need the force-release patch. I added a udev rule in /etc/udev/rules.d/95-keyboard-force-release.rules I used the 95 so it loads after the keycode is set, which I do in 10-locale.rules. The rule I added was:
+ENV{DMIVENDOR}=="[sS][aA][mM][sS][uU][nN][gG]*", ATTR{[dmi/id]productname}=="*R522*", RUN+="keyboard-force-release.sh $devpath samsung-other"
where R522 is my model, substitute your own. Now after a reboot, when you press the brightness keys it detects a press and immediately a release, which is good enough.
To control the brightness I had to make a perl script, because xbacklight didn't work for me. The script is only valid for gnome, let me know if you want it.
Offline
Pages: 1