CachyOS Bluetooth Configuration - ryzendew/Linux-Tips-and-Tricks GitHub Wiki

CachyOS Bluetooth Configuration Guide

Complete beginner-friendly guide to configuring Bluetooth on CachyOS, including device pairing, audio setup, and troubleshooting.


Table of Contents

  1. Understanding Bluetooth
  2. Installing Bluetooth
  3. Pairing Devices
  4. Bluetooth Audio
  5. Bluetooth Troubleshooting

Understanding Bluetooth

What is Bluetooth?

Bluetooth is wireless technology for short-range communication.

What it does:

  • Connect devices: Wireless device connection
  • Audio: Bluetooth headphones, speakers
  • Input devices: Keyboards, mice
  • File transfer: Transfer files between devices

Why configure:

  • Wireless freedom: No cables needed
  • Convenience: Easy device connection
  • Audio: Wireless audio devices
  • Productivity: Wireless input devices

Installing Bluetooth

Install Bluetooth Stack

Install BlueZ:

sudo pacman -S bluez bluez-utils

What these packages do:

  • bluez: Bluetooth protocol stack
  • bluez-utils: Bluetooth utilities
  • Required for Bluetooth

Start Bluetooth:

sudo systemctl enable --now bluetooth.service

What this does:

  • Enables Bluetooth at boot
  • Starts Bluetooth immediately
  • Makes Bluetooth available

Check status:

sudo systemctl status bluetooth

What this does:

  • Shows Bluetooth status
  • Verifies it's running
  • Should show "active (running)"

Pairing Devices

Using bluetoothctl

Launch bluetoothctl:

bluetoothctl

What this does:

  • Opens Bluetooth control interface
  • Command-line Bluetooth management
  • Interactive tool

Pairing Process

In bluetoothctl:

1. Turn on Bluetooth:

power on

What this does:

  • Powers on Bluetooth adapter
  • Enables Bluetooth
  • Required for pairing

2. Enable agent:

agent on

What this does:

  • Enables pairing agent
  • Handles pairing requests
  • Required for pairing

3. Set agent as default:

default-agent

What this does:

  • Sets default pairing agent
  • Automates pairing
  • Makes pairing easier

4. Start scanning:

scan on

What this does:

  • Scans for devices
  • Lists nearby devices
  • Shows device addresses

5. Pair device:

pair [device MAC address]

What this does:

  • Pairs with device
  • May require PIN
  • Completes pairing

6. Trust device:

trust [device MAC address]

What this does:

  • Trusts device
  • Auto-connects in future
  • Convenient for regular use

7. Connect device:

connect [device MAC address]

What this does:

  • Connects to device
  • Activates device
  • Ready to use

8. Exit:

exit

GUI Pairing

GNOME:

  1. Open Settings
  2. Go to "Bluetooth"
  3. Turn on Bluetooth
  4. Select device
  5. Click "Connect"

KDE Plasma:

  1. Open System Settings
  2. Go to "Bluetooth"
  3. Turn on Bluetooth
  4. Select device
  5. Click "Pair"

XFCE:

  1. Install blueman:
    sudo pacman -S blueman
    
  2. Launch Blueman
  3. Pair devices

Bluetooth Audio

Audio Setup

Install audio support:

# For PulseAudio
sudo pacman -S pulseaudio-bluetooth

# For PipeWire
sudo pacman -S pipewire-pulse

What this does:

  • Enables Bluetooth audio
  • Supports A2DP profile
  • Required for audio devices

Restart audio service:

# PulseAudio
pulseaudio -k
pulseaudio --start

# PipeWire
systemctl --user restart pipewire pipewire-pulse

What this does:

  • Restarts audio service
  • Loads Bluetooth support
  • Makes audio available

Using Bluetooth Audio

After pairing audio device:

  1. Device should appear in audio settings
  2. Select as audio output
  3. Audio routes to Bluetooth device

Using pavucontrol:

pavucontrol

What this does:

  • Opens audio control
  • Go to "Configuration" tab
  • Select Bluetooth device profile
  • Go to "Output Devices" tab
  • Set as default

Or via command:

pactl set-default-sink "Bluetooth Device Name"

What this does:

  • Sets Bluetooth device as default
  • Routes audio to Bluetooth
  • Immediate audio routing

Bluetooth Troubleshooting

Bluetooth Not Working

Check Bluetooth service:

sudo systemctl status bluetooth

What this does:

  • Shows service status
  • Verifies it's running
  • Helps troubleshoot

Restart Bluetooth:

sudo systemctl restart bluetooth

What this does:

  • Restarts Bluetooth service
  • May fix issues
  • Refreshes connection

Check Bluetooth adapter:

bluetoothctl show

What this does:

  • Shows adapter information
  • Verifies adapter is working
  • Helps identify issues

Device Not Pairing

Check if device is discoverable:

  • Put device in pairing mode
  • Check device manual
  • Ensure device is ready

Remove old pairing:

bluetoothctl
remove [device MAC address]

What this does:

  • Removes old pairing
  • Clears pairing data
  • Allows re-pairing

Pair again:

bluetoothctl
pair [device MAC address]

What this does:

  • Attempts pairing again
  • May work after removal
  • Fresh pairing attempt

Audio Not Working

Check audio device:

pactl list short sinks

What this does:

  • Lists audio devices
  • Shows if Bluetooth device appears
  • Verifies audio setup

Check Bluetooth audio profile:

pactl list cards | grep -A 20 "bluez"

What this does:

  • Shows Bluetooth card info
  • Lists available profiles
  • Helps troubleshoot

Set A2DP profile:

pactl set-card-profile [card number] a2dp_sink

What this does:

  • Sets A2DP profile
  • Enables high-quality audio
  • May fix audio issues

Additional Resources


Summary

This guide covered:

  1. Understanding Bluetooth - What Bluetooth is
  2. Installing Bluetooth - Installing and starting Bluetooth
  3. Pairing devices - Using bluetoothctl and GUI
  4. Bluetooth audio - Setting up audio devices
  5. Troubleshooting - Common Bluetooth issues

Key Takeaways:

  • Install bluez for Bluetooth support
  • Start bluetooth service
  • Use bluetoothctl for command-line pairing
  • Use GUI tools for easier pairing
  • Install audio support for Bluetooth audio
  • Set A2DP profile for high-quality audio
  • Trust devices for auto-connect

This guide is based on the CachyOS Wiki and Arch Linux Wiki and expanded with detailed explanations for beginners. For the most up-to-date Bluetooth information, always refer to the official documentation.