Dell Inspiron 15-3521を搭載したUbuntu 14.04でBluetoothが機能しない


9

私はラップトップのDell inspiron 15-3521にUbuntu 12.04がプリインストールされていますが、問題なく動作していました(このUbuntuを削除しました)。Ubuntu 14.04をインストールしました(新規インストール)。

(インストールされたドライバは、次のとおりbcmwl-kernel-source 6.30.223.141+bdcom-0ubuntu2

WiFiネットワークは正常に機能していますが、Bluetoothは機能していません(私の電話、他のPCおよびラップトップはネットワークを認識できず、ラップトップは何も認識できません)。

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編集して出力であなたの質問を更新できますか?
P.-H. Lin

それではなく、ワイヤレスカードです。
P.-H. Lin

Bluetoothはlsusbに表示されます
Momo

私は今何ができますか?
モモ

回答:


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に記載されています)

そして、このバグにサブスクライブすることをお勧めします:
バグ106540​​0 Broadcom Bluetoothファームウェアのロードのサポート
そのスレッドに回避策があるかもしれません。


8

Diabolik2と同様の手順。新しい情報は、hexファイルを取得する場所と方法です。

出典:

完全な解決策を得るために、最初からすべてのステップを書きます。

  1. デバイスのIDを見つけます:

    $ lsusb | grep Bluetooth

    たとえば、私の出力:

    バス001デバイス003:ID 0a5c:21d7 Broadcom Corp. BCM43142 Bluetooth 4.0

    そこから0a5c:21d7を忘れてはなりません。

  2. デバイスのHEXファイルを取得します。

    • GoogleでBluetoothドライバーを検索した後、このダウンロードを選択しました:http : //drivers.softpedia.com/get/BLUETOOTH/Broadcom/Broadcom-43142-Bluetooth-40-Adapter-Driver-12007030-for-Windows-8.shtml #ダウンロード
    • 偶然最後の.hexファイルを抽出しました。幸い、それはうまくいきました。手順:nautilusで、ダウンロードした.cabファイルを右クリック> [ アーカイブマネージャーで開く]を選択>アーカイブリストで最後の.hexファイルを選択>右クリック> [ 抽出... ]
    • hex2hcdをダウンロードしてコンパイルする
      $ git clone git://github.com/jessesung/hex2hcd.git
      $ cd hex2hcd
      $作る
    • .hexを.hcdに変換する
       $ ./hex2hcd /path/to/extracted.hex /where/you/want/your_new.hcd
  3. hcdファイルを/ lib / firmwarelib / firmware / fw - 0a5c_21d7 .hcdとしてコピーします

    ファイル名には、以前に見つけたIDを使用します。


1
ステップ3.コピーであるべきHCDのにファイル:/lib/firmware/brcm/
david6

I have extracted the last .hex file by chance. Fortunately it worked.-これを読んでいる人は、うまくいかない場合は何かが壊れる可能性があるので注意してください。したがって、これはDiabolik2の投稿がuで機能しない場合にのみ行うべきです。
Wilf、2015年

1
またdmesg | grep Bluetooth、有用な情報を提供するため、発言内容を読むことも非常に重要です。私の場合、ファイルbrcm / BCM.hcdのロードに失敗したと言っていたので、BCM.hcd代わりにhcdファイルに名前を付けてにfw-0a5c_21d7.hcdコピーしました/lib/firmware/brcm/。それは魅力のように働きました。DELL Inspiron 15-3543
Qualphey

ああ、hex私がFlorin Cの回答で提案された方法を使用して選択したファイル 。infファイルを使用します。
Qualphey 2016年

1
Ubuntu 16.04の場合、解決策は、上記で説明したようにWindowsから.hexファイルを取得し、説明どおりに変換する.hdcことですが、ファームウェアファイルに次のような別の名前を付ける必要があります/lib/firmware/brcm/BCM-0a5c-6410.hcd(lsusb bus:devnum IDによって異なります)
モーフック16

6

Linux用のファームウェアを入手するにはWindowsをインストールしなければならないという回答...間違っているようですね。

しかし、以前の答えは金でした。私のBluetoothは、Ubuntu 12.04 386を搭載したDellで久しぶりに動作しています。ここで、以前の回答(特にsb)に対する私の完了:

  1. SBのキャブは良好で、このファミリのいくつかのチップ用のHEXファイルがありました。

  2. cabextractは、.cabアーカイブを抽出するツールです。ただ:

    sudo apt-get install cabextract

そしてそれを抽出します:

cabextract 20573731_e75f2c1244fb153ccc4c1cac0dfbbab030d18543.cab

cab内にはディレクトリではなくファイルがあることに注意してください。そのため、hexファイルが大量に取得されます。特定のディレクトリをmkdirし、そこにcabを抽出するとよいでしょう。

  1. 正しいhexファイルを取得する方法

だから私はチップのIDを持っています:0a5c:21d7とhexファイルの束。どのようにして適切なものを入手できますか?トリックは、Windowsに何をインストールするかを指示する.infファイルを調査することです。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

そして、私が使用するhexファイルはBCM43142A0_001.001.011.0122.0126.hexです

残りは上記と同じです。gitを介してツールを入手し、ビルドして、hexファイルをhcdに変換し、btusbを破棄/再ロードします。

注:hcdファイルはfw -......ではなくfw -......で始まる必要があることに注意してください。:)


正しいhexファイルを抽出し、手順に従ってください。マシンを再起動してコマンドを実行したときdmesg | grep firmware。次のように出力されます[ 15.023826] bluetooth hci0: Direct firmware load for brcm/BCM43142A0-0a5c-21d7.hcd failed with error -2
ravi1991

6

私はこの投稿の解決策で問題を解決しました:

要約すると、私はこの手順を実行しました:IDをリストします:

lsusb

私のIDは: 0a5c:21d7

ファイル.hexを取得します。Windows パーティションで(Windowsとのデュアルブートを前提とします)、ファイルBCMxxxx.hex inを取得しますC:\windows\system32\drivers。2つ以上のファイル.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

これで全部です。

頑張ってディアボリック2


1
このリンクで質問に答えることができますが、回答の重要な部分をここに含め、参照用のリンクを提供することをお勧めします。リンクされたページが変更されると、リンクのみの回答が無効になる可能性があります。
αғsнιη

投稿は明らかに次の手順
Wilf

0

私の場合、Bluetoothファームウェアは、/ lib / firmware /にbrcmディレクトリを作成してファイルの名前を変更するまでロードされませんでした

BCM43142A0-0a5c-21d7.hcd

私はDebian 8とDell Inspiron 15を使用しています

乾杯


-1

ソリューションが機能する(Ubuntu 14.04 kernel-4.2)私の場合、HCDファイルはBCM.hcdという名前にする必要がありました。あなたがあなたのhcdファイルに名前を付けるべき正確なファイル名は、コマンドを使用して見ることができるロードエラーの説明に記載されます:

dmesg | grep firmware

ウィルフが上で述べたように!


Ask Ubuntuへようこそ!回答としてコメントを追加しないでください。サイトにしばらく時間を費やすと、このような好きな回答に賛成票を投じたり、問題の明確化を求めるときに実際のコメントを追加したりするための十分な特権を得ることができます。
Martin Thornton
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.