lwfinger / rtw89

Driver for Realtek 8852AE, an 802.11ax device
GNU General Public License v2.0
1.24k stars 157 forks source link

wifi installs find, bluetooth remains non-functioning - debian 11 #48

Closed kreativkod closed 2 years ago

kreativkod commented 3 years ago

Thanks a zillion for the 8852AE wifi driver! I just got a new Lenovo laptop and your rtw89 package found the wificard. The kernel package 5.10.0-8-amd only had a driver for rtl8852a, not for rtl8852ae.

But I remain confused. Bluetooth does not seem to function (cannot initiate pairing operations, and my smartphone does not find my computer). Was it supposed to become workable with your package?

Do I need to change from the btusb driver that seems to load at boot?

Network: Device-1: Realtek driver: rtw89_pci IF: wlo1 state: up mac: 14:5a:fc:1e:b3:4f Bluetooth: Device-1: Realtek Bluetooth Radio type: USB driver: btusb Report: ID: hci0 state: up running pscan iscan bt-v: 3.0 address: 14:5A:FC:1E:B3:50

lwfinger commented 3 years ago

My package is the wifi driver only. Drivers btusb and btrtl are correct for the BT part. Check the output of dmesg to make sure you have the correct firmware, otherwise I have no suggestions.

As stated many times - I do NOT do Bluetooth!!

kreativkod commented 3 years ago

I understand. Thanks for taking the time to answer.

christianbaun commented 2 years ago

I have the same issue with Debian 11. WIFI works well, but bluetooth not at all. Did anyone get it running?

lwfinger commented 2 years ago

Well, you did not provide any information. Using v6 of rtw89 and the 5.14 kernel, I have gotten BT to work.

What does lsusb have to say about your BT?

christianbaun commented 2 years ago

It is a ThinkPad T14s AMD Gen1 running Debian 11 (stable) with the shipped Kernel 5.10.

$ uname -srvmo
Linux 5.10.0-8-amd64 #1 SMP Debian 5.10.46-4 (2021-08-03) x86_64 GNU/Linux

I did this:

git clone https://github.com/lwfinger/rtw89.git -b v5
cd rtw89
make
sudo make sign-install

After a reboot...

# inxi --bluetooth -xxx
Bluetooth: Device-1: Realtek Bluetooth Radio type: USB driver: btusb v: 0.8 bus ID: 6-4:3 chip ID: 0bda:4852 class ID: e001 
           serial: 00e04c000001 
           Report: ID: hci0 state: up running bt-v: 3.0 lmp-v: 5.2 sub-v: 8852 hci-v: 5.2 rev: a address: 14:5A:FC:25:84:70 
# dmesg | grep -i Blue
[    1.964351] usb 6-4: Product: Bluetooth Radio
[    3.038192] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
[    3.513666] Bluetooth: Core ver 2.22
[    3.513692] Bluetooth: HCI device and connection manager initialized
[    3.513698] Bluetooth: HCI socket layer initialized
[    3.513699] Bluetooth: L2CAP socket layer initialized
[    3.513702] Bluetooth: SCO socket layer initialized
[    3.520343] Bluetooth: hci0: RTL: examining hci_ver=0b hci_rev=000a lmp_ver=0b lmp_subver=8852
[    3.520347] Bluetooth: hci0: RTL: unknown IC info, lmp subver 8852, hci rev 000a, hci ver 000b
[    3.520348] Bluetooth: hci0: RTL: assuming no firmware upload needed
[    4.095245] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    4.095248] Bluetooth: BNEP filters: protocol multicast
[    4.095252] Bluetooth: BNEP socket layer initialized
[    7.093501] Bluetooth: RFCOMM TTY layer initialized
[    7.093509] Bluetooth: RFCOMM socket layer initialized
[    7.093517] Bluetooth: RFCOMM ver 1.11
lwfinger commented 2 years ago

Where the ***** is the output of lsusb that I asked for? I do not know why I continue to bother with answering your questions. You never seem to read what I writ3e,

If your device is recognized as a generic BT device, then the special code needed for the Realrek device will not be loaded.

christianbaun commented 2 years ago

It is the same information, provided by inxi.

$ lsusb | grep Blue
Bus 006 Device 003: ID 0bda:4852 Realtek Semiconductor Corp. Bluetooth Radio

And maybe this information from /sys/kernel/debug/usb/devices is helpful:

T:  Bus=06 Lev=01 Prnt=01 Port=03 Cnt=02 Dev#=  3 Spd=12   MxCh= 0
D:  Ver= 1.00 Cls=e0(wlcon) Sub=01 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=0bda ProdID=4852 Rev= 0.00
S:  Manufacturer=Realtek
S:  Product=Bluetooth Radio
S:  SerialNumber=00e04c000001
C:* #Ifs= 2 Cfg#= 1 Atr=e0 MxPwr=500mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=1ms
E:  Ad=02(O) Atr=02(Bulk) MxPS=  64 Ivl=0ms
E:  Ad=82(I) Atr=02(Bulk) MxPS=  64 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=   0 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=   0 Ivl=1ms
I:  If#= 1 Alt= 1 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=   9 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=   9 Ivl=1ms
I:  If#= 1 Alt= 2 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=  17 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=  17 Ivl=1ms
I:  If#= 1 Alt= 3 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=  25 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=  25 Ivl=1ms
I:  If#= 1 Alt= 4 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=  33 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=  33 Ivl=1ms
I:  If#= 1 Alt= 5 #EPs= 2 Cls=e0(wlcon) Sub=01 Prot=01 Driver=btusb
E:  Ad=03(O) Atr=01(Isoc) MxPS=  49 Ivl=1ms
E:  Ad=83(I) Atr=01(Isoc) MxPS=  49 Ivl=1ms
lwfinger commented 2 years ago

That device is not in the kernel tables. In addition, my previous update for devices with ID 0x04ca:0x4006 have not yet propagated through the system. You will need to build your own kernel. Install the source and edit drivers/bluetooth/btusb.c.

Find the code that says / Realtek 8852AE Bluetooth devices / { USB_DEVICE(0x0bda, 0xc852), .driver_info = BTUSB_REALTEK | BTUSB_WIDEBAND_SPEECH },

Duplicate the last two lines and replace 0xc852 with 0x4852.

lwfinger commented 2 years ago

The one I submitted earlier was in the kernel. I forgot that I checked out an older version.

I formatted an E-mail and submitted your USB_ID to the kernel driver. It will be added to the kernel and propagated back to all stable kernels in a few weeks.

christianbaun commented 2 years ago

... You will need to build your own kernel. Install the source and edit drivers/bluetooth/btusb.c.

I decided to pick another option. I ordered a new Intel AX200 Wireless Adapter WI-FI 6 2230 yesterday for less than 20€ after your post. It arrived today. Replacing the Realtek RTL8852AE with the Intel NIC required less than 5 minutes, and after rebooting, WIFI and Bluetooth immediately worked well. For me, that's better than investing hours into trying to get the Realtek NIC running propperly.

lwfinger commented 2 years ago

Your choice.