Ralink RT 3290 Проблема с Bluetooth в Ubuntu 14.04
Я недавно установил Ubuntu 14.04, и все работает хорошо, кроме Bluetooth.
У меня Ralink 3290 Bluetooth. попытался установить драйвер, используя метод, описанный здесь. Код не компилируется и выдает 2 ошибки. Даже изменение в os/linux/pci_main_dev.c
не работает.
Обновление: теперь я перешел по этой ссылке, и после небольшого изменения файла мне удалось скомпилировать и установить этот драйвер. Я уверен, что Ubuntu наконец-то нашел адаптер Bluetooth, и теперь я получаю Bluetooth:
rfkill list all
0: phy0: Wireless LAN
Soft blocked: yes
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: yes
Hard blocked: no
Но теперь Bluetooth is disabled
ошибка показывает и вывод
dmesg | grep Blue
[ 17.378741] Bluetooth: Core ver 2.17
[ 17.378778] Bluetooth: HCI device and connection manager initialized
[ 17.378788] Bluetooth: HCI socket layer initialized
[ 17.378792] Bluetooth: L2CAP socket layer initialized
[ 17.378799] Bluetooth: SCO socket layer initialized
[ 17.809313] Bluetooth: hci0 sending frame failed
[ 20.507392] Bluetooth: RFCOMM TTY layer initialized
[ 20.507420] Bluetooth: RFCOMM socket layer initialized
[ 20.507440] Bluetooth: RFCOMM ver 1.11
[ 20.669232] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 20.669237] Bluetooth: BNEP filters: protocol multicast
[ 20.669249] Bluetooth: BNEP socket layer initialized
приближается.
5 ответов
Я получил Bluetooth для работы!
Сначала загрузите Исходный код отсюда и распакуйте его в
Home
,После этого откройте
rtbth_core_bluez.c
файл, а затем перейдите к строке 86 и измените его с:int rtbt_hci_dev_send(struct sk_buff *skb) { struct hci_dev *hdev = (struct hci_dev *)skb->dev;
чтобы:
int rtbt_hci_dev_send(struct hci_dev *hdev, struct sk_buff *skb) { //struct hci_dev *hdev = (struct hci_dev *)skb->dev;
Перейдите к строке 216 и измените ее с:
status = hci_recv_frame(skb);
чтобы:
status = hci_recv_frame(hdev,skb);
Затем перейдите к строке 406 и измените ее с:
hdev->ioctl = rtbt_hci_dev_ioctl;
чтобы:
//hdev->ioctl = rtbt_hci_dev_ioctl;
Сохранить, затем открыть
rtbth_hlpr_linux.c
и перейдите к строке 575. Измените его с://daemonize((PSTRING)&pOSTask->taskName[0]);
в
(PSTRING)&pOSTask->taskName[0];
Теперь вы готовы к компиляции. Скомпилируйте его в терминале:
cd rtbth-3.9.3 make sudo make install
- Перезагружать. Кроме того, вы можете следить за PDF-файлом, содержащимся в этом ZIP- файле, в случае, если Bluetooth все еще не работает.
Это сообщается как ошибка на LP:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1189721
На данный момент нет рабочего драйвера. Если у вас есть учетная запись LP, я бы порекомендовал вам пометить ошибку как затрагивающую вас и подписаться на уведомления по электронной почте для комментариев.
Согласно комментарию shihiro к сообщению об ошибке, для драйвера Bluetooth доступен хорошо поддерживаемый PPA:
Использовать в терминале
sudo add-apt-repository ppa:blaze/rtbth-dkms sudo apt-get update sudo apt-get install rtbth-dkms
или загрузите и установите его с панели запуска. На первой ссылке есть исходная ссылка на страницу GitHub. В
README.md
ты можешь читать:# Init sudo modprobe rtbth sudo rfkill unblock bluetooth hcitool dev # check
Я набрал его в терминале, и все работает.
В Ubuntu 17.10 и, возможно, в более ранних версиях модуль может автоматически попасть в черный список. Если это случится с вами
- добавлять
rtbth
в/etc/modules
, - открыть
/etc/modprobe.d/dkms-rtbth.conf
и закомментируйте или удалите строку, которая говоритblacklist rtbth
, - перезагрузите систему.
Вот простой способ, я тоже искал решение этой проблемы в течение 2 лет, и, самое большее, я смог вывести все устройства Bluetooth в списке и не смог подключиться ни к одному из них, но по приведенному ниже решению я столкнулся сегодня, и он сработал. безупречно для меня.
Это очень легко установить, файлы расположены на github rtbth-dkms.
Установить,
sudo add-apt-repository ppa:blaze/rtbth-dkms
sudo apt-get update
sudo apt-get install rtbth-dkms
а затем следуйте Init
Команды ниже, ваш BlueTooth будет работать сейчас, в случае каких-либо проблем оставьте комментарий, я буду рад помочь вам.
использование
# Init
sudo modprobe rtbth
sudo rfkill unblock bluetooth
hcitool dev # check
# Switch off
sudo rfkill block bluetooth
# Switch on
sudo rfkill unblock bluetooth
# Shutdown
sudo pkill -2 rtbt
sudo rmmod rtbth
Решение DKMS и systemd, которое работает на моем ноутбуке HP ProBook 455 G1 с:
Сетевой контроллер: Ralink Corp. RT3290 Беспроводной 802.11n 1T/1R PCIe и его гибрид.
Который имеет встроенный Bluetooth: Ralink Corp. RT3290 Bluetooth.
Я прошу проверить, работает ли эта инструкция на Ubuntu.
Напишите версию ОС и ядра Linux, например:
ИСПЫТАНО НА:
ОС: Fedora 27 с оболочкой гнома.
Ядро Linux: 4.13.12-300.fc27.x86_64
Copy source from:
https://github.com/loimu/rtbth-dkms
DKMS Build Instruction:
http://xmodulo.com/build-kernel-module-dkms-linux.html
Копировать файлы:
cp 49rtbt to /usr/lib64/pm-utils/sleep.d
cp rtbt to one of this folder /bin or /usr/local/bin or /usr/bin
Создайте новое имя файла bluetooth-setup.sh и скопируйте:
#!/bin/bash
sudo mknod /dev/rtbth c 192 0
sudo rtbt
Выполнение автоматического запуска, следуя этой инструкции.
Добавьте скрипт в systemd:
https://linuxconfig.org/how-to-automatically-execute-shell-script-at-startup-boot-on-systemd-linux