Одна из проблем Linux вообще и Ubuntu в частности − порой сложно найти драйвер для какого-либо устройства. Рассмотрим запуск Bluetooth-адаптера от производителя Ralink 3290 под Ubuntu 18.04.
Предыстория
Так получилось, что в 2014-м году, когда я ещё жил на Украине, купил себе почти случайно ноутбук от Asus. Учитывая, что магазины в то время привязывались к курсу доллара, а он скакал, как протестующие на майдане, получилось очень недорого. Ну и очень быстро единственной системой там стала Ubuntu, ноутбук даже покупался без предустановленной ОС. На модуль Bluetooth, к сожалению, не посмотрел, а зря − как оказалось, попался достаточно вредный в плане запуска Ralink 3290.
Модуль Wi-Fi запустился без проблем, да и предпочитаю кабель, так что беспроводные соединения меня долго особо не волновали. Но недавно всё же пришлось этим вопросом озаботиться.
Если поискать информацию в сети, то на устройства Ralink жалоб много, особенно на Bluetooth Ralink3290. Для более старых версий предлагается скачать и самому собрать драйвер, но для 18.04 его надо уже патчить, а программисты обычно существа ленивые. Да и не помогли существовавшие на тот момент патчи.
Первый запуск Ralink 3290
Летом этого года один добрый человек подсказал мне вариант с DKMS модулем, что для меня особенно удобно, поскольку я ядро обновляю регулярно (на момент написания этого материала работает последняя на текущий момент версия ядра 5.3), а такие модули будут работать при любых обновлениях.
В родных репозиториях Ubuntu этого модуля нет, поэтому придётся ставить из постороннего репозитория. Делаем мы это не впервые, поэтому подробно о команде расписывать не буду:
sudo add-apt-repository ppa:blaze/rtbth-dkms
В последней LTS-версии Ubuntu список пакетов обновляется автоматически после добавления репозитория, поэтому в ранее привычной команде
sudo apt update
необходимости нет. Сразу устанавливаем пакет:
sudo apt install rtbth-dkms
После rfkill unblock
модуль заработал, ноутбук даже соединился с телефоном. Но это было до первой перезагрузки, после которой команда rfkill
не помогала. Ритмичное постукивание в бубен тоже.
Окончательное решение
Эксперименты с адаптером были на некоторое время отложены и возобновлены после приобретения Bluetooth-гарнитуры − её можно подключать, в общем-то, к любому устройству, которое поддерживает передачу звука по Bluetooth. Поиски по сети длились недолго − оказывается, я не сделал всего одного шага до окончательного решения.
Для того, чтобы это стабильно работало, открываем один файл для редактирования:
sudo nano /etc/modules
И в конец этого файла дописываем модуль:
rtbth
далее файл сохраняем и перезагружаем компьютер.
После этого всё работает стабильно, связь с компьютера есть как с телефоном, так и с гарнитурой. Файлы передаются, слышимость отличная.
Дополнение от 06.04.2020
После одного неудачного эксперимента система таки оказалась повреждена, переустановить было проще, чем копаться. Выполнил все действия, Bluetooth не запускался. После относительно недолгих поисков в сети нашёл рекомендацию порыться в папке /etc/modprobe.d/
. Там был обнаружен файл rtbth-dkms.conf с достаточно интересным содержимым:
# settings for rtbth-dkms # comment to get it loading on startup (probably would not work) blacklist rtbth
После выполнения рекомендации из второй строки всё заработало.
Комментарии: