F6 is not working but Fn+F6 works

Nothing seems to happen after I press the F6 key on my laptop but Fn+F6 really works well. My laptop model is Lenovo XiaoXin Chao 5000 and the machine runs Manjaro KDE with daily full system upgrade.

Here is some further information:

$ inxi -Fxza
System:    Kernel: 5.10.59-1-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0 
           parameters: BOOT_IMAGE=/boot/vmlinuz-5.10-x86_64 root=UUID=d1bc4347-645a-445d-ba7f-4ad3280500b2 rw quiet apparmor=1 
           security=apparmor resume=UUID=4ee8fe3b-df7e-40ba-9f5a-6688f3bb3b4c udev.log_priority=3 
           Desktop: KDE Plasma 5.22.4 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11 vt: 1 dm: SDDM Distro: Manjaro Linux 
           base: Arch Linux 
Machine:   Type: Laptop System: LENOVO product: 80Y3 v: Lenovo XiaoXin CHAO5000 serial: <filter> Chassis: type: 10 
           v: Lenovo XiaoXin CHAO5000 serial: <filter> 
           Mobo: LENOVO model: LNVNB161216 v: SDK0K09938 WIN serial: <filter> UEFI: LENOVO v: 4WCN29WW date: 09/30/2017 
Battery:   ID-1: BAT0 charge: 25.6 Wh (100.0%) condition: 25.6/30.6 Wh (83.5%) volts: 8.5 min: 7.6 model: CPT-COS L16C2PB2 
           type: Li-poly serial: <filter> status: Full 
CPU:       Info: Dual Core model: Intel Core i7-7500U bits: 64 type: MT MCP arch: Amber/Kaby Lake note: check family: 6 
           model-id: 8E (142) stepping: 9 microcode: EA cache: L2: 4 MiB 
           flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 23209 
           Speed: 1100 MHz min/max: 400/3500 MHz Core speeds (MHz): 1: 1100 2: 1100 3: 1100 4: 1100 
           Vulnerabilities: Type: itlb_multihit status: KVM: VMX disabled 
           Type: l1tf mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable 
           Type: mds mitigation: Clear CPU buffers; SMT vulnerable 
           Type: meltdown mitigation: PTI 
           Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via prctl and seccomp 
           Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer sanitization 
           Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional, IBRS_FW, STIBP: conditional, RSB filling 
           Type: srbds mitigation: Microcode 
           Type: tsx_async_abort status: Not affected 
Graphics:  Device-1: Intel HD Graphics 620 vendor: Lenovo driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:5916 
           class-ID: 0300 
           Device-2: Acer EasyCamera type: USB driver: uvcvideo bus-ID: 1-8:3 chip-ID: 5986:1127 class-ID: 0e02 
           serial: <filter> 
           Display: x11 server: X.Org 1.20.13 compositor: kwin_x11 driver: loaded: amdgpu,ati,intel unloaded: modesetting 
           alternate: fbdev,vesa display-ID: :0 screens: 1 
           Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2") s-diag: 582mm (22.9") 
           Monitor-1: eDP1 res: 1920x1080 hz: 60 dpi: 143 size: 340x190mm (13.4x7.5") diag: 389mm (15.3") 
           OpenGL: renderer: Mesa Intel HD Graphics 620 (KBL GT2) v: 4.6 Mesa 21.1.6 direct render: Yes 
Audio:     Device-1: Intel Sunrise Point-LP HD Audio vendor: Lenovo driver: snd_hda_intel v: kernel alternate: snd_soc_skl 
           bus-ID: 00:1f.3 chip-ID: 8086:9d71 class-ID: 0403 
           Sound Server-1: ALSA v: k5.10.59-1-MANJARO running: yes 
           Sound Server-2: JACK v: 1.9.19 running: no 
           Sound Server-3: PulseAudio v: 15.0 running: yes 
           Sound Server-4: PipeWire v: 0.3.33 running: no 
Network:   Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Lenovo driver: r8169 v: kernel port: 3000 
           bus-ID: 02:00.0 chip-ID: 10ec:8168 class-ID: 0200 
           IF: enp2s0 state: down mac: <filter> 
           Device-2: Intel Dual Band Wireless-AC 3165 Plus Bluetooth driver: iwlwifi v: kernel port: 3000 bus-ID: 03:00.0 
           chip-ID: 8086:3166 class-ID: 0280 
           IF: wlp3s0 state: up mac: <filter> 
Bluetooth: Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8 bus-ID: 1-7:2 chip-ID: 8087:0a2a 
           class-ID: e001 
           Report: rfkill ID: hci0 rfk-id: 3 state: down bt-service: enabled,running rfk-block: hardware: no software: yes 
           address: see --recommends 
RAID:      Hardware-1: Intel 82801 Mobile SATA Controller [RAID mode] driver: ahci v: 3.0 port: 5060 bus-ID: 00:17.0 
           chip-ID: 8086.282a rev: 21 class-ID: 0104 
Drives:    Local Storage: total: 1.03 TiB used: 26.3 GiB (2.5%) 
           SMART Message: Unable to run smartctl. Root privileges required. 
           ID-1: /dev/sda maj-min: 8:0 vendor: SK Hynix model: HFS128G3BTND-N210A size: 119.24 GiB block-size: physical: 512 B 
           logical: 512 B speed: 6.0 Gb/s type: SSD serial: <filter> rev: 1P10 scheme: GPT 
           ID-2: /dev/sdb maj-min: 8:16 vendor: Western Digital model: WD10SPZX-24Z10T0 size: 931.51 GiB block-size: 
           physical: 4096 B logical: 512 B speed: 6.0 Gb/s type: HDD rpm: 5400 serial: <filter> rev: 1A01 scheme: GPT 
Partition: ID-1: / raw-size: 19.99 GiB size: 19.51 GiB (97.59%) used: 4.65 GiB (23.8%) fs: ext4 dev: /dev/sda4 maj-min: 8:4 
           ID-2: /boot/efi raw-size: 261 MiB size: 260.8 MiB (99.94%) used: 32.5 MiB (12.5%) fs: vfat dev: /dev/sda1 
           maj-min: 8:1 
           ID-3: /home raw-size: 40 GiB size: 39.08 GiB (97.69%) used: 10.98 GiB (28.1%) fs: ext4 dev: /dev/sdb4 maj-min: 8:20 
           ID-4: /usr raw-size: 30 GiB size: 29.36 GiB (97.87%) used: 10.56 GiB (36.0%) fs: ext4 dev: /dev/sdb5 maj-min: 8:21 
Swap:      Kernel: swappiness: 60 (default) cache-pressure: 100 (default) 
           ID-1: swap-1 type: partition size: 8 GiB used: 70.9 MiB (0.9%) priority: -2 dev: /dev/sdb6 maj-min: 8:22 
Sensors:   System Temperatures: cpu: 44.0 C mobo: N/A gpu: amdgpu temp: 40.0 C 
           Fan Speeds (RPM): N/A 
Info:      Processes: 202 Uptime: 4h 42m wakeups: 4 Memory: 3.62 GiB used: 2.26 GiB (62.4%) Init: systemd v: 248 
           tool: systemctl Compilers: gcc: 11.1.0 Packages: pacman: 1285 lib: 331 flatpak: 0 Shell: Zsh v: 5.8 
           running-in: konsole inxi: 3.3.06 

And I also tried sudo showkey, it showed like below:

$ sudo showkey
[sudo] password for littleye233: 
kb mode was ?UNKNOWN?
[ if you are trying this under X, it might not work
since the X server is also reading /dev/console ]

press any key (program terminates 10s after last keypress)...
^[[17~keycode  64 press  # Fn+F6
keycode  64 release
^[[15~keycode  63 press  # Fn+F5
keycode  63 release
^[[18~keycode  65 press  # Fn+F7
keycode  65 release
^[[15~keycode  63 press  # F5
keycode  63 release
# Here I pressed a single `F6` but nothing happened.
keycode  29 press        # Ctrl+C
^Ccaught signal 2, cleaning up...

So this problem is raised by whether hardware or software? And can it be fixed? Any reply will be appreciated.

It could be related to joystick package
Have a look :

Also :
AUR (en) - udev-joystick-blacklist or Install joystick-nonconfigurable on Manjaro Linux using the Snap Store | Snapcraft

What is supposed to do? Did you set it for a specific command? By default Plasma has no predefined atribute for F6 key.

As expected … in some models used to manage the sound volume …

disable FN Keys in your Lenovo Bios.

What is supposed to do? Did you set it for a specific command? By default Plasma has no predefined atribute for F6 key.

It is expected to toggle touchpad ON/OFF when pressing F6. It works on Windows without other manual settings.

I just tried to install that snap package and follow the instructions on the git repo, but it seems nothing has changed.

I think on Windows, for you laptop model, the Fn can be turned on to work as if is pressed all the time, while in linux, you have to press it in combination … hence Fn+F6 is turning the touchpad off as on windows!?!?

Ok, and like @forty said, have you check your bios if you’ve got a Fn option?

During your manjaro installation, calamares ask you for type of keyboard (generic 105 key and a lot of specific brand, did you install by default or try to look in the list if your model is present, for example i have a dell latitude notebook and i choose the right keyboard during installation.
PS : you can change the type of keyboard in the settings, no need to reinstall.

If it’s still not working, @bogdancovaciu point to the right direction, it’s a windows trick, so just change your habits and all will be fine.

1 Like

In fact I can’t find related settings of disabling Fn keys. Maybe I will try to upgrade my BIOS firmware.

Fn+F6 works as a normal F6 key on Windows, not to toggle the touchpad. And other Fn keys work well on Manjaro except the F6 key.

And pressing the “Fn+F6” combination is a bit inconvenient. Though “Fn+F6” can be a shortcut, I prefer only “F6” to the combination if possible.

In fact I can’t find related settings of disabling Fn keys. Maybe I will try to upgrade my BIOS firmware.

I didn’t take much care of the keyboard type, just in default settings. I think my laptop keyboard is like the generic keyboard with three media control keys.

And my other Fn keys work well except the F6 key.

Check your shortcuts on KDE, just search for keyboard shortcuts and see what’s being mapped.
While writing this i badly messed up my shortcuts so be carefully.
BTW is they are way to re-sync my keyboard shortcuts?

KDE shortcuts config is stored under:

So in case you want to restore your custom shortcuts, replace that file from a backup (if you have one).
Otherwise, restore them to default (Shortcuts > Defaults).

1 Like

Please install xev via

pamac install xorg-xev

Then run it via xev from terminal. A white square opens and in the terminal you will get messages for each key press. Please check if pressing the F6 key gives you such a message, and if so, post it here.