If your Bluetooth mouse is not working on Arch Linux, the fix is usually a combination of enabling the Bluetooth service, pairing with the correct tool, and installing the right kernel module. This guide walks through the most common causes and the exact steps to get your mouse moving again.
Why Bluetooth Mice Fail on Arch
Arch Linux is a rolling-release distribution, which means it ships with very recent kernels and Bluetooth stacks. That is great for new hardware support, but it also means that changes in the kernel, BlueZ (the official Linux Bluetooth stack), or your desktop environment can break pairing or connection. The most frequent culprits are:
- The
bluetooth.servicesystemd unit is not running. - The mouse is still paired to another device (like a phone or dongle).
- Your computer’s Bluetooth adapter is blocked by rfkill.
- The required kernel module (e.g.,
btusb) is not loaded. - You are using a desktop environment that does not have a Bluetooth applet, or the applet is not talking to BlueZ correctly.
Step 1: Check the Bluetooth Service
The first thing to do is make sure the Bluetooth daemon is actually running. In a terminal, run:
systemctl status bluetooth
If it shows inactive (dead) or failed, start it and enable it to start at boot:
sudo systemctl enable --now bluetooth
If the service fails to start, check the logs with journalctl -u bluetooth -b. A common error is a conflict with another Bluetooth manager, or the service is masked. You can unmask it with sudo systemctl unmask bluetooth.
Step 2: Unblock the Adapter with rfkill
Sometimes the Bluetooth adapter is soft-blocked by the kernel’s rfkill subsystem. This can happen after a suspend/resume cycle or if you accidentally pressed a hardware kill switch. Check the status:
rfkill list
If you see Soft blocked: yes or Hard blocked: yes, unblock it:
rfkill unblock bluetooth
For a hard block, you may need to toggle a physical switch on your laptop or use a function key (often F2, F3, or F12 with a Bluetooth icon). After unblocking, check the service again.
Step 3: Pair with the Right Tool
Arch does not come with a unified Bluetooth manager by default. Depending on your desktop environment, you have different options:
- GNOME: Use the built-in Settings > Bluetooth. If it does not work, install
gnome-bluetooth-3. - KDE Plasma: Use System Settings > Bluetooth. It relies on
bluez-qt. - XFCE/LXDE/Other: Install
blueman, a lightweight and reliable manager. - Command line: Use
bluetoothctlfor full control.
To pair with bluetoothctl, run:
bluetoothctl
Then inside the interactive prompt:
power onagent onscan onWait a few seconds, then you should see your mouse's MAC address (like
AA:BB:CC:DD:EE:FF). Then run:pair AA:BB:CC:DD:EE:FFtrust AA:BB:CC:DD:EE:FFconnect AA:BB:CC:DD:EE:FFIf the mouse asks for a PIN, try
0000(most mice use this). If it still fails, turn the mouse off and on again, then repeat.Step 4: Check Kernel Modules and Firmware
Your Bluetooth adapter needs the correct kernel module. Most Intel, Broadcom, and Realtek adapters use the
btusbmodule. Check if it is loaded:lsmod | grep btusbIf nothing shows, load it:
sudo modprobe btusbFor some Broadcom and Realtek chips, you also need firmware files. These are usually in the
linux-firmwarepackage. Install it if you have not:sudo pacman -S linux-firmwareAfter installing, reboot. If your adapter still is not recognized, check
dmesg | grep -i bluetoothfor errors. A common error isfirmware: failed to load brcm/BCM-XXXX.hcd, which means you need to manually extract the firmware from a Windows driver or use a package likebrcmfmac-firmwarefrom the AUR.Step 5: Reset the Mouse and Adapter
If pairing still fails, try a full reset. Turn off the mouse, remove its battery (or unplug it), wait 10 seconds, and put it back. Then on your computer:
sudo systemctl restart bluetoothAlso, remove the mouse from your system's list of paired devices (in your Bluetooth settings or with
bluetoothctl remove MAC), then pair again. Sometimes the mouse is still connected to a previous host, and it will not connect to a new one until it is reset.Step 6: Alternative Connection Methods
If Bluetooth is still not working, consider these alternatives:
- Use a USB receiver: Most wireless mice come with a 2.4 GHz USB dongle. It is plug-and-play and avoids Bluetooth issues entirely.
- Use a USB cable: If your mouse has a wired mode, plug it in and use it while you troubleshoot.
- Try a different Bluetooth adapter: A cheap USB Bluetooth 5.0 dongle is often more compatible than built-in adapters.
These alternatives are not a permanent fix, but they let you keep working while you solve the underlying issue.
Frequently Asked Questions
Why does my mouse connect but then disconnect after a few seconds?
This often happens when the mouse is still paired to another device and is trying to reconnect to it. Turn off the other device, or reset the mouse. It can also be caused by power management: the kernel may be suspending the Bluetooth adapter. Check with journalctl -u bluetooth -b for messages about disconnects, and disable USB autosuspend for the adapter with sudo tlp or powertop if you have them.
How do I remove a paired device from the command line?
Use bluetoothctl. Run bluetoothctl to enter the interactive prompt, then type devices to list paired devices. Find the MAC address of the mouse and type remove MAC_ADDRESS. This clears the pairing information on the computer side.
Do I need to install anything extra for Bluetooth on Arch?
Yes, you need at least bluez and bluez-utils. The bluez package provides the daemon, and bluez-utils provides bluetoothctl. Most desktop environments also need a front-end like blueman or gnome-bluetooth. If you are using a minimal window manager, you may need to install these manually.
My mouse works on Windows but not on Arch. What is different?
Windows ships with proprietary drivers and a different Bluetooth stack. On Arch, the open-source BlueZ stack may not support every feature of your mouse, especially if it has a special dongle or uses a non-standard HID profile. Check the Arch Wiki for your specific mouse model, and try using the USB receiver instead of Bluetooth if you have one.
Why does my mouse work after a reboot but not after suspend?
This is a common power management issue. When the system suspends, the Bluetooth adapter may not resume correctly. Try restarting the Bluetooth service after resume with systemctl restart bluetooth, or disable Bluetooth power saving in your power management tool. Some users fix it by adding a systemd service that restarts Bluetooth on resume, but the simplest workaround is to toggle Bluetooth off and on in your desktop settings.
Related
General steps for current mainstream versions; menus can differ by device and version. See the disclaimer or report an error.
More in this bed
- Good Password: How to Create One
- Remove Write Protection on External Hard Drive
- How to Disable Chkdsk at Windows Startup
- Restore WiFi and Secure Your Netgear Router After Reset
- Fix Error 0x80004005: Top Easy Ways That Work
- How to Cool Down an Overheating Laptop