Bluetooth не работает на Ubuntu 14.04 с Dell Inspiron 15-3521

9

У меня есть ноутбук Dell inspiron 15-3521 с предустановленной Ubuntu 12.04, он работал хорошо (я удалил эту Ubuntu). Я установил Ubuntu 14.04 (новая установка).

(Драйвер установлен вне: bcmwl-kernel-source 6.30.223.141+bdcom-0ubuntu2)

Сеть WiFi работает нормально, но Bluetooth не работает (мой телефон, другой компьютер и ноутбук не видят его, а мой ноутбук ничего не видит).

Устройство Bluetooth включено, включено и отображается.

lspci результат:

00:00.0 Host bridge: Intel Corporation 3rd Gen Core processor DRAM Controller (rev 09)
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
00:1b.0 Audio device: Intel Corporation 7 Series/C210 Series Chipset Family High Definition Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
00:1c.1 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 2 (rev c4)
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation HM76 Express Chipset LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 7 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 05)
02:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)

lsusb результат:

Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub 
Bus 001 Device 005: ID 064e:8132 Suyin Corp. 
Bus 001 Device 004: ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller 
Bus 001 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 002: ID 19d2:0031 ZTE WCDMA Technologies MSM MF110/MF627/MF636
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Момо
источник
Кажется, что он не подключен к вашей шине PCI, можете ли вы обновить свой вопрос lsusbвыводом, отредактировав его?
П.-Х. Лин
Не тот, это беспроводная карта.
П.-Х. Лин
Блютуз появляется в lsusb
Momo
Что я могу сделать сейчас?
Момо
В этом может помочь askubuntu.com/questions/845531/…
warsong

Ответы:

4

К сожалению, ваше устройство Bluetooth:

Bus 001 Device 003: ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

Не поддерживается ни одной версией стандартного Ubuntu, см.
Bug1129865 [Broadcom Combo BT / Wifi Card] 21D3 21D7 Bluetooth вообще ничего не обнаруживает
(причина указана в комментарии № 7)

И я предлагаю вам подписаться на эту ошибку:
Ошибка 1065400 Поддержка загрузки прошивки Broadcom bluetooth
В этой теме может быть обходной путь, удачи!

P.-H. Lin
источник
8

Те же шаги, что и в Diabolik2. Новая информация - где и как получить шестнадцатеричный файл.

Источники:

Чтобы получить полное решение, я пишу все мои шаги с самого начала:

  1. Найти идентификатор вашего устройства:

    $ lsusb | grep Bluetooth

    Мой вывод, например:

    Шина 001 Устройство 003: ID 0a5c: 21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

    из которого следует запомнить 0a5c: 21d7 .

  2. Получите шестнадцатеричный файл для вашего устройства:

    • После поиска драйверов Bluetooth в Google я выбрал эту загрузку: http://drivers.softpedia.com/get/BLUETOOTH/Broadcom/Broadcom-43142-Bluetooth-40-Adapter-Driver-12007030-for-Windows-8.shtml #скачать
    • Я извлек последний .hex файл случайно. К счастью, это сработало. ШАГОВ: В наутилуса правой кнопкой мыши на скачанный .cab файл> выбрал Открыть с помощью Archive Manager > выберите последний .hex файл в списке архива> правой кнопкой мыши> Извлечь ...
    • скачать и скомпилировать hex2hcd
      $ git clone git: //github.com/jessesung/hex2hcd.git
      $ cd hex2hcd
      $ make
    • конвертировать .hex в .hcd
       $ ./hex2hcd /path/to/extracted.hex /where/you/want/your_new.hcd
  3. Скопируйте файл hcd в / lib / firmware как lib / firmware / fw- 0a5c_21d7 .hcd.

    В имени файла используйте идентификатор, который вы ранее обнаружили.

бакалавр естественных наук
источник
1
Шаг 3. Необходимо скопировать hcd- файл в:/lib/firmware/brcm/
david6
I have extracted the last .hex file by chance. Fortunately it worked.- люди, читающие это, обратите внимание, что если это не сработает, это может что-то сломать, поэтому вам, вероятно, следует делать это только в том случае, если сообщение Diabolik2 не работает для вас.
Уилф
1
Также очень важно прочитать то dmesg | grep Bluetooth, что говорит, поскольку это даст вам полезную информацию. В моем случае говорилось, что не удалось загрузить файл brcm / BCM.hcd , поэтому я назвал файл hcd BCM.hcdвместо fw-0a5c_21d7.hcdи скопировал его /lib/firmware/brcm/. Оно работало завораживающе. DELL inspiron 15 - 3543.
Qualphey
Да, и hexфайл, который я выбрал, используя метод, предложенный в ответе Флорина С. Используя infфайл.
Qualphey
1
Для Ubuntu 16.04 решение состоит в том, чтобы получить файл .hex из окон, как описано выше, преобразовать в .hdcтакже, как объяснено, но вам нужно /lib/firmware/brcm/BCM-0a5c-6410.hcdуказать другое имя файла прошивки, например: (зависит от вашей шины lsusb: идентификатор devnum)
Морхук
6

Ответы о том, что мне нужно установить Windows, чтобы получить прошивку для Linux ... звучат неправильно, не так ли?

Но предыдущие ответы были золотыми. После долгого времени у меня работает Bluetooth в моем Dell с Ubuntu 12.04 386. Вот мои дополнения к предыдущим ответам (особенно sb):

  1. Кабина у sb хороша и имеет шестнадцатеричные файлы для нескольких фишек на этом семействе.

  2. cabextract - это инструмент для извлечения CAB-архива. просто:

    sudo apt-get установить cabextract

и извлеките его:

cabextract 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab

Имейте в виду, что внутри кабины нет каталога, а есть файлы, поэтому вы получите много шестнадцатеричных файлов. Хорошо, чтобы MKDIR определил каталог и распаковал туда кабину.

  1. Как получить правильный шестнадцатеричный файл .

Итак, у меня есть идентификатор чипа: 0a5c: 21d7 и куча шестнадцатеричного файла. Как я могу получить правильный для меня? Хитрость заключается в том, чтобы исследовать INF-файл, который указывает Windows, что устанавливать. В поисках 21D7 (обратите внимание на заглавную D вместо 'd'), я получаю это:

% Dell1704.DeviceDesc% = RAMUSB21D7, USB \ VID_0A5C & PID_21D7; BRCM Generic 43142A0 RAMUSB

USB / VID и PID - это то, что я получаю на lsusb: capital (0a5c: 21d7). RAMUSB21D7 - это то, что мне нужно для поиска в следующем файле inf (это описание устройства).

И это мой результат:

;;;;;;;;;;;;;RAMUSB21D7;;;;;;;;;;;;;;;;;

[RAMUSB21D7.CopyList]
bcbtums.sys
btwampfl.sys
BCM43142A0_001.001.011.0122.0126.hex

И шестнадцатеричный файл, который я буду использовать, это BCM43142A0_001.001.011.0122.0126.hex

В остальном то же самое, что и выше. Получить инструмент через git, собрать его, преобразовать шестнадцатеричный файл в hcd, удалить / перезагрузить btusb.

Примечание. Помните, что файл hcd должен начинаться с fw -......, а не с fw _...... Я допустил эту ошибку. :)

Флорин С
источник
После извлечения правильного шестнадцатеричного файла и последующей процедуры. Когда я перезапустил свою машину и уволил команду dmesg | grep firmware. Я получаю вывод как[ 15.023826] bluetooth hci0: Direct firmware load for brcm/BCM43142A0-0a5c-21d7.hcd failed with error -2
ravi1991
6

Я решил проблему с решением из этого поста :

Таким образом, я сделал следующие шаги: перечислите свой идентификатор:

lsusb

Мой идентификатор: 0a5c:21d7

Получите файл .hex: В вашем разделе Windows (при условии, что вы используете двойную загрузку с Windows) , получите файл BCMxxxx.hex C:\windows\system32\drivers. Если есть два или более файлов .hex, просмотрите, какой из них используется с диспетчером устройств Windows. Скопируйте этот файл в ваш домашний каталог

Откройте терминал и введите эти команды:

sudo apt-get install git
git clone git://github.com/jessesung/hex2hcd.git
cd hex2hcd
make
./hex2hcd ../BCMxxxx.xxx.xxx.xx.hex fw-0a5c_21d7.hcd (Replace 0a5c_21d7 with your id)
sudo cp fw* /lib/firmware

Перезагрузите модули с помощью этих команд:

sudo modprobe -r btusb
sudo modprobe btusb

Перезагрузите компьютер.

Откройте терминал и напишите:

dmesg | grep firmware

если все в порядке, вы можете просмотреть сообщение:

[   xxxxxxxxxx] Bluetooth: firmware loaded

Это все.

Удачи Diabolik2

Diabolik2
источник
1
Хотя эта ссылка может ответить на вопрос, лучше включить сюда основные части ответа и предоставить ссылку для справки. Ответы, содержащие только ссылки, могут стать недействительными, если связанная страница изменится.
αғsнιη
Обратите внимание, что пост, очевидно, был обновлен с шагами здесь
Уилф
0

В моем случае прошивка bluetooth не загружалась, пока я не создал каталог brcm в / lib / firmware / и не переименовал файл в

BCM43142A0-0a5c-21d7.hcd

Я использую Debian 8 & Dell Inspiron 15

ура

Alex
источник
-1

Решение работает (Ubuntu 14.04 kernel-4.2) В моем случае файл HCD должен был называться BCM.hcd. Точное имя файла, который вы должны назвать своим hcd-файлом, будет указано в описании ошибки загрузки, которую можно просмотреть с помощью команды:

dmesg | grep firmware

как сказал Уилф выше!

Gimnasist
источник
Добро пожаловать в Спросите Ubuntu! Пожалуйста, не добавляйте комментарии в качестве ответов. Потратьте некоторое время на сайт, и вы получите достаточные привилегии, чтобы поднять ответы, которые вам нравятся, такие как этот , или добавлять реальные комментарии при поиске разъяснений по любым вопросам.
Мартин Торнтон