You are not logged in.

#1 2026-02-03 06:04:17

hungdq
Member
Registered: 2022-05-28
Posts: 4

Fix F-Row and Fn key issues on Luminkey 80 for Linux / Arch Linux

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 up

2. The Root Cause: hid_apple driver
Because the wireless chip identifies itself as an Apple device, Linux loads the

hid_apple

kernel module. By default (or due to certain configs), this module sets

fnmode

to 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
3

3. 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/fnmode

Mode 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.conf

Add this line:

options hid_apple fnmode=2

Then, regenerate your initramfs to ensure the setting is applied early during boot:

sudo mkinitcpio -P

4. 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

Board footer

Powered by FluxBB