Intel AX200/AX211 and bluetooth keyboard 1s input delay

Hi! After daily-driving Ubuntu 24.04 LTS for over a year, I’ve decided to give Fedora a shot after a long time, but I’ve been running into stuttering/1s-input-delay with my bluetooth keyboard (Anne Pro 2) with Intel AX200 (and AX211) both in Live ISO and post-installation.

What I’ve tried so far

  • I’ve tested this across 2 devices and two distros, versions per distro.
  • I’ve tried downgrading Fedora to the closest kernel matching Ubuntu 24.04 (where this BT keyboard works): 6.17.1-300.fc43.
  • Tried modifying power settings of BT adapter.
    • Tried switching the power mode from Balaned to Performance too.
  • Tried using BT keyboard without WiFi enabled.
  • Tried using external BT dongle - also works without delays (once it pairs, as this is a bit problematic too), but consumes my only available USB-A port.
  • Checked UEFI to ensure there’s nothing that would disable/interfere with onboard BT module.
  • Restarting bluetooth service, re-pairing keyboard, or reloading kernel modules did not work.

I feel quite clueless on how to proceed further with this.

Devices + kernels

Devices:

  • my own with Intel AX200,
  • a friend’s device with Intel AX211 (I cannot modify it though, as it was just borrowed; tested only in the Live ISO mode).

Distros and their kernel versions:

  • Fedora 43 - 6.17.1-300.fc43
  • Fedora 42 - 6.14.0-63.cf42
  • Ubuntu 25.10 - 6.17.0-5-generic
  • Ubuntu 24.04 LTS - 6.17.0-14-generic

Device + distro tests

Now, making a comparison table of out-of-the-box bluetooth pair + testing the BT keyboard I have. All tests were performed in Live ISO mode, with exception of Fedora 43 and Ubuntu 24 where I’ve installed them on my own device.

AX200 checks:

Fedora 43 - stutter
Fedora 42 - stutter
Ubuntu 25 - stutter
Ubuntu 24 - works nicely

AX211 checks:

Fedora 43 - stutter
Fedora 42 - stutter
Ubuntu 25 - works nicely
Ubuntu 24 - works nicely

Side note: I only once got it working smoothly in Fedora 43 Live ISO, but never managed to get it to that state again, neither in Live ISO or post-install.

Tweaks & Checks I’ve done

Modify power control of AX200

root@10-0-0-125:/sys/bus/usb/devices/1-4# cat power/control 
auto
root@10-0-0-125:/sys/bus/usb/devices/1-4# cat power/autosuspend_delay_ms 
2000

root@10-0-0-125:/sys/bus/usb/devices/1-4# echo on > power/control 
root@10-0-0-125:/sys/bus/usb/devices/1-4# echo -1 > power/autosuspend_delay_ms

Reload kernel modules

root@10-0-0-125:/sys/bus/usb/devices/1-4# systemctl stop bluetooth.service 
root@10-0-0-125:/sys/bus/usb/devices/1-4# modprobe -rv btusb btintel 
rmmod btusb
rmmod btmtk
rmmod btbcm
rmmod btintel
rmmod btrtl
root@10-0-0-125:/sys/bus/usb/devices/1-4# modprobe -v btusb btintel 
insmod /lib/modules/6.17.1-300.fc43.x86_64/kernel/drivers/bluetooth/btmtk.ko.xz 
insmod /lib/modules/6.17.1-300.fc43.x86_64/kernel/drivers/bluetooth/btbcm.ko.xz 
insmod /lib/modules/6.17.1-300.fc43.x86_64/kernel/drivers/bluetooth/btintel.ko.xz 
insmod /lib/modules/6.17.1-300.fc43.x86_64/kernel/drivers/bluetooth/btrtl.ko.xz 
insmod /lib/modules/6.17.1-300.fc43.x86_64/kernel/drivers/bluetooth/btusb.ko.xz btintel
root@10-0-0-125:/sys/bus/usb/devices/1-4# systemctl start bluetooth.service

Check for malformed MSFT events

root@10-0-0-125:/sys/bus/usb/devices/1-4# dmesg | grep -iE 'btintel|Bluetooth: hci0|ibt-|Firmware version|Malformed MSFT'
[    4.966414] amdgpu 0000:04:00.0: amdgpu: Found VCN firmware Version ENC: 1.24 DEC: 8 VEP: 0 Revision: 7
[   14.666574] iwlwifi 0000:02:00.0: loaded firmware version 77.30b1cbd8.0 cc-a0-77.ucode op_mode iwlmvm
[   14.756297] Bluetooth: hci0: Found device firmware: intel/ibt-20-1-3.sfi
[   14.756321] Bluetooth: hci0: Boot Address: 0x24800
[   14.756324] Bluetooth: hci0: Firmware Version: 193-33.24
[   14.756326] Bluetooth: hci0: Firmware already loaded
[   14.764046] Bluetooth: hci0: HCI LE Coded PHY feature bit is set, but its usage is not supported.
[ 2154.607819] btusb: unknown parameter 'btintel' ignored
[ 2154.646072] Bluetooth: hci0: Found device firmware: intel/ibt-20-1-3.sfi
[ 2154.646090] Bluetooth: hci0: Boot Address: 0x24800
[ 2154.646093] Bluetooth: hci0: Firmware Version: 193-33.24
[ 2154.646095] Bluetooth: hci0: Firmware already loaded
[ 2154.651762] Bluetooth: hci0: HCI LE Coded PHY feature bit is set, but its usage is not supported.

Compare Live ISO and post-install bluez and kernel versions

root@10-0-0-125:/sys/bus/usb/devices/1-4# rpm -q bluez linux-firmware kernel-core
bluez-5.84-2.fc43.x86_64
linux-firmware-20251021-1.fc43.noarch
kernel-core-6.17.1-300.fc43.x86_64
root@10-0-0-125:/sys/bus/usb/devices/1-4# bluetoothctl -v
bluetoothctl: 5.84

They match 1:1, haven’t installed any updated to my system yet.

I’d appreciate any further help with this. Thanks in advance!

Okay, I’ve found something interesting - after clearing bluetooth pairings in the AnnePro2 and re-pairing it, it works seamlessly until I restart my laptop. However, after restart, it goes back to the laggy behavior. I can’t imagine doing this cycle every time I start a new day, especially that it would require pairing all my other devices again and again, but at least I can reproduce the desired state now. Any feedback on how to proceed further is welcome.