You are not logged in.

#1 2024-08-28 07:25:43

erdaifuu
Member
Registered: 2024-08-28
Posts: 2

Media Keys & Fn Keys Not Being Detected

Newbie on Arch, and I'm having a weird issue where the medias key and the Fn key randomly stops working. I'm talking about wev/xev not detecting the Fn key at all, unable to Fn Lock using Fn+Esc, and pressing the function keys up top only returns F1, F2.... instead of XF64AudioPlay and things of sort.

Weirdest part is, after randomly restarting a couple times, this issue fixes itself. Then, when rebooting again, it happens again. No idea what's going on, let me know what logs I need to paste here!

Last did a system update today. Using the Arch Kernel, no clue which BIOS version I'm using but running the 13th Gen Intel Framework 13. Using swayfx.

Offline

#2 2024-09-01 08:23:59

mesaprotector
Member
Registered: 2024-03-03
Posts: 170

Re: Media Keys & Fn Keys Not Being Detected

Function keys are almost always controlled directly by your laptop's firmware and only passed to the OS afterwards; so I'd guess it's most likely not a Linux problem. I'd look on the Framework forum for posts like this.

A way to really rule out Linux would be to test all of the keys, including the ones invisible to wev normally. I have some doubts about the accuracy of the information on the wiki, but if we assume it's correct then you should try out Fn+k, Fn+p, and Fn+b.

Offline

#3 2024-09-01 09:35:48

seth
Member
Registered: 2012-09-03
Posts: 60,393

Re: Media Keys & Fn Keys Not Being Detected

What specific HW is this (not everyone has fn-lock on fn+esc and there's also exposure to the OS for some devices (notably lenovo)

Is there a parallel windows installation?
3rd link below. Mandatory.
Disable it (it's NOT the BIOS setting!) and reboot windows and linux twice for voodo reasons.

Offline

#4 2024-09-01 10:32:19

YCDA
Member
Registered: 2024-05-16
Posts: 7

Re: Media Keys & Fn Keys Not Being Detected

erdaifuu wrote:

Newbie on Arch, and I'm having a weird issue where the medias key and the Fn key randomly stops working. I'm talking about wev/xev not detecting the Fn key at all, unable to Fn Lock using Fn+Esc, and pressing the function keys up top only returns F1, F2.... instead of XF64AudioPlay and things of sort.

Weirdest part is, after randomly restarting a couple times, this issue fixes itself. Then, when rebooting again, it happens again. No idea what's going on, let me know what logs I need to paste here!

Last did a system update today. Using the Arch Kernel, no clue which BIOS version I'm using but running the 13th Gen Intel Framework 13. Using swayfx.

[UNSOLVED] Debugging Input Key Events (fn | media):

DESCRIPTION:
I don't have a straight forward solution for you at this moment, but below are steps I utilized to ad-hoc around the <fn> and <media> keys on a Lenovo S7-15ACH lapotop.

When I have used Sway I noticed that certain keyboard shortcut functions such as KEY_VOLUMEUP were dependent on applets and extensions such as waybar and pipewire/pulseaudio/alsa.

For example as soon as I had installed waybar and pulseaudio applet, my keyboard special keys began working out of the box, where as they didn't without it. There are more manual ways of configuring this with individual libraries, and modifying Udev ACPI calls (but it's kinda tedious and confusing), so I personally just said fuck it and commited to utilizing the applet/waybar self configuration gift.

I'll check in later and see if I can recall more applicable solutions.

PREREQUISITES:

  • libinput

REPRO STEPS:
1. Utilize libinput to debug keyboard_input and key_codes to understand backend calls occuring.

 libinput debug-events 

2. While libinput debug-events is active, experiment (ad-hoc) your <fn> or other keys.
    > this will be somewhat a blackbox test.
3. Verify configuration settings within bios for <fn> and <hotkey> related settings.
    > some laptops like lenovos have hardware level controllers operating systems such as backlight-led, power-modes.
4. Try modifying sway.config for static bindings, and experiment utilizing call_code (examples for Corsair K70 libinput outputs for bindings, yours will differ to xf86/xf64{ KEY_VOLUMEUP)  | key_codes (key 115 ) }.
5. Try testing if installing (extra/xf86-input-libinput | extra/xf86-input-synaptics).
6. Consider hardware or acpi module failure, but likely not since it sems like you're getting temporary functionality before a conflict occurs.
7. Try running with journalctl in a side terminal to manually catch any throws, by correlating the working/not-working functionality with it's output.
   

 sudo journalctl -f 

8. Try checking dmesg to catch any general hints (dmesg -l , filters the output by severity level, and i usually just use err and warn on the fly, but you could use debug or info since this input error may not be caught downstream, do err | warn first though).
   

 sudo dmesg -l warn | sudo dmesg -l err 

OUR RESULTS:
I'll check in later and see if I can recall more applicable solutions.

Offline

Board footer

Powered by FluxBB