Skip to content

Instantly share code, notes, and snippets.

@ssledz
Last active September 7, 2024 04:32
Show Gist options
  • Save ssledz/69b7f7b0438e653c08c155e244fdf7d8 to your computer and use it in GitHub Desktop.
Save ssledz/69b7f7b0438e653c08c155e244fdf7d8 to your computer and use it in GitHub Desktop.
Linux Installation guide for Asus USB-BT400

Download driver

curl 'https://dlcdnets.asus.com/pub/ASUS/wireless/USB-BT400/DR_USB_BT400_1201710_Windows.zip' \
  -o bt400-driver.zip

Driver & tools for bt400 can be found here

Find out what is a filename for your driver

Plug device and do

dmesg

You should see something like that

[ 4507.934913] usb 2-1.6: new full-speed USB device number 6 using ehci-pci
[ 4508.046595] usb 2-1.6: New USB device found, idVendor=0b05, idProduct=17cb
[ 4508.046599] usb 2-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4508.046600] usb 2-1.6: Product: BCM20702A0
[ 4508.046602] usb 2-1.6: Manufacturer: Broadcom Corp
[ 4508.046603] usb 2-1.6: SerialNumber: 5CF3709911C3
[ 4508.157541] Bluetooth: hci0: BCM: chip id 63
[ 4508.158516] Bluetooth: hci0: BCM: features 0x07
[ 4508.174532] Bluetooth: hci0: BCM20702A
[ 4508.175548] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
[ 4508.175568] bluetooth hci0: Direct firmware load for brcm/BCM20702A1-0b05-17cb.hcd failed with error -2
[ 4508.175571] Bluetooth: hci0: BCM: Patch brcm/BCM20702A1-0b05-17cb.hcd not found

So your device id is 0b05:17cb -> 0B05:17CB

and the driver should be pleace here: /lib/firmware/brcm/BCM20702A1-0b05-17cb.hcd

curl -s 'https://aur.archlinux.org/cgit/aur.git/tree/filelist.txt?h=bcm20702a1-firmware' \
 | grep '0B05:17CB'
0B05:17CB: BCM20702A1_001.002.014.1443.1467.hex

So the file name is BCM20702A1_001.002.014.1443.1467.hex

Prepare driver for linux

unzip bt400-driver.zip
cd Win10_USB-BT400_DRIVERS/Win10_USB-BT400_Driver_Package/64
hex2hcd BCM20702A1_001.002.014.1443.1467.hex -o BCM20702A1-0b05-17cb.hcd

Copy driver to the right place

sudo mkdir -p /lib/firmware/brcm/
sudo cp BCM20702A1-0b05-17cb.hcd /lib/firmware/brcm/

Re-connected the device

If everything is ok youd should see something like that

[ 4547.358736] usb 2-1.6: new full-speed USB device number 7 using ehci-pci
[ 4547.471204] usb 2-1.6: New USB device found, idVendor=0b05, idProduct=17cb
[ 4547.471208] usb 2-1.6: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4547.471210] usb 2-1.6: Product: BCM20702A0
[ 4547.471212] usb 2-1.6: Manufacturer: Broadcom Corp
[ 4547.471213] usb 2-1.6: SerialNumber: 5CF3709911C3
[ 4547.581275] Bluetooth: hci0: BCM: chip id 63
[ 4547.582284] Bluetooth: hci0: BCM: features 0x07
[ 4547.598294] Bluetooth: hci0: BCM20702A
[ 4547.599218] Bluetooth: hci0: BCM20702A1 (001.002.014) build 0000
[ 4548.468305] Bluetooth: hci0: BCM20702A1 (001.002.014) build 1467
[ 4548.484290] Bluetooth: hci0: Broadcom Bluetooth Device

Install blueman & pulse audio bluetooth module

sudo apt install blueman pulseaudio-module-bluetooth
0489:E047: BCM20702A1_001.002.014.1055.1061.hex
413C:8197: BCM20702A1_001.002.014.1443.1447.hex
413C:8143: BCM20702A1_001.002.014.1443.1449.hex
13D3:3411: BCM20702A1_001.002.014.1443.1450.hex
0A5C:21E8: BCM20702A1_001.002.014.1443.1459.hex
0A5C:21EC: BCM20702A1_001.002.014.1443.1460.hex
0A5C:21DE: BCM20702A1_001.002.014.1443.1461.hex
0A5C:2169: BCM20702A1_001.002.014.1443.1462.hex
0A5C:21FD: BCM20702A1_001.002.014.1443.1463.hex
0489:E046: BCM20702A1_001.002.014.1443.1465.hex
0489:E059: BCM20702A1_001.002.014.1443.1466.hex
0B05:17CB: BCM20702A1_001.002.014.1443.1467.hex
0B05:17B5: BCM20702A1_001.002.014.1443.1468.hex
0B05:17CF: BCM20702A1_001.002.014.1443.1469.hex
13D3:3384: BCM20702A1_001.002.014.1443.1477.hex
13D3:3392: BCM20702A1_001.002.014.1443.1478.hex
13D3:3404: BCM20702A1_001.002.014.1443.1479.hex
13D3:3418: BCM20702A1_001.002.014.1443.1480.hex
13D3:3413: BCM20702A1_001.002.014.1443.1481.hex
050D:065A: BCM20702A1_001.002.014.1443.1482.hex
145F:01A3: BCM20702A1_001.002.014.1443.1483.hex
0489:E042: BCM20702A1_001.002.014.1443.1484.hex
0489:E032: BCM20702A1_001.002.014.1443.1485.hex
0489:E04F: BCM20702A1_001.002.014.1443.1486.hex
105B:E066: BCM20702A1_001.002.014.1443.1487.hex
04CA:2003: BCM20702A1_001.002.014.1443.1488.hex
04CA:2004: BCM20702A1_001.002.014.1443.1489.hex
04CA:2005: BCM20702A1_001.002.014.1443.1490.hex
04CA:200A: BCM20702A1_001.002.014.1443.1492.hex
04CA:200B: BCM20702A1_001.002.014.1443.1493.hex
04CA:200C: BCM20702A1_001.002.014.1443.1494.hex
04CA:200E: BCM20702A1_001.002.014.1443.1499.hex
13D3:3435: BCM20702A1_001.002.014.1443.1501.hex
13D3:3456: BCM20702A1_001.002.014.1443.1502.hex
04CA:200F: BCM20702A1_001.002.014.1443.1521.hex
0489:E087: BCM20702A1_001.002.014.1443.1532.hex
0A5C:216F: BCM20702A1_001.002.014.1443.1572.hex
0B05:180A: BCM20702A1_001.002.014.1443.1714.hex
0A5C:21F1: BCM20702A1_001.002.014.1483.1645.hex
0A5C:216B: BCM20702A1_001.002.014.1483.1646.hex
0A5C:21E1: BCM20702A1_001.002.014.1483.1647.hex
0A5C:21FB: BCM20702A1_001.002.014.1483.1648.hex
0A5C:21E3: BCM20702A1_001.002.014.1483.1649.hex
0489:E07A: BCM20702A1_001.002.014.1483.1651.hex
0489:E052: BCM20702A1_001.002.014.1483.1668.hex
0A5C:21E6: BCM20702A1_001.002.014.1483.1669.hex
0A5C:21F4: BCM20702A1_001.002.014.1483.1670.hex
0A5C:21F3: BCM20702A1_001.002.014.1483.1671.hex
0930:021E: BCM20702A1_001.002.014.1483.1672.hex
0930:0221: BCM20702A1_001.002.014.1483.1673.hex
0930:0223: BCM20702A1_001.002.014.1483.1674.hex
0A5C:640B: BCM20702A1_001.002.014.1483.1709.hex
19FF:0239: BCM20702B0_002.001.014.0527.0557.hex
0A5C:6410: BCM20703A1_001.001.005.0197.0375.hex
0A5C:21FE: BCM43142A0_001.001.011.0161.0186.hex
0A5C:21DC: BCM43142A0_001.001.011.0161.0187.hex
0A5C:21D3: BCM43142A0_001.001.011.0197.0218.hex
0A5C:21D6: BCM43142A0_001.001.011.0197.0220.hex
0A5C:21D8: BCM43142A0_001.001.011.0197.0222.hex
0A5C:2167: BCM43142A0_001.001.011.0249.0265.hex
04CA:2007: BCM43142A0_001.001.011.0277.0279.hex
0489:E062: BCM43142A0_001.001.011.0277.0280.hex
185F:2167: BCM43142A0_001.001.011.0277.0292.hex
13D3:3484: BCM43142A0_001.001.011.0277.0302.hex
13D3:3482: BCM43142A0_001.001.011.0277.0304.hex
04F2:B49D: BCM43142A0_001.001.011.0277.0308.hex
105B:E065: BCM43142A0_001.001.011.0311.0312.hex
04F2:B4A1: BCM43142A0_001.001.011.0311.0316.hex
04CA:2006: BCM43142A0_001.001.011.0311.0327.hex
0A5C:216C: BCM43142A0_001.001.011.0311.0328.hex
0A5C:216D: BCM43142A0_001.001.011.0311.0329.hex
04CA:2009: BCM43142A0_001.001.011.0311.0330.hex
0489:E055: BCM43142A0_001.001.011.0311.0331.hex
13D3:3388: BCM43142A0_001.001.011.0311.0332.hex
13D3:3389: BCM43142A0_001.001.011.0311.0333.hex
0930:0225: BCM43142A0_001.001.011.0311.0334.hex
0930:0226: BCM43142A0_001.001.011.0311.0334.hex
13D3:3427: BCM43142A0_001.001.011.0311.0334.hex
0930:021F: BCM43142A0_001.001.011.0311.0335.hex
0A5C:216A: BCM43142A0_001.001.011.0311.0336.hex
04CA:2012: BCM43142A0_001.001.011.0311.0339.hex
0489:E096: BCM43142A0_001.001.011.0311.0340.hex
0A5C:21D7: BCM43142A0_001.001.011.0311.0341.hex
0930:0229: BCM4335C0_003.001.009.0066.0104.hex
0A5C:216E: BCM4335C0_003.001.009.0066.0105.hex
0A5C:2168: BCM4335C0_003.001.009.0066.0108.hex
0489:E079: BCM4335C0_003.001.009.0066.0115.hex
04CA:2016: BCM4335C0_003.001.009.0066.0121.hex
0A5C:6414: BCM4350C5_003.006.007.0095.1668.hex
0A5C:6412: BCM4350C5_003.006.007.0095.1703.hex
0A5C:6413: BCM4350C5_003.006.007.0095.1704.hex
0489:E097: BCM4356A2_001.003.015.0046.0104.hex
04CA:2014: BCM4356A2_001.003.015.0046.0120.hex
04CA:2013: BCM4356A2_001.003.015.0046.0122.hex
13D3:3473: BCM4356A2_001.003.015.0046.0125.hex
13D3:3488: BCM4356A2_001.003.015.0046.0127.hex
0B05:181D: BCM4356A2_001.003.015.0046.0132.hex
2B54:5600: BCM4356A2_001.003.015.0046.0154.hex
2B54:5601: BCM4356A2_001.003.015.0046.0162.hex
04F2:B4A2: BCM4356A2_001.003.015.0046.0183.hex
13D3:3492: BCM4356A2_001.003.015.0046.0195.hex
13D3:3485: BCM4356A2_001.003.015.0046.0197.hex
0A5C:640A: BCM4356A2_001.003.015.0080.0225.hex
0A5C:640E: BCM4356A2_001.003.015.0080.0225.hex
@alpereira7
Copy link

Great! That helped me. Thanks.

@magkopian
Copy link

Thank you so much for this!

@ssledz
Copy link
Author

ssledz commented Feb 17, 2021

enjoy :)

@berndporr
Copy link

Strange I've got all these files on my ubuntu system without ever installing them. I've tried
dpkg -S /lib/firmware/brcm/BCM43142A0-13d3-3389.hcd
and get:
dpkg-query: no path found matching pattern /lib/firmware/brcm/BCM43142A0-13d3-3389.hcd. Were they part of a nonfree package under Ubuntu in the past?

@markolainovic-tomtom
Copy link

markolainovic-tomtom commented Mar 31, 2021

Thanks a lot!

@boatman444
Copy link

Hmm... When I go to convert the hex file to hcd, I am getting the "Failed to get file size" error. The file generated is empty. Any help would be greatly appreciated.
Thanks.

@letrungkien211
Copy link

Thank you so much! Work like a charm!

@adrianvg
Copy link

adrianvg commented Oct 15, 2021

Running Kubuntu 20.04 LTS, the Asus BT400 and a pair of Bose QC35-II.
Everything's there filewise. When pressing Connect to headset in Blueman, it connects then disconnects after a few seconds.
This has worked before, kinda'.

I'm getting to believe bluetooth support in *ubuntu is more of a hit or miss experience. :-/

Edit:
Found this https://askubuntu.com/questions/381143/bt-dongle-asus-usb-bt400-not-working, and disabled bluetooth on phone. Still no go.

@fmgburner25
Copy link

fmgburner25 commented Nov 2, 2021

@ ssledz

Thank you soooo much.

I have a HP HP-8760w with Kubuntu 21.04 and the ASUS BT400 and I have tried it as you did.

Before the ASUS dongle with the default driver stops with my bluetooth mouse at 3.0 and 5.0 after 30 minutes of using it.

Into the terminal I got with "sudo dmesg"

[50363.374562] Bluetooth: hci0: BCM: firmware Patch file not found, tried

after the driver installing I got with "sudo dmesg"

[52291.385186] Bluetooth: hci0: BCM20702A1 'brcm/BCM20702A1-0b05-17cb.hcd' Patch

Now I have to check if it is better with any break.

One problem I have, when I try onto my mobile Poco NFC Phone to send a *.mp3 file to my PC then it played the song and not send it.

Or: I don't know where the file is located.

@sobryan
Copy link

sobryan commented Nov 12, 2021

These were good instructions to follow for Ubuntu 20.04.3 LTS. The initial url for "DR_USB_BT400_1201710_Windows.zip" is still valid and the latest available when I ran the instructions. Thank you for these instructions!

@RememberTheAir
Copy link

Tried this on Pop!OS 21.10, worked perfectly! Thank you!

@gcastillom90
Copy link

Worked for Ubuntu 20.04. Thanks a lot!

@eternalprisms
Copy link

Thanks a bunch! You're awesome ٩(。•́‿•̀。)۶
Working perfectly on 20.04.1-Ubuntu.

@rolandf
Copy link

rolandf commented Aug 5, 2022

Thank you very much, clear instructions that worked the first try!

@imkermichel
Copy link

Worked like a charm. Debian 11 server.

@RomanSteinberg
Copy link

Ubuntu 20.04.
Bluetooth headset was working fine about 5 minutes. After that it was disconnected and never back to work (turn on/off bluetooth, pairing once more, reboot). Once I decided to remove Blueman (and reboot) and headset started to work fine again.

@farlies
Copy link

farlies commented Apr 30, 2023

A cunning hack that is still relevant and effective in Arch Linux 2023.04.01. Bravo.

@markducks
Copy link

markducks commented Aug 9, 2023

Thank you so much <3. Ubuntu 22.04 worked perfectly.

@rmaafs
Copy link

rmaafs commented May 18, 2024

@Neowizard
Copy link

This solution worked perfectly on my 22.04

@kessmith
Copy link

This was extremely helpful and worked for 20.04

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment