Вопрос или проблема
У меня установлен Ubuntu 24.04 на моем новом настольном компьютере ABS, и, хотя hciconfig, bluetoothctl не показывают ошибок, я не могу увидеть какие-либо устройства при сканировании.
$ hciconfig
hci0: Type: Primary Bus: USB
BD Address: FC:B0:DE:38:30:96 ACL MTU: 1021:8 SCO MTU: 255:12
UP RUNNING PSCAN ISCAN
RX bytes:5389 acl:0 sco:0 events:539 errors:0
TX bytes:19604 acl:0 sco:0 commands:519 errors:0
Использование bluetoothctl вручную делает следующее:
$ bluetoothctl
Waiting to connect to bluetoothd...[bluetooth]# Agent registered
[bluetooth]# agent on
Agent is already registered
[bluetooth]# default-agent
[bluetooth]# Default agent request successful
[bluetooth]# scan on
[bluetooth]# SetDiscoveryFilter success
[bluetooth]# Discovery started
[bluetooth]# [CHG] Controller FC:B0:DE:38:30:96 Discovering: yes
[bluetooth]#
lsmod не показывает ничего странного, насколько я могу судить:
$ lsmod | grep btusb
btusb 77824 0
btrtl 32768 1 btusb
btintel 57344 1 btusb
btbcm 24576 1 btusb
btmtk 12288 1 btusb
bluetooth 1028096 46 btrtl,btmtk,btintel,btbcm,bnep,btusb,rfcomm
~ ⌚ 13:34:42
$ lsmod | grep bluetooth
bluetooth 1028096 46 btrtl,btmtk,btintel,btbcm,bnep,btusb,rfcomm
ecdh_generic 16384 2 bluetooth
Вот вывод lsusb; sudo dmesg | egrep -i 'blue|firm'
:
$ lsusb; sudo dmesg | egrep -i 'blue|firm'
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 001 Device 003: ID 0b05:19af ASUSTek Computer, Inc. AURA LED Controller
Bus 001 Device 004: ID 05e3:0608 Genesys Logic, Inc. Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 0489:e112 Foxconn / Hon Hai Bluetooth Radio
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
[ 1.157720] usb 3-1: Product: Bluetooth Radio
[ 4.892212] systemd[1]: Mounting snap-firmware\x2dupdater-127.mount - Mount unit for firmware-updater, revision 127...
[ 4.893131] systemd[1]: Mounting snap-firmware\x2dupdater-147.mount - Mount unit for firmware-updater, revision 147...
[ 5.078863] Bluetooth: Core ver 2.22
[ 5.103287] NET: Registered PF_BLUETOOTH protocol family
[ 5.103290] Bluetooth: HCI device and connection manager initialized
[ 5.103294] Bluetooth: HCI socket layer initialized
[ 5.103296] Bluetooth: L2CAP socket layer initialized
[ 5.103303] Bluetooth: SCO socket layer initialized
[ 5.319068] rtw89_8851be 0000:08:00.0: loaded firmware rtw89/rtw8851b_fw.bin
[ 5.319858] rtw89_8851be 0000:08:00.0: Firmware version 0.29.41.3 (65cefb31), cmd version 0, type 5
[ 5.319861] rtw89_8851be 0000:08:00.0: Firmware version 0.29.41.3 (65cefb31), cmd version 0, type 3
[ 6.292072] [drm] Loading DMUB firmware via PSP: version=0x05000F00
[ 6.292458] [drm] Found VCN firmware Version ENC: 1.30 DEC: 3 VEP: 0 Revision: 4
[ 6.292464] amdgpu 0000:0b:00.0: amdgpu: Will use PSP to load VCN firmware
[ 7.299392] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 7.299396] Bluetooth: BNEP filters: protocol multicast
[ 7.299401] Bluetooth: BNEP socket layer initialized
[ 7.300285] Bluetooth: MGMT ver 1.22
[ 9.138499] Bluetooth: RFCOMM TTY layer initialized
[ 9.138505] Bluetooth: RFCOMM socket layer initialized
[ 9.138508] Bluetooth: RFCOMM ver 1.11
[ 7300.714099] audit: type=1400 audit(1738440042.768:183): apparmor="DENIED" operation="open" class="file" profile="snap.firmware-updater.firmware-notifier" name="/proc/sys/vm/max_map_count" pid=28130 comm="firmware-notifi" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
[18100.787075] audit: type=1400 audit(1738450842.532:184): apparmor="DENIED" operation="open" class="file" profile="snap.firmware-updater.firmware-notifier" name="/proc/sys/vm/max_map_count" pid=74038 comm="firmware-notifi" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
На этом этапе я исчерпал все идеи и буду весьма признателен за любую помощь. Ради “интереса”, вот сеанс отладки, который я попытался провести с chat-gpt
.
Ответ или решение
Когда вы сталкиваетесь с проблемами Bluetooth на Ubuntu 24.04, первая реакция может быть недоумением, особенно если стандартные команды не показывают ошибок. Давайте подробно рассмотрим процесс диагностики и решение проблемы, основываясь на данных, которые вы предоставили.
Теория
Bluetooth — это беспроводной стандарт для обмена данными на короткие расстояния. На Ubuntu, как и на других системах Linux, его работа зависит от нескольких компонентов, включая драйверы ядра, daemon-сервисы (например, bluetoothd
), утилиты командной строки и аппаратные компоненты. Проблемы с обнаружением устройств чаще связаны с неправильной конфигурацией или несовместимыми драйверами.
Пример
В вашей ситуации вы видите, что hciconfig
показывает, что интерфейс Bluetooth активен и устройству присвоен адрес. Также, команда bluetoothctl
демонстрирует, что когда вы включаете сканирование, контроллер действительно переходит в режим обнаружения. Однако устройства не обнаруживаются.
Модули ядра (lsmod
) выглядят нормально: btusb
, btrtl
, btintel
, btbcm
, btmtk
в системе представлены и не вызывают ошибок. USB-соединения (lsusb
) показывают подключение Bluetooth-адаптера от Foxconn, а dmesg
указывает на успешную инициализацию стека Bluetooth. Несмотря на это, устройства не видны.
Применение
Запуск bluetoothctl
с успешным началом сканирования, но без результата, указывает на возможную проблему с конфигурацией или ограничениями доступа. Рассмотрим несколько шагов по диагностике и решению:
-
Проверка драйверов и модулей:
- Подтвердите, что ваш Bluetooth-модуль имеет последние версии драйверов. Используйте
ubuntu-drivers devices
для выявления и указанной командойsudo ubuntu-drivers autoinstall
обновите драйверы при необходимости. - Проверьте официальные сайты или форумы для драйверов от Foxconn на предмет специфичных обновлений или патчей для Ubuntu 24.04.
- Подтвердите, что ваш Bluetooth-модуль имеет последние версии драйверов. Используйте
-
Конфигурация Bluetooth:
- Убедитесь, что
bluetooth.service
активен и работает корректно. Проверьте статус команды:sudo systemctl status bluetooth
. - Попробуйте перезапустить сервис с помощью:
sudo systemctl restart bluetooth
и повторите попытку сканирования.
- Убедитесь, что
-
Обновление системы:
- Убедитесь, что ваша система обновлена и все пакеты соответствуют актуальным версиям с помощью
sudo apt update && sudo apt upgrade
.
- Убедитесь, что ваша система обновлена и все пакеты соответствуют актуальным версиям с помощью
-
Настройки профилей AppArmor:
- В вашем выводе
dmesg
содержатся строки с AppArmor, указывающие на возможные ограничения. Проверьте и, если необходимо, ослабьте профили для упомянутых приложений, следуя инструкциям по настройке AppArmor для избегания конфликтов.
- В вашем выводе
-
Интерференция устройств:
- Проверьте, нет ли поблизости физических препятствий или помех от других устройств. Некоторое оборудование может использовать те же частоты, что и Bluetooth, снижая его эффективность.
-
Журналы и отладка:
- Проверьте логи
journalctl -xe
для выявления дополнительных подсказок о проблемах с Bluetooth. - Используйте команду
hcitool scan
для проверки, будут ли устройства обнаружены альтернативной утилитой.
- Проверьте логи
Следуя этим шагам, вы систематически устраните вероятные причины возникновения проблемы. Ваш успех может потребовать проверки нескольких конфигураций и возможных обновлений системы, задействующих как программные, так и аппаратные аспекты. Помните, что точная диагностика — ключ к успешному решению проблем. Если указанные методы не помогли, возможно, стоит обратиться к сообществу Ubuntu или специализированным форумам, чтобы получить поддержку от пользователей с аналогичными устройствами.