Подключение Bluetooth-гарнитуры в Linux
Для подключения Bluetooth-гарнитуры необходим bluetooth адаптер вставленный в USB порт или встроенный в ноутбуке. Сопряжение, подключение и настройка будет показана через утилиту bluetoothctl из пакета BlueZ на примере беспроводной гарнитуры LC-B41 и операционной системы Debian 12. Аналогично настраивается в Ubuntu и других Linux дистрибутивах.
1. Включение Bluetooth
Подключаем USB Bluetooth адаптер в порт компьютера и проверяем что он определен в системе.
lsusb
Если используется встроенный адаптер, то включаем его в ноутбуке и проверяем что он определен в системе. Он с высокой вероятностью будет подключен по PCIe шине.
lspci
USB Bluetooth адаптер определен в системе.
2. Установка BlueZ и модулей
Установка производится от root пользователя
su -
Устанавливаем BlueZ для возможности использования стека Bluetooth в Linux. В пакете также содержится утилита bluetoothctl через которую будет происходит подключение беспроводной гарнитуры.
apt install bluez
Устанавливаем модуль Bluetooth для PulseAudio. Это даст возможность управлять звуком гарнитуры через звуковой сервер PulseAudio.
apt install pulseaudio-module-bluetooth
Если используется PipeWire (по умолчанию в Debian 12 со средой GNOME) вместо PulseAudio, то необходимые модули для работы с Bluetooth уже встроены в нем.
Дожидаемся окончание установки и можно приступать к подключению гарнитуры.
3. Подготовка Bluetooth адаптера
Запускаем утилиты bluetoothctl
bluetoothctl
Включаем Bluetooth адаптер, хотя он должен быть уже включен по умолчанию.
power on
Включаем агента
agent on
Используем агента по умолчания для сопряжения устройств
default-agent
Bluetooth адаптера готов к поиску и сопряжению с гарнитурой.
4. Поиск Bluetooth-гарнитуры
Запускаем сканирование, будут выводится все найденные устройства в зоне досягаемости.
scan on
Включаем Bluetooth-гарнитуру, и ждем когда она появится в списке найденных устройств.
Bluetooth-гарнитура успешно найдена. Для сопряжения и подключения гарнитуры необходим её MAC-адрес (в моем случае F0:48:6F:07:06:5C).
Гарнитура может передавать только MAC-адрес без передачи названия. Тогда надо будет ее отсеять примерно по времени включения. Также бывает что с первого раза гарнитура не находится, тогда необходимо выключить/включить Bluetooth-гарнитуру.
Если во время сканирования было очень много устройств, изменения статуса от них и гарнитуру сложно найти, то можно остановить сканирование. Подождать немного, и будут выводится строки с удалением найденных устройств для сопряжения во время сканирования. Среди них также можно найти гарнитуру. Останавливаем сканирование
scan off
Когда устройство было удалено, сооружение с ним будет невозможно. Необходимо вновь запустить поиск Bluetooth устройств командой scan on, и дождатся когда гарнитура будет вновь найдена.
5. Подключение Bluetooth-гарнитуры
Перед подключением необходимо провести сопряжение Bluetooth-гарнитуры с адаптером Bluetooth.
Сопрягаем гарнитуру указывая её ранее найденный MAC-адрес
pair F0:48:6F:07:06:5C
Указываем что можно доверять данной гарнитуре, чтобы при переподключение она автоматически сопрягалась и подключалась.
trust F0:48:6F:07:06:5C
Подключаемся к Bluetooth-гарнитуре
connect F0:48:6F:07:06:5C
Bluetooth-гарнитуре успешно подключена.
Теперь при включении беспроводной гарнитуры она будет автоматически подключатся к компьютеру.
6. Выбор профиля Bluetooth-гарнитуры
После успешного подключения открываем настройки управления звука в зависимости от среды рабочего стола и видим там в списке звуковых устройств беспроводную гарнитуру с возможностью выбрать Bluetooth-профиль. На выбор доступны только Bluetooth-профили поддерживаемые подключенной гарнитурой.
Основные профили Bluetooth:
- A2DP - передача двухканального стерео звука высокого качества на гарнитуру, микрофон при этому не работает.
- HFP - передача и прием моно звука в обе стороны.
- HSP - расширение возможностей HFP с возможностью передача двухканального стерео звука.
У меня гарнитура LC-B41 поддерживает только A2DP и HFP профили. Я использую A2DP профиль для общения, так как использую настольный микрофон, который отлично ловит голос из любой точки комнаты. А вот качество микрофона через HFP профиль очень низкое…
7. Отключение автоматического перехода на HFP/HSP профиль
Некоторые приложение голосового общения (Mumble, Discord, TeamSpeak и другие) могут автоматически переключать профиль беспроводной гарнитуры на HFP/HSP в PulseAudio. При использовании PipeWire переключение профиля не происходит.
Для того чтобы отключить автоматический переход на HFP/HSP профиль в PulseAudio, вносим изменения в файл /etc/pulse/default.pa
nano /etc/pulse/default.pa
Находим строку запуска модуля module-bluetooth-policy
load-module module-bluetooth-policy
и добавляем параметр auto_switch=false
load-module module-bluetooth-policy auto_switch=false
Сохраняем файл и перезапускаем PulseAudio
pulseaudio -k
Проверяем что профиль больше автоматически не переключается.