本方法在 Deepin 20.04 上成功应用,驱动了一个使用 RTL8761BUV芯片 的蓝牙适配器
实际上方法的可用范围至少可以推广到整个Ubuntu系的Linux系统,根据驱动的说明书,可被驱动的芯片也不仅限于RTL8761BUV

查找资料

在网上买了一个蓝牙适配器插在台式机上用,发现官方没有提供Linux下的驱动,于是尝试通过芯片名看能不能获取到相关驱动,搜索 RTL8761BUV Linux ,注意到这样一个结果
AUR (en) - rtl8761b-fw
显然这就是Linux官方的驱动,点进去发现source中有一个下载链接
https://mpow.s3-us-west-1.amazonaws.com/mpow_BH519A_driver+for+Linux.7z
这就应该是最新的驱动包了(注意这个地址可能会发生变化,所以关键在于学会操作方法)
下载它并解压到桌面

安装驱动

进入解压目录,发现Readme.txt和Makefile
在这里插入图片描述
查阅Readme.txt,发现如下关键内容

如何快速安装
$ sudo make install INTERFACE=all
or
$ sudo make install INTERFACE=usb
or
$ sudo make install INTERFACE=uart

因此在当前终端执行sudo make install INTERFACE=all即可完成驱动安装
驱动支持的其他芯片型号可以定位到关键词 FILENAME LIST 的下方查看
完成后,再次插入适配器,系统托盘区出现了蓝牙图标,可以用了!
我这边连上了鼠标和耳机,一切正常
在这里插入图片描述

小结

附上完整的Readme.txt

===============
  TITLE
===============

The document describes how to support Realtek Bluetooth UART and USB driver in Linux system.

===============
  REQUIREMENT
===============

The supported kernel version is 2.6.32 - 5.7.1

=============================
  QUICKLY INSTALL AUTOMATICALLY
=============================

  $ sudo make install INTERFACE=all
or
  $ sudo make install INTERFACE=usb
or
  $ sudo make install INTERFACE=uart

===============
  FOR UART I/F
===============

-The default serial protocol of Realtek Bluetooth chip is Three-wire (H5) protocol.

-The default initial baud rate is 115200.

-Installation

  To support Three-wire (H5) protocol, you need to install Realtek hci_uart driver
  and rtk_hciattach tool.

  1. Make sure your UART setting is correct.
     host tx  - controller rx
     host rx  - controller tx
     host rts - controller cts
     host cts - ground
   ( host cts - controller rts ) // for RTL8822C and RTL8761B
          NC  - controller rts

  2. Install Bluetooth kernel driver and rtk_hciattach tool
   $ cd uart
   $ sudo make install

  3. Copy the right FW file and config file to the correct path.
   $ sudo mkdir -p /lib/firmware/rtlbt/
   $ sudo cp rtkbt-firmware/lib/firmware/rtlbt/rtl8xxxx_fw /lib/firmware/rtlbt/
   $ sudo cp rtkbt-firmware/lib/firmware/rtlbt/rtl8xxxx_config /lib/firmware/rtlbt/

   NOTE: PLEASE REFER THE FORWARD SECTION OF FILENAME LIST TO CORRESPONDE THE FW FILENAME AND THE CONFIG FILENAME WITH THE CHIP.

  3. Initialize Realtek Bluetooth chip by rtk_hciattach
   $ sudo rtk_hciattach -n -s 115200 ttyUSB0 rtk_h5

    Tips: ttyUSB0 is serial port name in your system, you should change it
    according to hardware such as ttyS0.

-Uninstallation
   $ sudo make uninstall

- If you want to change the parameter such as baud rate and pcm settings, you
should modify rtl8xxx_config file.

===============
  FOR USB I/F
===============

-Installation

  1. Build and install USB driver, change to the driver direcotory
   $ cd usb
   $ sudo make install

  2. Copy the right FW file and config file to the correct path.
   $ sudo cp rtkbt-firmware/lib/firmware/rtl8xxxxx_fw /lib/firmware/
   $ sudo cp rtkbt-firmware/lib/firmware/rtl8xxxxx_config /lib/firmware/

   NOTE: PLEASE REFER THE FORWARD SECTION OF FILENAME LIST TO CORRESPONDE THE FW FILENAME AND THE CONFIG FILENAME WITH THE CHIP.
	   
  3. Insert Realtek Bluetooth dongle
    Check LMP subversion by the following command
    $ hciconfig -a

    Now RTK chip can be recognized by the system and bluetooth function can be used.

-Uninstallation
   $ sudo make uninstall

===============	
  FILENAME LIST
===============
	
Chip		I/F 		FW/Config Path		FW Filename		Config Filename
		for
		BT driver
------------------------------------------------------------------------------------------------
RTL8761AUV	USB		/lib/firmware/		rtl8761au_fw		rtl8761a_config

RTL8761AW 	USB		/lib/firmware/		rtl8761aw_fw		rtl8761aw_config
(RTL8761AW 
+RTL8192EU)	

RTL8761AUV      USB		/lib/firmware/		rtl8761au8192ee_fw	rtl8761a_config
+RTL8192EE
 
RTL8761AUV	USB		/lib/firmware/		rtl8761au8192ee_fw	rtl8761a_config
+RTL8812AE
 
RTL8761ATV	UART		/lib/firmware/rtlbt/	rtl8761a_fw		rtl8761a_config

RTL8761ATV
+RTL8192EE	UART		/lib/firmware/rtlbt/	rtl8761at8192ee_fw	rtl8761a_config
 
-----------------------------------------------------------------------------------------------

RTL8761BUV	USB		/lib/firmware/		rtl8761bu_fw		rtl8761bu_config

RTL8761BTV	UART		/lib/firmware/rtlbt/	rtl8761b_fw		rtl8761b_config

-----------------------------------------------------------------------------------------------

RTL8725AU	USB		/lib/firmware/		rtl8725au_fw		rtl8725au_config

RTL8725AS	UART		/lib/firmware/rtlbt/	rtl8725as_fw		rtl8725as_config

-----------------------------------------------------------------------------------------------

RTL8723BU	USB		/lib/firmware/		rtl8723b_fw		rtl8723b_config
RTL8723BE

RTL8723BS	UART		/lib/firmware/rtlbt/	rtl8723b_fw		rtl8723b_config

-----------------------------------------------------------------------------------------------

RTL8821AU	USB		/lib/firmware/		rtl8821a_fw		rtl8821a_config
RTL8821AE

RTL8821AS	UART		/lib/firmware/rtlbt/	rtl8821a_fw		rtl8821a_config

-----------------------------------------------------------------------------------------------

RTL8822BU	USB		/lib/firmware/		rtl8822bu_fw		rtl8822bu_config
RTL8822BE

RTL8822BS	UART		/lib/firmware/rtlbt/	rtl8822b_fw		rtl8822b_config

-----------------------------------------------------------------------------------------------

RTL8723DU	USB		/lib/firmware/		rtl8723du_fw		rtl8723du_config
RTL8723DE

RTL8723DS	UART		/lib/firmware/rtlbt/	rtl8723d_fw		rtl8723d_config

-----------------------------------------------------------------------------------------------

RTL8821CU	USB		/lib/firmware/		rtl8821cu_fw		rtl8821cu_config
RTL8821CE

RTL8821CS	UART		/lib/firmware/rtlbt/	rtl8821c_fw		rtl8821c_config

-----------------------------------------------------------------------------------------------

RTL8822CU	USB		/lib/firmware/		rtl8822cu_fw		rtl8822cu_config
RTL8822CE

RTL8822CS	UART		/lib/firmware/rtlbt/	rtl8822cs_fw		rtl8822cs_config

-----------------------------------------------------------------------------------------------

RTL8723FU	USB		/lib/firmware/		rtl8723fu_fw		rtl8723fu_config
RTL8723FE

RTL8723FS	UART		/lib/firmware/rtlbt/	rtl8723fs_fw		rtl8723fs_config

-----------------------------------------------------------------------------------------------

RTL8852AU	USB		/lib/firmware/		rtl8852au_fw		rtl8852au_config
RTL8852AE

RTL8852AS	UART		/lib/firmware/rtlbt/	rtl8852as_fw		rtl8852as_config

-----------------------------------------------------------------------------------------------

可见平时学习的时候一定要善用帮助文档和官方资料,要是依赖某某博客,效率就不知低到哪去了

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐