My Bluetooth isn’t working. It’s not even detected by the rfkill list command. Since installing various Linux distributions, I’ve had persistent Wi-Fi issues. To fix those, I used this repository: repo: https://github.com/lwfinger/rtw88.
Important: This rtw88 repository is for Wi-Fi only. The kernel drivers btusb and btrtl (located in the drivers/bluetooth directory) are used for Realtek Bluetooth devices.
While Bluetooth works after manually loading btusb, it doesn’t load automatically. Here’s my question:
- How can I configure
btusbto load automatically at boot? - Alternatively, what might be causing
btusbnot to load automatically?
Having wifi and Bluetooth issues sucks!
I don’t know why it’s not loading automatically. Maybe something is blacklisting that driver? You could dmesg | grep Bluetooth and see what it might show.
Starting it at boot should be easy though.
create a new configuration file in /etc/modules-load.d/. This directory is specifically for loading kernel modules during the boot process. You can name the file something descriptive, like btusb.conf or whyisfuckingbluetoothstillaproblemin2024.conf
Inside the file, add the name of the module you wish to load automatically. In your case, you only need to write btusb on a new line. Save and reboot and it should be loaded.
You can check with: lsmod | grep btusb
I tried your suggestions, but the issue persists.
The
btusbmodule is blacklisted because the Wi-Fi module (rtw88_8822be) doesn’t work whenbtusbis loaded at boot time. It seemsrtw88_8822beandbtusbhave a conflict and can’t be loaded together.My suspicion is that the
ideapad_laptopmodule isn’t properly disabling Wi-Fi during shutdown, causing this conflict. This could be why thertw88_8822bemodule is needed. Unfortunately, resolving this conflict might be complex and may not have a simple solution.Thanks though.
Interesting.
A quick and dirty way to do it on each boot is to run a script on a Cron job or set up a system d service that only loads it after 5 minutes.
sleep 300 modprobe btusbThat’s not an ideal solution by any stretch but it might bridge the gap for now…

