From: bugzilla-daemon@kernel.org
To: linux-bluetooth@vger.kernel.org
Subject: [Bug 218494] New: btrtl/rtl8761bu: RFCOMM is not working
Date: Wed, 14 Feb 2024 16:44:06 +0000 [thread overview]
Message-ID: <bug-218494-62941@https.bugzilla.kernel.org/> (raw)
https://bugzilla.kernel.org/show_bug.cgi?id=218494
Bug ID: 218494
Summary: btrtl/rtl8761bu: RFCOMM is not working
Product: Drivers
Version: 2.5
Hardware: All
OS: Linux
Status: NEW
Severity: normal
Priority: P3
Component: Bluetooth
Assignee: linux-bluetooth@vger.kernel.org
Reporter: manio@skyboo.net
Regression: No
Hi,
I am trying to use an RFCOMM-capable dongle under Arch Linux (kernel:
6.6.10-arch1-1).
The BT usb adapter is:
ID 0bda:8771 Realtek Semiconductor Corp. Bluetooth Radio
dmesg:
[ 19.174428] Bluetooth: Core ver 2.22
[ 19.174448] NET: Registered PF_BLUETOOTH protocol family
[ 19.174448] Bluetooth: HCI device and connection manager initialized
[ 19.174452] Bluetooth: HCI socket layer initialized
[ 19.174454] Bluetooth: L2CAP socket layer initialized
[ 19.174460] Bluetooth: SCO socket layer initialized
[ 20.497753] Bluetooth: hci0: RTL: examining hci_ver=0a hci_rev=000b
lmp_ver=0a lmp_subver=8761
[ 20.500891] Bluetooth: hci0: RTL: rom_version status=0 version=1
[ 20.500894] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_fw.bin
[ 20.502433] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_config.bin
[ 20.503140] Bluetooth: hci0: RTL: cfg_sz 6, total sz 30210
[ 20.898620] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 20.898620] Bluetooth: BNEP filters: protocol multicast
[ 20.898620] Bluetooth: BNEP socket layer initialized
[ 21.285074] Bluetooth: hci0: RTL: fw version 0xdfc6d922
[ 21.430191] Bluetooth: MGMT ver 1.22
[ 40.360736] Bluetooth: RFCOMM TTY layer initialized
[ 40.360743] Bluetooth: RFCOMM socket layer initialized
[ 40.360746] Bluetooth: RFCOMM ver 1.11
The rfcomm utility was not provided so I had to install:
https://archlinux.org/packages/extra/x86_64/bluez-deprecated-tools/
unfortunately the command:
rfcomm connect 0 B8:8B:15:0A:1C:AD
gives:
Can't connect RFCOMM socket: Operation now in progress
I tried also with `bind` argument - all of this gives errors.
Finally I tried python tools to directly use RFCOMM, then even a rust rfcat
tool from:
https://github.com/bluez/bluer/blob/master/bluer-tools/src/rfcat.rs
All gives various errors/timeouts and cannot connect to the dongle's
serial port. I was also trying to pair/connect with bluetoothctl prior
this - no change.
In fact (see below - pairing seems not needed at all).
Finally I started very very old Asus laptop with debian.
I invoked:
rfcomm connect 0 B8:8B:15:0A:1C:AD
and this immediately gives me:
Connected /dev/rfcomm0 to B8:8B:15:0A:1C:AD on channel 1
Press CTRL-C for hangup
... and it works like a charm!!! I can connect minicom and communication is
working (no pairing/connecting with bluetoothctl needed).
dmesg there:
[ 298.641307] Bluetooth: Core ver 2.22
[ 298.641393] Bluetooth: HCI device and connection manager initialized
[ 298.641405] Bluetooth: HCI socket layer initialized
[ 298.641409] Bluetooth: L2CAP socket layer initialized
[ 298.641419] Bluetooth: SCO socket layer initialized
[ 299.673331] Bluetooth: hci0: unexpected event for opcode 0x0000
[ 311.510413] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 311.510422] Bluetooth: BNEP filters: protocol multicast
[ 311.510435] Bluetooth: BNEP socket layer initialized
[ 1902.017008] Bluetooth: RFCOMM TTY layer initialized
[ 1902.017026] Bluetooth: RFCOMM socket layer initialized
[ 1902.017048] Bluetooth: RFCOMM ver 1.11
the adapter is:
ID 0b05:1712 ASUSTek Computer, Inc. BT-183 Bluetooth 2.0+EDR adapter
I am now trying to identify the problem/difference. I've logged all data using
btmon from the start to invoking the rfcom connect.
I can see that the difference start when my Asus laptop is showing this:
< ACL Data TX: Handle 42 flags 0x02 dlen 10
#13 [hci0] 40.891571
L2CAP: Information Request (0x0a) ident 1 len 2
Type: Extended features supported (0x0002)
> HCI Event: Number of Completed Packets (0x13) plen 5
> #14 [hci0] 40.898476
Num handles: 1
Handle: 42 Address: B8:8B:15:0A:1C:AD (OUI B8-8B-15)
Count: 1
> ACL Data RX: Handle 42 flags 0x02 dlen 16
> #15 [hci0] 40.899488
L2CAP: Information Response (0x0b) ident 1 len 8
Type: Extended features supported (0x0002)
Result: Success (0x0000)
Features: 0x00000000
< ACL Data TX: Handle 42 flags 0x02 dlen 12
#16 [hci0] 40.899554
L2CAP: Connection Request (0x02) ident 2 len 4
PSM: 3 (0x0003)
Source CID: 64
I don't see any L2CAP and RFCOMM lines on the "bad" ArchLinux setup.
ps. I tested the dongle also from Windows and Android - also works OK.
update:
I've exposed the laptop's bluetooth adapter to my ArchLinux using USB/IP
method.
This way on the same platform where the Realtek USB adapter is not
working I was able to also use laptop's BT adapter.
Here are the results:
❯ rfcomm -i hci0 connect 0 B8:8B:15:0A:1C:AD
Can't connect RFCOMM socket: Operation now in progress
# --> problem on realtek
❯ rfcomm -i hci1 connect 0 B8:8B:15:0A:1C:AD
Connected /dev/rfcomm0 to B8:8B:15:0A:1C:AD on channel 1
Press CTRL-C for hangup
^CDisconnected
# --> works great on Asus BT
Conclusion: the ArchLinux platform is OK (i mean the distribution,
bluetooth stack, kernel modules and utilities).
The problem seems to be the Realtek drivers/firmware for my rtl8761bu...
I am attaching full logs (called good and bad). dvbsnoop logs also
included.
update2: I also tested the initial firmware added (from 2021-06-09):
https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/log/rtl_bt/rtl8761bu_fw.bin
also doesn't work
--
You may reply to this email to add a comment.
You are receiving this mail because:
You are the assignee for the bug.
next reply other threads:[~2024-02-14 16:44 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-02-14 16:44 bugzilla-daemon [this message]
2024-02-14 16:45 ` [Bug 218494] btrtl/rtl8761bu: RFCOMM is not working bugzilla-daemon
2024-02-14 16:45 ` bugzilla-daemon
2024-02-14 16:45 ` bugzilla-daemon
2024-02-14 16:46 ` bugzilla-daemon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=bug-218494-62941@https.bugzilla.kernel.org/ \
--to=bugzilla-daemon@kernel.org \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).