You are not logged in.

#1 2017-09-01 02:27:32

Lem0nHead
Member
Registered: 2013-09-30
Posts: 28

Yet another ACPI problem? Laptop keyboard Fn keys not recognized

Hi there

I bought an Asus FX502VM notebook, which apparently isn't very well supported on Linux. Fn keys work for some of the keys (audio and monitor configuration) but not for any other (keyboard/screen brightness for instance). Apparently this is the same as documented here

I tried multiple kernel options already:

  • backlight=native idle=nomwait

  • acpi_osi=! acpi_osi='Windows 2009'

  • acpi_osi="!Windows 2012"

  • acpi_osi=Linux acpi_backlight=vendor

  • acpi_osi= acpi_backlight=vendor

And none of them work*

* by work I mean I can't even see a reaction on "xev"; but for Fn+F5 I can see something using "sudo evtest" on the input 3 (I don't know why; I tried them all)

Any ideas on what else I could try given this works fine on Windows?

I'm motivated enough to get my hands dirty and play with kernel drivers if I need to.

Offline

#2 2017-09-01 02:41:53

circleface
Member
Registered: 2012-05-26
Posts: 639

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

Is this under X or Wayland?

Offline

#3 2017-09-01 03:01:56

Lem0nHead
Member
Registered: 2013-09-30
Posts: 28

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

circleface wrote:

Is this under X or Wayland?

x11

Offline

#4 2017-09-19 20:01:22

Lem0nHead
Member
Registered: 2013-09-30
Posts: 28

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

bump

Offline

#5 2017-09-19 20:16:44

ewaller
Administrator
From: Pasadena, CA
Registered: 2009-07-13
Posts: 20,193

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

First, and foremost.  Don't do that. https://wiki.archlinux.org/index.php/Co … ct#Bumping

Start with the basics.  https://wiki.archlinux.org/index.php/Ex … #Scancodes  Note the warning that you have to be at a console; not inside X.


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

#6 2017-10-03 01:22:39

Lem0nHead
Member
Registered: 2013-09-30
Posts: 28

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

I tried to get used to this issue, but now I'm working on debugging it again, since I don't have the brightness keys for screen nor keyboard
I can control screen brightness using xbacklight (I can't control keyboard backlight though - it's always disabled on linux)

so, I tried what has been suggested (showkey / evtest on a virtual console), and it doesn't return anything

I also tried acpi_listen with no success

any ideas on what else I could debug / fix that?

thanks!

Offline

#7 2017-10-03 07:45:38

seth
Member
Registered: 2012-09-03
Posts: 58,658

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

Please post the outputs of "xinput" and "setxkbmap -print -query"
If you can see the key in evtest you should be able to get them to X11 (ie. visible in xev)
If you don't see the key in either evdev nor acpi_listen, the kernel doesn't generate any events for them and you'd require some special kernel module for the particular HW (no idea whether such exists), so check all desired ekys itr.

Online

#8 2017-10-04 02:38:18

Lem0nHead
Member
Registered: 2013-09-30
Posts: 28

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

seth wrote:

Please post the outputs of "xinput" and "setxkbmap -print -query"

$ xinput
⎡ Virtual core pointer                    	id=2	[master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer              	id=4	[slave  pointer  (2)]
⎜   ↳ ASASTeK COMPUTER INC. ROG MacroKey      	id=14	[slave  pointer  (2)]
⎜   ↳ Logitech M510                           	id=12	[slave  pointer  (2)]
⎜   ↳ ELAN1200:00 04F3:3049 Touchpad          	id=16	[slave  pointer  (2)]
⎜   ↳ ASASTeK COMPUTER INC. ROG MacroKey      	id=15	[slave  pointer  (2)]
⎣ Virtual core keyboard                   	id=3	[master keyboard (2)]
    ↳ Virtual core XTEST keyboard             	id=5	[slave  keyboard (3)]
    ↳ Sleep Button                            	id=10	[slave  keyboard (3)]
    ↳ Video Bus                               	id=8	[slave  keyboard (3)]
    ↳ Asus Wireless Radio Control             	id=7	[slave  keyboard (3)]
    ↳ Power Button                            	id=9	[slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard            	id=18	[slave  keyboard (3)]
    ↳ USB2.0 HD UVC WebCam                    	id=11	[slave  keyboard (3)]
    ↳ Power Button                            	id=6	[slave  keyboard (3)]
    ↳ ASASTeK COMPUTER INC. ROG MacroKey      	id=19	[slave  keyboard (3)]
    ↳ Asus WMI hotkeys                        	id=17	[slave  keyboard (3)]
    ↳ ASASTeK COMPUTER INC. ROG MacroKey      	id=13	[slave  keyboard (3)]
$ setxkbmap -print -query
xkb_keymap {
	xkb_keycodes  { include "evdev+aliases(qwerty)"	};
	xkb_types     { include "complete"	};
	xkb_compat    { include "complete"	};
	xkb_symbols   { include "pc+us(intl)+inet(evdev)"	};
	xkb_geometry  { include "pc(pc104)"	};
};
rules:      evdev
model:      asus_laptop
layout:     us
variant:    intl
seth wrote:

If you can see the key in evtest you should be able to get them to X11 (ie. visible in xev)

I can see the Fn-F5 (decrease screen brightness) on evtest for "/dev/input/event3:    ASASTeK COMPUTER INC. ROG MacroKey": Event: time 1507084435.039692, type 3 (EV_ABS), code 56 (ABS_MT_BLOB_ID), value 1
But that's all. I tried all other Fn-XX combinations (for instance, it does NOT work for increasing screen brightness (Fn-F6) with other devices on evtest with no success..

seth wrote:

If you don't see the key in either evdev nor acpi_listen, the kernel doesn't generate any events for them and you'd require some special kernel module for the particular HW (no idea whether such exists), so check all desired ekys itr.

isn't it odd that Fn-F5 shows up on evtest, but not on acpi_listen, showkey, xev?

also, any hints on how I could get more lower level with that? maybe some module that does something similar, like printing EVERY key interruption possible or every acpi event? I guess this might also be related to kernel booting options..

Offline

#9 2017-10-04 07:50:14

seth
Member
Registered: 2012-09-03
Posts: 58,658

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

evtest and acpi_listen should do that.
You can also cat the /dev/input/* devices and see whether those keys produce anything.

The wiki however is not encouraging.

lsmod | grep asus

Online

#10 2017-10-04 09:54:10

unixman
Member
Registered: 2015-03-12
Posts: 64

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

hi. is  "/sys/class/backlight/your_vendor/brightness"  exist  for you?

if so then writing a value that file  should set brightness to that value generally as a workaround and last resort.

but it may need root  rights.

furthermore you can setup a shell script for this job and integrate it to your compositor/vm via a shortcut key you wish if  your compositor/vm allows such things.

Offline

#11 2020-04-11 10:53:36

Russ.Rao
Member
Registered: 2020-04-11
Posts: 1

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

Based on my research, this is a DSDT issue at kernel level. If acpi_listen returns nothing, no other methods at higher level can help. I have exactly the same issue with my HP Spectre13. Oddly, i cannot find anywhere on internet about DSDT for a specific hardware. I guess unless the PC vendor provides that or, you are an expert of acpi, nothing can be done. https://wiki.archlinux.org/index.php/DSDT

Offline

#12 2020-08-26 07:48:13

aleritty
Member
Registered: 2011-02-15
Posts: 12
Website

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

I have a similar problem on an asus N552VX, but I can see the in evtest

    Event code 229 (KEY_KBDILLUMDOWN)
    Event code 230 (KEY_KBDILLUMUP)

When I press the corresponding keys (fn+f3, fn+f4) nothing happens (neither in xev).

I tried booting with a lot of combination from acpi_osi and acpi_backlight but nothing works for me.
Also, the screen backlight keys get intercepted (I see the event in xev, I see the gnome notification for backlight regulation) but the backlight doesn't change.
All the other function keys regularly works (including the key to turn off completely the screen backlight!!)

Offline

#13 2020-08-26 10:50:22

seth
Member
Registered: 2012-09-03
Posts: 58,658

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

Doesn't seem to be

/usr/share/X11/xkb/symbols/inet has

key <I237>   {      [ XF86KbdBrightnessDown ]       }; // KEY_KBDILLUMDOWN
key <I238>   {      [ XF86KbdBrightnessUp   ]       }; // KEY_KBDILLUMUP

Apparently that doesn't match the codes your keyboard generates (+8) so you might want to derive a symbol table and use that.

Online

#14 2020-08-26 12:04:59

aleritty
Member
Registered: 2011-02-15
Posts: 12
Website

Re: Yet another ACPI problem? Laptop keyboard Fn keys not recognized

I think that the keyboard button is correctly associated right now, but still it doesn't work...
I think that is an ACPI trouble, also in ubuntu 18.04 this used to work, but in latest 20.04 it doesn't anymore.

Maybe there is a more direct way to test sending the ACPI event directly or similar, I don't know...

Also I don't have the /sys/class/* correct pointers... I think that there is something missing...
My best combination AFAIK is to boot with
ideo.use_native_backlight=1 acpi_osi= acpi_backlight=vendor

this fixes the video backlight but not the keyboard one...

Offline

Board footer

Powered by FluxBB