Realtek RTL8761B

From LinuxReviews
Jump to navigationJump to search

Realtek RTL8761B is a USB Bluetooth 5.0 dongle chip made by Realtek. It is identified by lsusb as 0bda:8771 Realtek Semiconductor Corp. Most of the cheaper BT 5.0 dongles, like the C-TECH BTD-01, use this chip.

Linux Support

The RTL8791B dongle chip has been supported by the bt_rtl (CONFIG_BT_RTL) driver since Linux 5.8.

You will need to upgrade your kernel to 5.8+ if you have an older kernel and you want to use this dongle.

CONFIG_BT_RTL is not listed as its own item in menuconfig in Linux 5.11, which can be a bit confusing. You should choose Networking support ▸ Bluetooth subsystem support ▸ Bluetooth device drivers ▸ HCI USB driver and the two options both named Realtek protocol support in that same menu (BT_HCIBTUSB_RTL and BT_HCIUART_RTL). You will then find that BT_RTL is enabled if you press / and search for BT_RTL.

The driver requires firmware. The firmware package shipped with most GNU/Linux distributions tend to just provide a /lib/firmware/rtl_bt/rtl8761a_fw.bin file for the RTL8761A model.

The firmware files for the RTL8761B can be acquired from the github.com/Realtek-OpenSource/android_hardware_realtek firmware repository using these links:

These firmware files need to be copied and renamed to:

  • /usr/lib/firmware/rtl_bt/rtl8761b_fw.bin OR /lib/firmware/rtl_bt/rtl8761b_fw.bin
  • /usr/lib/firmware/rtl_bt/rtl8761b_config.bin OR /lib/firmware/rtl_bt/rtl8761b_config.bin

It does not matter which location you copy the firmware files to on most distributions. Fedora and many others have a symbolic link from /lib/ to /usr/lib (making them the same folder).

Something called "Arch" has these firmware files available as a package called rtl8761b-fw (aur: rtl8761b-fw).

Links

Robert Síbek has written a tutorial with screenshots for the C-TECH BTD-01 dongle (actually the RTL8761B chip) specific to Ubuntu 20.10.


avatar

Linuxuzer

6 months ago
Score 0++

`linux-firmware package` still doesn't contains firmware files for 8761B version. They can be compiled and added manually. Also it works on kernels before 5.8 but with kernel patch.

I made it works on 5.4 kernel as described here: https://foru...237#p1917237
avatar

Horror-vacui

2 months ago
Score 0++

I am running Xubuntu 20.04.2 LTS with kernel 5.11.6-051106-generic, but the bluetooth firmware was not included. After downloading the two linked rtl8761b_* files, it was working, without restarting anything. Unfortunately the communication quality is not great (data from blueman-manager): -signal strength 40% -link quality 10% -transmit power level 50%

The above data was obtained when I was sitting half a meter from the adapter, and they are also confirmed by experience. Walking a few meter away, the connection starts to break... Is there any trick with which the range can be improved.
avatar

Mershl

one month ago
Score 0++
Running Fedora 34 with latest linux-firmware also requires manually providing the rtl8761b firmware. As far as I can see rtl8761a is already available in linux-firmware. Is there a problem with rtl8761b or is it on the roadmap to be included in upstream?
avatar

Anonymous (cde9f771)

27 days ago
Score 0

When I copied over the `*_config` file, then the usb loaded with config where the driver was `btusb` rather than `bt_rtl`, and that lead to a successful demsg output but `bluetoothctl list` would still not detect anything.

After deleting the `*_config` file, it worked (because it might've tried some default configuration, I guess)
avatar

Anonymous (fab07f9e)

9 days ago
Score 0
Same here, had to delete the _config file
avatar

Anonymous (063d8a83)

17 hours 2 minutes ago
Score 0

Hi, I have issue with this device/fw on debian testing. It is working some time after restart. Do you have any solution for this ?

Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: command 0x1002 tx timeout Bluetooth: hci0: No gpio to reset Realtek device, ignoring Bluetooth: hci0: Received unexpected HCI Event 00000000 Bluetooth: hci0: command 0x1002 tx timeout Bluetooth: hci0: No gpio to reset Realtek device, ignoring Bluetooth: hci0: command 0x1002 tx timeout Bluetooth: hci0: No gpio to reset Realtek device, ignoring Bluetooth: hci0: command 0x1002 tx timeout

Bluetooth: hci0: No gpio to reset Realtek device, ignoring
avatar

Anonymous (a0d4bc5b)

3 hours 5 minutes ago
Score 0
Which firmware are you using, the one provided in the link above or the firmware-realtek in the Bullseye repository?
Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.