Bluetooth headset (Русский)
Состояние перевода: На этой странице представлен перевод статьи Bluetooth headset. Дата последней синхронизации: 4 декабря 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.
На данный момент Arch Linux поддерживает профиль A2DP (Аудио выход) для беспроводного проигрывания аудио прямо с обычной установкой.
Наушники через Pipewire
PipeWire выступает прямой заменой PulseAudio и даёт лёгкий способ установки Bluetooth-наушников. Он имеет поддержку A2DP-профилей из коробки с использованием кодеков SBC/SBC-XQ, AptX, LDAC или AAC, а также HFP/HSP.
Демон запустится автоматически как пользовательская служба. Используйте pavucontrol или настройки вашего окружения рабочего стола для конфигурации. Подробее смотрите PipeWire (Русский)#Устройства Bluetooth.
Отчёт об уровне заряда батареи
Чтобы узнать текущий заряд батареи ваших наушников, демон bluetoothd должен быть запущен с экспериментальными возможностями.
Это можно сделать, создав замещение файла юнита bluetooth.service и дописав в строке ExecStart опцию -E . После его создания перезапустите службу.
В качестве альтернативы можно создать drop-in файл для службы bluetooth.service со следующим содержимым:
/etc/systemd/system/bluetooth.service.d/override.conf
[Service] ExecStart= ExecStart=/usr/lib/bluetooth/bluetoothd --experimental
После его создания перезапустите службу.
Наушники через Bluez5/PulseAudio
Установите пакеты pulseaudio-alsa , pulseaudio-bluetooth и bluez-utils — последний предоставляет инструмент bluetoothctl .
Примечание: Перед продолжением убедитесь, что Bluetooth-устройство не заблокировано через rfkill.
Настройка через командную строку
Мы будем использовать утилиту командноу строки bluetoothctl для сопряжения и подключения. Более детальное описание и решение проблем смотрите в основной статье Bluetooth (Русский).
Запустите bluetoothctl:
$ bluetoothctl
Вы попадёте в его командную строку. Затем введите:
[bluetooth]# power on [bluetooth]# agent on [bluetooth]# default-agent [bluetooth]# scan on
Теперь переведите ваши наушники в режим сопряжения, и компьютер вскоре должен обнаружить её. Например,
[NEW] Device 00:1D:43:6D:03:26 Lasmex LBT10
показывает устройство с названием «Lasmex LBT10» и MAC-адресом «00:1D:43:6D:03:26». Мы будем использовать этот MAC-адрес для инициации сопряжения:
[bluetooth]# pair 00:1D:43:6D:03:26
После сопряжения нужно явно подключить устройство (если это не работает, попробуйте команду trust перед попыткой подключения):
[bluetooth]# connect 00:1D:43:6D:03:26
Если возникает ошибка org.bluez.Error.Failed , попробуйте ещё раз, предварительно завершив демон PulseAudio:
$ pulseaudio -k [bluetooth]# connect 00:1D:43:6D:03:26
Наконец, если вы хотите автоматически подключаться к этому устройству в будущем:
[bluetooth]# trust 00:1D:43:6D:03:26
Если всё работает корректно, вы увидите отдельное устройство вывода в PulseAudio.
Примечание: Устройство может быть отключено по умолчанию. Выберите профиль аудио ( OFF , A2DP , HFP ) на вкладке «Конфигурация» в pavucontrol .
Теперь можно направить любое аудио на это устройство на вкладках «Проигрывание» и «Запись» в pavucontrol .
Теперь вы можете остановить сканирование и выйти из программы:
[bluetooth]# scan off [bluetooth]# exit
Автоподключение
Чтобы наушники автоматически подключались, нужно включить PulseAudio-модуль switch-on-connect. Добавьте следующие строки в /etc/pulse/default.pa :
/etc/pulse/default.pa
### Automatically switch to newly-connected devices load-module module-switch-on-connect
- Убедитесь, что ваше аудиоустройство bluetooth является доверенным (trusted), иначе повторное сопряжение окончится неудачей. Подробнее смотрите Bluetooth (Русский)#Сопряжение.
- По умолчанию адаптер Bluetooth не включается после загрузки системы. Подробнее смотрите Bluetooth (Русский)#Автоматическое включение после загрузки.
Мультимедийные кнопки
Для использования мультимедийных кнопок они могут быть перенаправлены в MPRIS, где их подхватят плееры, поддерживающие MPRIS для управления. Подробнее смотрите MPRIS#Bluetooth.
Настройка через GNOME Bluetooth
Примечание: Профиль A2DP не будет активироваться этим способом на pulseaudio 9/10 из-за бага, что приведёт к низкокачественному моно-звуку. Для возможного решения смотрите #A2DP не работает с PulseAudio.
Вы можете использовать графический фронтенд GNOME Bluetooth для лёгкой настройки наушников.
Сперва убедитесь, что служба bluetooth.service запущена.
Откройте GNOME Bluetooth и активируйте bluetooth. После сканирования устройств вы можете подключиться к наушникам, выбрав их в списке устройств. Вы можете получить доступ к настройкам звука из меню устройства. После подключения устройства в настройках звука должен появиться новый аудиовыход.
LDAC/aptX
Поддержку кодеков LDAC/aptX можно включить установкой пакетов pulseaudio-modules-bt AUR [ссылка недействительна: package not found] и libldac и перезапуском PulseAudio. Смотрите подсказки по настройке на странице проекта. Вы можете проверить используемый кодек с помощью команды:
$ pactl list | grep a2dp_codec
Решение проблем
Примечание: У многих пользователей возникают проблемы при попытках добиться работы A2DP/Bluetooth наушников. Подробнее смотрите #Переключение между HSP/HFP и A2DP.
Плохой звук / Постоянный шум / «Мутный» звук
Плохое качество звука скорее всего связано с тем, что не выбран правильный профиль. Смотрите #Переключение между HSP/HFP и A2DP для решения проблемы.
Профиль выбран, но наушники неактивны и звук не может быть перенаправлен
Это меню обманчиво доступно ещё до подключения устройства; пока оно не подключено, это меню не будет иметь никакого эффекта. Кажется, меню создаётся сразу после определения устройства.
Запустите bluetoothctl как root и подключите устройство вручную.
Сопряжение не удаётся с ошибкой AuthenticationFailed
Попробуйте включить или отключить SSPMode:
# btmgmt ssp off
# btmgmt ssp on
Может понадобиться выключить Bluetooth на время выполнения этой команды.
Сопряжение работает, но соединение не удаётся
Вы можете увидеть такую ошибку в bluetoothctl:
[bluetooth]# connect 00:1D:43:6D:03:26 Attempting to connect to 00:1D:43:6D:03:26 Failed to connect: org.bluez.Error.Failed
Для изучения проверьте статус bluetooth.service или гляньте журнал:
# journalctl -n 20
Там может оказаться примерно такое сообщение:
bluetoothd[5556]: a2dp-sink profile connect failed for 00:1D:43:6D:03:26: Protocol not available
Это может быть из-за того, что pulseaudio-bluetooth не установлен (или pulseaudio-modules-bt-git AUR [ссылка недействительна: package not found] нужно переустановить с нуля). Установите и затем перезапустите PulseAudio.
Это также может быть из-за проблем с правами доступа, особенно если запуск PulseAudio от root решает проблему. Добавьте своего пользователя в группу lp и перезапустите PulseAudio. Смотрите /etc/dbus-1/system.d/bluetooth.conf для справки.
Если перезапуск PulseAudio не помогает, возможно, требуется загрузить module-bluetooth-discover.
# pactl load-module module-bluetooth-discover
Такую же команду load-module можно добавить в /etc/pulse/default.pa .
Если всё равно не работает или ваш PulseAudio общесистемный, также загрузите эти модули (опять же, их можно прописать в default.pa или system.pa ):
module-bluetooth-policy module-bluez5-device module-bluez5-discover
Ещё может оказаться, что у владельца /var/lib/bluetooth/ нет доступа на запись. В таком случае проблема может решиться повторным сопряжением, но после перезагрузки всё опять перестанет работать. Возвращение прав на запись поможет:
# chmod -R u+w /var/lib/bluetooth
Соединение работает, но в звуке постоянные артефакты
Это скорее всего связано с тем, что Bluetooth и Wi-Fi используют один и тот же чип, одну и ту же антенну и, возможно, диапазон (2.4 ГГц). Хотя это работает без проблем в Windows, в Linux это не так.
Возможным решением является переключение вашей Wi-Fi сети на 5 ГГц, чтобы больше не возникало интерференции. Если карта/роутер не поддерживают этот диапазон, попробуйте обновить драйвера/прошивку Wi-Fi. Это работает на Realtek 8723BE с последними rtl драйверами с AUR.
Если сделать это невозможно, менее эффективным решением будет настройка размера фрагмента и задержки на выходе PulseAudio, через которые можно попытаться скомпенсировать интерференцию. Нужно выбирать разумные значения, так как эти изменения могут привести к рассинхронизации звука (например, при проигрывании видео). Для изменения задержки на порту bluetooth-наушников (например, 125000 микросекунд в данном примере):
$ pactl set-port-latency-offset headset-output 125000
где идентификатор карты можно узнать с помощью
$ pacmd list-sinks | grep -Eo 'bluez_card[^>]*'
Размер фрагмента можно установить в файле /etc/pulse/daemon.conf , изменения применятся после перезапуска PulseAudio (подробнее смотрите PulseAudio/Решение проблем#Определение номера фрагмента по умолчанию и размера буфера в PulseAudio).
Иногда может помочь добавление options ath9k btcoex_enable=1 в файл /etc/modprobe.d/ath9k.conf (с соответствующим адаптером bluetooth):
/etc/modprobe.d/ath9k.conf
# possibly fix for sound glitches options ath9k btcoex_enable=1
После этого перезагрузитесь.
Соединение работает, но не получается воспроизвести звук
Поищите в системном журнале такие сообщения:
bluetoothd[5556]: Endpoint registered: sender=:1.83 path=/MediaEndpoint/A2DPSource bluetoothd[5556]: Endpoint registered: sender=:1.83 path=/MediaEndpoint/A2DPSink
Если подобные сообщения есть, можно продолжить изучать конфигурацию PulseAudio. Если нет, то убедитесь, что соединение успешно.
При использовании GDM запускается другой экземпляр PulseAudio, который «захватывает» ваши bluetooth-соединения. Это можно предотвратить, замаскировав сокет pulseaudio для пользователя GDM:
# mkdir -p /var/lib/gdm/.config/systemd/user # ln -s /dev/null /var/lib/gdm/.config/systemd/user/pulseaudio.socket
При следующей перезагрузке второй экземпляр PulseAudio запускаться не будет.
Также может оказаться, что bluez неправильно определяет наушники как не поддерживающие a2dp. В таком случае найдите индекс bluetooth-устройства:
$ pacmd ls
Среди вывода должен быть раздел, связанный с bluetooth-наушниками, выглядящий примерно так:
$ pacmd ls
index: 2 name: driver: owner module: 27 properties: device.description = "SONY MDR-100ABN" device.string = "XX:XX:XX:XX:XX:XX" device.api = "bluez" device.class = "sound" .
Для ручного выбора профиля выполните
$ pacmd set-card-profile 2 a2dp_sink
где 2 это индекс устройства, полученный через pacmd ls .
Соединение работает, звук играет, а после неактивности заикается
Если наушники играют звук нормально до ухода в режим ожидания, а после возобновления начинает заикаться (например, если звук был приостановлен или ничего не воспроизводилось какое-то время), попробуйте отключить автоматическую приостановку входа/выхода в PulseAudio.
Некоторые пользователи сообщают об огромных задержках или даже отсутствии звука, когда Bluetooth-соединение не отправляет никаких данных. Это из-за модуля module-suspend-on-idle , который автоматически приостанавливает неактивные входы/выходы.
Чтобы отключить загрузку этого модуля, закомментируйте эту строку в используемом файле конфигурации ( ~/.config/pulse/default.pa или /etc/pulse/default.pa ):
~/.config/pulse/default.pa
### Automatically suspend sinks/sources that become idle for too long #load-module module-suspend-on-idle
Перезапустите PulseAudio для применения изменений.
UUIDs has unsupported type
В процессе сопряжения вы можете увидеть в bluetoothctl такой вывод:
[CHG] Device 00:1D:43:6D:03:26 UUIDs has unsupported type
Это сообщение очень частое и может быть проигнорировано.
Компьютер показывает устройство как сопряжённое, но это не распознаётся устройством
Это может быть из-за того, что устройство не поддерживает Bluetooth LE для сопряжения.
Попробуйте прописать настройку ControllerMode = bredr в файле /etc/bluetooth/main.conf . Смотрите [1].
Устройство подключается и затем отключается спустя мгновение
Если вы видите в журнале подобные сообщения и устройство не может подключиться или отключается вскоре после подключения:
bluetoothd: Unable to get connect data for Headset Voice gateway: getpeername: Transport endpoint is not connected (107) bluetoothd: connect error: Connection refused (111)
Это может быть из-за того, что вы уже настроили сопряжение с этим устройством в другой операционной системе с тем же Bluetooth-адаптером (например, в случае dual-booting). Некоторые устройства не могут обрабатывать несколько сопряжений с одним и тем же MAC-адресом. Смотрите Bluetooth (Русский)#Сопряжение при Dual boot для настройки сопряжения в обоих ОС.
Если другая ОС вас уже не интересует, можно просто выполнить сопряжение заново. Сперва удалите существующее сопряжение:
$ bluetoothctl [bluetooth]# devices Device XX:XX:XX:XX:XX:XX My Device [bluetooth]# remove XX:XX:XX:XX:XX:XX
Затем перезапустите bluetooth.service , включите bluetooth-адаптер, сделайте своё устройство видимым, пересканируйте устройства и выполните сопряжение с вашим устройством (смотрите основную статью). В зависимости от вашего менеджера Bluetooth может понадобиться выполнить полную перезагрузку для переподключения устройств.
В Apple AirPods маленькая громкость
Создайте drop-in файл для службы bluetooth.service со следующим содержимым:
/etc/systemd/system/bluetooth.service.d/noplugin-avrc.conf
[Service] ExecStart= ExecStart=/usr/lib/bluetooth/bluetoothd --noplugin=avrcp
Затем выполните systemctl daemon-reload , перезапустите bluetooth.service , и переподключите наушники.
Кроме того, для AirPods Pro отключите пространственный звук и включите моно в настройках вашего iPhone.
Это также может решить проблемы с некоторыми устройствами, которыми нельзя управлять через AVRCP.
Apple AirPods Pro работает с PulseAudio как выход A2DP, но не как HSP/HFP
Если AirPods Pro работает, но не может использовать HSP/HFP (в pavucontrol на вкладке Конфигурациия обычно отображается как недоступный), попробуйте перейти на pipewire-pulse .
Переход на pipewire-pulse (и перезапуск компьютера или соответствующих пользовательских служб) должен включить HSP/HFP, но также может отключить A2DP (при выборе этого профиля в pavucontrol он мгновенно отключается). Если у вас появилась такая проблема, попробуйте удалить/переименовать папку /var/lib/bluetooth :
# mv /var/lib/bluetooth /var/lib/bluetooth.bak
После этого проведите повторное сопряжение с AirPods Pro (и другими устройствами). После этого все конфигурации (HSP/HFP и A2DP) должны быть снова доступны в pavucontrol и pacmd.
Проблема с HSP: ввод и вывод bluetooth созданы, но звук не передаётся
У вас может отсутствовать прошивка или SCO (аудио протокол HSP и HFP) роутинг может быть неправильным. Смотрите [2] — прошивка для BCM20702 может быть установлена через пакет bcm20702a1-firmware AUR или bcm20702b0-firmware AUR .
Error: Failed to start discovery org.bluez.Error.InProgress
Если наушники обнаруживаются, но подключение не проходит с ошибкой «Failed to start discovery org.bluez.Error.InProgress», установите bluez-hciconfig AUR и выполните
$ hciconfig hciX up $ hciconfig hciX reset
где X это идентификатор bluetooth-устройства вашего компьютера (обычно 0).
Теперь подключение должно работать как описано в #Настройка через командную строку.
Переключение между HSP/HFP и A2DP
Это можно сделать с помощью следующей команды, где номер_карты можно узнать с помощью команды pacmd list-cards .
$ pacmd set-card-profile номер_карты a2dp_sink
Для автоматического переключения с A2DP на HSP при включении записи можно добавить auto_switch=2 к load-module module-bluetooth-policy в файле /etc/pulse/default.pa .
Подробнее о профилях смотрите документацию PulseAudio.
A2DP не работает с PulseAudio
Проблема с интерфейсом Socket
Если PulseAudio не может переключить профиль на A2DP с bluez 4.1+ и PulseAudio 3.0+, можно попробовать отключить интерфейс Socket в файле /etc/bluetooth/main.conf путём удаления строки Enable=Socket и добавления Disable=Socket .
Недоступен профиль выхода A2DP
Когда профиль вывода A2DP недоступен, становится невозможно переключиться на A2DP вывод в настройках PulseAudio или он вообще не отображается в списке. Это можно проверить с помощью pactl :
$ pactl list | grep -C2 A2DP Profiles: headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: yes) a2dp_sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 40, available: no) off: Off (sinks: 0, sources: 0, priority: 0, available: yes) Active Profile: headset_head_unit
Попытка ручного изменения профиля через pacmd также окончится неудачей.
$ pacmd set-card-profile bluez_card.C4_45_67_09_12_00 a2dp_sink Failed to set card profile to 'a2dp_sink'.
Это известная проблема Pulseaudio с версии 10.0 при подключении Bluetooth-наушников через Bluedevil или другой фронтенд BlueZ. Смотрите связанный баг-репорт.
Эта проблема также случается после сопряжения на некоторых Bluetooth-контроллерах (например, 0a12:0001, Cambridge Silicon Radio ), которые по умолчанию включают службу Handsfree или Headset — HS и не позволяют переключиться на A2DP.
- На некоторых наушниках помогает нажатие кнопок управления громкостью и воспроизведением, после чего профиль A2DP становится доступным.
- Может оказаться, что подключение наушников через bluetoothctl из пакета bluez-utils делает профиль A2DP доступным. Можно автоматизировать это каждый раз при подключении bluetooth: fix-bt-a2dpAUR (детальное описание).
[bluetooth]# connect MAC_адрес_наушников
- Ручное переключение на Bluetooth-службу AudioSink может сделать профиль A2DP и A2DP-вывод в PulseAudio доступным. Это можно сделать через blueman-manager из пакета blueman или путём регистрации UUID службы AudioSink через bluetoothctl .
$ bluetoothctl [bluetooth]# menu gatt [bluetooth]# register-service 0000110b-0000-1000-8000-00805f9b34fb [bluetooth]# quit
- Отключите профиль Headset
/etc/bluetooth/main.conf
[General] Disable=Headset
- Включите поддержку MultiProfile. Это может помочь для наушников, которые поддерживают как A2DP, так и Headset.
/etc/bluetooth/main.conf
[General] MultiProfile=multiple
- Иногда никакой из предыдущих шагов не помогает. Возможно, вы безрезультатно пытались перезагрузить и выключить Bluetooth, а затем снова включить его. В таком случае попробуйте перезапустить службу bluetooth.service .
- Замена pulseaudio-bluetooth на pulseaudio-modules-btAUR [ссылка недействительна: package not found] или pulseaudio-modules-bt-gitAUR [ссылка недействительна: package not found] , которые предоставляют дополнительные Bluetooth-кодеки, может помочь.
- На некоторых моделях наушников с возможностью управления звуком профиль A2DP необходимо включить, нажав кнопку «Воспроизведение / Пауза».
Gnome с GDM
Эта инструкция протестирована с Gnome 3.24.2 и PulseAudio 10.0, но может быть полезна и для других версий.
Если PulseAudio не удаётся изменить профиль на A2DP при использовании GNOME с GDM, нужно запретить GDM запуск его собственного экземпляра PulseAudio:
- Предотвратите запуск сервера клиентами Pulseaudio, если он не запущен, с помощью добавления этих строк:
/var/lib/gdm/.config/pulse/client.conf
autospawn = no daemon-binary = /bin/true
- Предотвратите запуск Pulseaudio через socket-активацию:
$ sudo -ugdm mkdir -p /var/lib/gdm/.config/systemd/user $ sudo -ugdm ln -s /dev/null /var/lib/gdm/.config/systemd/user/pulseaudio.socket
- Перезагрузитесь и проверьте, что нет процесса PulseAudio, запущенного пользователем gdm :
$ pgrep -u gdm pulseaudio
Обсуждение этой проблемы и другие варианты решения можно почитать на форуме: [3] и [4]. Также можно попробовать fix-bt-a2dp AUR .
HFP не работает с PulseAudio
Наушники с поддержкой только HFP могут не заработать со стандартной конфигурацией PulseAudio. Соответствующие профили есть, но они недоступны:
- bluetoothctl info показывает:
UUID: Audio Sink (0000110b-0000-1000-8000-00805f9b34fb) UUID: A/V Remote Control Target (0000110c-0000-1000-8000-00805f9b34fb) UUID: A/V Remote Control (0000110e-0000-1000-8000-00805f9b34fb) UUID: Handsfree (0000111e-0000-1000-8000-00805f9b34fb)
- pactl list соответствующего устройства показывает:
. Profiles: . headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: no)
Для решения проблемы обновите pulseaudio (>=13) и возможно pulseaudio-modules-bt-git AUR [ссылка недействительна: package not found] и bluez (>=5.5) до последних версий. Затем установите ofono AUR (запустите и включите службу systemd) и phonesim AUR и создайте поддельный модем как описано здесь [5]:
Примечание: Шаги после создания phonesim.conf нужно повторять каждый раз для подключения наушников.
- Создайте /etc/ofono/phonesim.conf :
[phonesim] Address=127.0.0.1 Driver=phonesim Port=12345
- Запустите от имени своего пользователя:
$ phonesim -p 12345 /usr/share/phonesim/default.xml &
- Запустите и включите службу ofono .
- Включите модем:
$ dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Powered" variant:boolean:true
- Активируйте модем:
$ dbus-send --print-reply --system --dest=org.ofono /phonesim org.ofono.Modem.SetProperty string:"Online" variant:boolean:true
- Для проверки результата используйте команды тестирования из пакета ofonoAUR , находящиеся в каталоге /usr/lib/ofono/test/ . Для включения, активации и тестирования модема можно использовать:
$ /usr/lib/ofono/test/enable-modem /phonesim $ /usr/lib/ofono/test/online-modem /phonesim $ /usr/lib/ofono/test/list-modems
Вывод для соответствующего модема должен выглядеть примерно так:
. [ /phonesim ] Online = 1 Powered = 1 Lockdown = 0 Emergency = 0 Manufacturer = MeeGo .
- Наконец, перезапустите pulseaudio и переподключите наушники. Теперь HFP должен стать доступен:
headset_head_unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 30, available: yes)
Примечание: Поддержка HFP не является стабильной и может приводить к артефактам при переключении на A2DP; попробуйте переподключиться, если нужный режим недоступен.
Отключение автоматического перехода наушникосв на HSP/HFP
При использовании наушников, поддерживающих несколько профилей, некоторые приложения автоматически переключают их на профиль HSP/HFP. Если вас это не устрвивает, можно отключить это добавлением параметра auto_switch=false к модулю bluetooth-policy:
/etc/pulse/default.pa
load-module module-bluetooth-policy auto_switch=false
Retrieved from «https://wiki.archlinux.org/index.php?title=Bluetooth_headset_(Русский)&oldid=765413»
- Sound (Русский)
- Bluetooth (Русский)
Linux: подключение Bluetooth-наушников
Купил недавно на работу Sony WH-1000XM3 с активным шумоподавлением.
В целом наушники весьма приятные – осталось подключить их к ноутбуку с Arch Linux.
Установка
$ sudo pacman -S bluez bluez-utils
Проверяем модуль ядра:
$ lsmod | grep btusb btusb 40960 0 btrtl 16384 1 btusb btbcm 16384 1 btusb btintel 16384 1 btusb bluetooth 475136 5 btrtl,btintel,btbcm,btusb usbcore 208896 12 usbnet,uvcvideo,usbhid,cdc_mbim,ehci_hcd,cdc_acm,cdc_ncm,cdc_wdm,xhci_pci,btusb,xhci_hcd,ehci_pci
Если нет – подгружаем:
$ sudo modprobe btusb
$ systemctl start bluetooth.service $ systemctl enable bluetooth.service
bluetoothctl Linux
Запускаем консоль управления Bluetooth:
$ bluetoothctl [NEW] Controller B8:76:3F:AB:D0:24 BlueZ 5.47 [default] Agent registered [bluetooth]#
Помощь – по help :
[bluetooth]# help Available commands: list List available controllers show [ctrl] Controller information select Select default controller devices List available devices paired-devices List paired devices .
Включаем контроллер и запускаем bluetooth-агента, который отвечает за регистрацию клиента:
[bluetooth]# power on [CHG] Controller B8:76:3F:AB:D0:24 Class: 0x0000010c Changing power on succeeded [CHG] Controller B8:76:3F:AB:D0:24 Powered: yes [bluetooth]# agent on Agent is already registered [bluetooth]# default-agent Default agent request successful
Включаем наушники и ищем активные устройства:
[bluetooth]# scan on Discovery started [CHG] Controller 34:CF:F6:94:01:73 Discovering: yes . [NEW] Device 38:18:4C:BD:68:DE LE_WH-1000XM3
[bluetooth]# pair 38:18:4C:BD:68:DE Attempting to pair with 38:18:4C:BD:68:DE [CHG] Device 38:18:4C:BD:68:DE Connected: yes [CHG] Device 38:18:4C:BD:68:DE Name: WH-1000XM3 [CHG] Device 38:18:4C:BD:68:DE Alias: WH-1000XM3 . [CHG] Device 38:18:4C:BD:68:DE Paired: yes Pairing successful [CHG] Device 38:18:4C:BD:68:DE ServicesResolved: no [CHG] Device 38:18:4C:BD:68:DE Connected: no
[bluetooth]# connect 38:18:4C:BD:68:DE Attempting to connect to 38:18:4C:BD:68:DE [CHG] Device 38:18:4C:BD:68:DE Connected: yes Connection successful [CHG] Device 38:18:4C:BD:68:DE ServicesResolved: yes [WH-1000XM3]#
Что бы наушники подключались автоматически в будущем – добавляем их в trusted-devices:
[CHG] Device 38:18:4C:BD:68:DE Trusted: yes Changing 38:18:4C:BD:68:DE trust succeeded
Blueman
Имеется пакет, позволяющий выполнять настройку и подключение устройств через GUI – blueman , плюс он добавляет иконку в трее, устанавливаем:
$ sudo pacman -S blueman
$ blueman-applet
Для его автозапуска – в Openbox можно добавить в файл ~/.config/openbox/autostart :
Как подключить bluetooth наушники на Debian 11? [ РЕШЕНО ]
Ошибка повторяется сколько бы я не пробовал. Сами наушники гарантировано рабочие, как и ноутбук, так как только недавно на этом же самом ноутбуке на системе Manjaro они нормально работали, а вот стоило поставить Debian 11 и они что-то работать не хотят.
Модель ноутбука Huawei MateBook D 16. Образ Debian 11 для установки брал с пропиетарными прошивками: https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/
Также потом рукам подключил non-free репозитарии и обновил систему:
deb http://deb.debian.org/debian bullseye main contrib non-free deb-src http://deb.debian.org/debian bullseye main contrib non-free deb http://deb.debian.org/debian-security bullseye/updates main contrib non-free deb-src http://deb.debian.org/debian-security bullseye/updates main contrib non-free deb http://deb.debian.org/debian bullseye-updates main contrib non-free deb-src http://deb.debian.org/debian bullseye-updates main contrib non-free
Добавление поддержки bluetooth гарнитуры в Ubuntu 20.04
В попытке избавиться от проводов на рабочем столе, была приобретена bluetooth гарнитура JBL, для удобного проведения звонков через slack и zoom. Но с сожалением обнаружил, что Ubuntu не видит микрофон.
После недолгого гугления было найдено решение. Оказывается, что звуковой сервер PulseAudio, используемый в Ubuntu по умолчанию не поддерживает профили HSP (Handset Profile) /HFP (Hands-Free Profile). Чтобы всё работало, нужно заменить его на Pipewire.
Установка Pipewire в Ubuntu 20.04
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream sudo apt update sudo apt install pipewire sudo apt install libspa-0.2-bluetooth sudo apt install pipewire-audio-client-libraries
Перезагрузка сервисов bluetooth и mas pulseaudio
systemctl --user daemon-reload systemctl --user --now disable pulseaudio.service pulseaudio.socket systemctl --user mask pulseaudio systemctl --user --now enable pipewire-media-session.service
Рестарт pipewaire и перезагрузка системы
systemctl --user restart pipewire sudo reboot
Теперь активирован профиль HSP/HFP и микрофон появился:
Ложка дёгтя
Всё бы хорошо, но вы же не думали что всё так просто? Включение профиля HSP/HFP означает, что bluetooth гарнитура будет работать в режиме моно и выдавать на редкость паршивый звук при воспроизведении музыки. Поэтому, если вы хотите ещё и слушать музыку, то придётся переключаться между режимами работы bluetooth гарнитуры. У себя я установил blueman
sudo apt-get install blueman
Теперь для гарнируты можно переключаться между режимами: