You are not logged in.
If you are using the Luminkey 80 (Luminkey80) (or similar boards using the 05ac:024f Apple Vendor ID for USB Wireless 2.4G or Bluetooth) on Arch Linux, you might find that the F-row defaults to Multimedia keys (Volume) and the Fn key doesn't work as expected. In many cases, you cannot even trigger F11/F12 by holding the Fn key. Here is why it happens and how to fix it
1. The Symptoms
Wired Mode (QMK): Works perfectly. F11 is F11, Fn+F11 is Volume Down.
2.4G / Bluetooth Mode: F11 sends volumedown by default (swapped with F-row). Crucially, holding the Fn key often fails to produce the F11 signal at all
Keyd/Evtest output: Shows the device identified as Apple Inc. Magic Keyboard (05ac:024f)
LK80 2.4G 05ac:024f:82c276a7 volumeup up
LK80 2.4G 05ac:024f:82c276a7 volumeup down
LK80 2.4G 05ac:024f:82c276a7 volumeup up
LK80 2.4G 05ac:024f:82c276a7 volumeup down
LK80 2.4G 05ac:024f:82c276a7 volumeup up
LK80 2.4G 05ac:024f:82c276a7 volumeup down
LK80 2.4G 05ac:024f:82c276a7 volumeup up2. The Root Cause: hid_apple driver
Because the wireless chip identifies itself as an Apple device, Linux loads the
hid_applekernel module. By default (or due to certain configs), this module sets
fnmodeto a value that overrides your keyboard's internal logic
In my case, fnmode was set to 3, which aggressively forces multimedia keys and messes up the Fn-key layer interpretation for non-Apple hardware
cat /sys/module/hid_apple/parameters/fnmode
33. The Solution
Step 1: Immediate Fix (Testing)
Run the following command to switch the Fn mode to "Function keys first":
echo 2 | sudo tee /sys/module/hid_apple/parameters/fnmodeMode 2 forces the F-row to act as standard F1-F12 keys. The keyboard's internal firmware will then handle the Fn combo correctly to send media codes
Step 2: Persistent Fix (Survives Reboot)
To make this change permanent, create a modprobe configuration file:
sudo vim /etc/modprobe.d/hid_apple.confAdd this line:
options hid_apple fnmode=2Then, regenerate your initramfs to ensure the setting is applied early during boot:
sudo mkinitcpio -P4. Conclusion
Once set to Mode 2, Linux stops trying to "translate" the keys like a Magic Keyboard and lets the Luminkey 80 firmware do its job. Your F-row and Fn combinations will now work exactly like they do in wired mode.
Last edited by hungdq (2026-02-03 09:40:29)
Offline