This blog post was really helpful to get familiar with a complementary Bluetooth stack. Here’s the solution which I have changed and added to it according to my experience:
Install bluez Bluetooth stack (like a full set of Bluetooth drivers which allows the Linux OS direct access to Bluetooth):
sudo apt-get install bluez*
Optional: install Bluetooth manager, Blueman:
sudo apt-get install blueman
Load USB Bluetooth driver (Bluetooth dongle):
modprobe btusb
Restart bluetooth
service:
sudo systemctl restart bluetooth
Add controller mode setting to be dual
Bluetooth configuration /etc/bluetooth/main.conf
change this mode to bredr
or le
in case you have problem with your AirPods:
ControllerMode = bredr
Now try to pair your AirPods!
The source of the issue is that Ubuntu’s Bluetooth driver doesn’t cover AirPods’ one.