BCM94352HMB Bluetooth bcm20702a0 Drive method under Ubuntu 14.04

Source: Internet
Author: User

Qiu Yi

Source: http://www.cnblogs.com/qiuyi21/p/bcm20702a0_ubuntu.html

First confirm the Bluetooth production number (Idvendor) and the product number (IDPRODUCT), under Linux can be viewed through the LSUSB or usb-devices command, under windows in Device Management, as shown in. My bluetooth Idvendor is 0x13d3, idproduct is 0x3404.

Most Bluetooth devices in Broadcom require a vendor's firmware patch (RAM patch file), and Linux is called firmware,bcm20702a0. A file like "Bcm20702a1_001.002.014.1443.1479.hex" can be found in the Windows Driver installation package provided by the computer provider, which is the firmware memory patch, which holds the hexadecimal text, which can be opened to see.

How do I find the firmware memory patch file for my Bluetooth device?

Method One, locate the driver information file (. inf) in the Windows Driver installation package, as mine is "Bcbtums-win8x64-brcm.inf". Open the Find "usb\vid_13d3&pid_3404" (the supplier number and product number as per your own) and find information similar to the following:

  %azbtmodule.devicedesc%=ramusb3404, usb\vid_13d3&pid_3404

Then look for "[RAMUSB3404" and you will find something similar to the following:

    [RAMUSB3404. Copylist]

Bcbtums.sys

Btwampfl.sys

Bcm20702a1_001.002.014.1443.1479.hex

See the ". Hex" file name now, that's it.

Method Two, look in the Windows Device Manager, as shown in.

Save the ". Hex" file and wait for it to be used. Now reboot into Ubuntu 14.04 os ...

Operation under Ubuntu is dominated by commands.

The first step is to modify the kernel to kernel 3.13 as an example.

    CD ~

mkdir kernel

CD kernel

Apt-get build-dep linux-image-' uname-r '

Apt-get source linux-image-' Uname-r '

CD linux-3.13.0/drivers/bluetooth/

Then edit the code file BTUSB.C, locate the BCM20702A0 device number code,

    /* Broadcom bcm20702a0 */

{Usb_device (0x0b05, 0X17B5)},

{Usb_device (0x0b05, 0X17CB)},

{Usb_device (0X04CA, 0x2003)},

{Usb_device (0x0489, 0xe042)},

{Usb_device (0X13D3, 0x3388),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0X13D3, 0x3389),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0x413c, 0x8197),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0x413c, 0x8143),. Driver_info = Btusb_bcm_patchram},

Switch

    /* Broadcom bcm20702a0 */

{Usb_device (0X13D3, 0x3404),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0x0b05, 0X17B5)},

{Usb_device (0x0b05, 0X17CB)},

{Usb_device (0X04CA, 0x2003)},

{Usb_device (0x0489, 0xe042)},

{Usb_device (0X13D3, 0x3388),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0X13D3, 0x3389),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0x413c, 0x8197),. Driver_info = Btusb_bcm_patchram},

{Usb_device (0x413c, 0x8143),. Driver_info = Btusb_bcm_patchram},

Save the changes, and then compile the Btusb module to execute:

    Make-c/lib/modules/' uname-r '/build m= ' pwd ' modules

Normally, the Btusb.ko file is compiled. Update to your operating system kernel:

    mv/lib/modules/' uname-r '/kernel/drivers/bluetooth/btusb.ko/

CP btusb.ko/lib/modules/' uname-r '/kernel/drivers/bluetooth/

Depmod

The second step is to generate the Bluetooth device firmware (firmware).

    git clone https://github.com/jessesung/hex2hcd.git

CD HEX2HCD

Make

./HEX2HCD Bcm20702a1_001.002.014.1443.1479.hex FW-13D3_3404.HCD

Note the generated file name must be in the "fw-<4 number hexadecimal >_<4-bit product number hex >.HCD" format, all lowercase.

Then copy the firmware file to the specified directory:

    CP fw-13d3_3404.hcd/lib/firmware/

Chown ROOT:ROOT/LIB/FIRMWARE/FW-13D3_3404.HCD

OK, Finish. Can execute "rmmod btusb; Modprobe Btusb "or restart the operating system to see Bluetooth normal drive No. If normal, execute command "Rfkill list" can see HCI0, then execute "hciconfig hci0 up" can let Bluetooth on, "Hcitool Dev" can see the Bluetooth device, "Hcitool Scan" can scan the surrounding Bluetooth signal. If not, perform a DMESG view log to troubleshoot.

Note that as the kernel module is modified, if the OS upgrade kernel will invalidate the Bluetooth driver, the BTUSB module needs to be recompiled and installed under the new kernel.

BCM94352HMB Bluetooth bcm20702a0 Drive method under Ubuntu 14.04

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.