From: bugzilla-daemon@kernel.org
To: linux-bluetooth@vger.kernel.org
Subject: [Bug 221598] Bluetooth: btusb/btrtl RTL8821C 0bda:c821 HFP/mSBC microphone stutters with bursty SCO RX delivery
Date: Sat, 30 May 2026 22:12:47 +0000 [thread overview]
Message-ID: <bug-221598-62941-ZECWEKs7bL@https.bugzilla.kernel.org/> (raw)
In-Reply-To: <bug-221598-62941@https.bugzilla.kernel.org/>
https://bugzilla.kernel.org/show_bug.cgi?id=221598
--- Comment #8 from Alexander Paderin (apocarteres@gmail.com) ---
Additional update: loading the RTL8821CE Wi-Fi-side driver dramatically
improves Bluetooth HFP/mSBC RX stability on this RTL8821CE combo module.
Hardware topology:
- Bluetooth: Realtek `0bda:c821`, internal USB Full-Speed device, handled by
`btusb`
- Wi-Fi: Realtek RTL8821CE PCIe `10ec:c821`, handled by `rtw88_8821ce` /
`rtw_8821ce`
I ran the same near/far/near2 Bluetooth HFP microphone range test twice:
1. Wi-Fi driver not loaded.
2. Wi-Fi driver loaded manually, but Wi-Fi radio kept disabled in
NetworkManager.
State during the improved run:
```text
02:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8821CE
802.11ac PCIe Wireless Network Adapter [10ec:c821]
Kernel driver in use: rtw_8821ce
Kernel modules: rtw88_8821ce
WIFI-HW WIFI WWAN-HW WWAN
enabled disabled missing enabled
wlp2s0 DOWN
```
Kernel log also showed the Wi-Fi firmware initialized:
```text
rtw_8821ce 0000:02:00.0: Firmware version 24.11.0, H2C version 12
```
Results:
| run | Wi-Fi driver | phase | RSSI avg | RSSI min | RX markers | RX bad seq/k
| RX bad dist/k | TX bad seq | TX bad dist |
|---|---|---|---:|---:|---:|---:|---:|---:|---:|
| `range-sco-test-20260531-005925` | not loaded | near | -38.9 | -42 | 1976 |
1.01 | 3.54 | 0 | 0 |
| `range-sco-test-20260531-005925` | not loaded | far | -58.1 | -70 | 3528 |
123.30 | 103.74 | 0 | 0 |
| `range-sco-test-20260531-005925` | not loaded | near2 | -49.6 | -54 | 1936 |
38.74 | 31.51 | 0 | 0 |
| `range-sco-test-20260531-010648` | loaded, Wi-Fi radio off | near | -46.7 |
-52 | 1975 | 1.01 | 1.01 | 0 | 0 |
| `range-sco-test-20260531-010648` | loaded, Wi-Fi radio off | far | -53.9 |
-60 | 3989 | 2.51 | 2.51 | 0 | 0 |
| `range-sco-test-20260531-010648` | loaded, Wi-Fi radio off | near2 | -53.1 |
-64 | 1984 | 6.55 | 6.55 | 0 | 0 |
The important result is the far phase:
- RX bad sequence rate dropped from `123.30/k` to `2.51/k`.
- RX bad distance rate dropped from `103.74/k` to `2.51/k`.
- TX remained clean in both runs.
- RSSI no longer collapsed to `-70 dBm`; the improved run bottomed at `-60
dBm`.
Because Wi-Fi remained disabled and the interface stayed down, this improvement
does not appear to come from active Wi-Fi traffic. It appears to come from the
Wi-Fi-side driver/firmware initialization of the same RTL8821CE combo chip.
This strongly suggests that the Linux Bluetooth-only initialization path for
`0bda:c821` leaves the combo chip in a worse Bluetooth RX/range state than the
state after `rtw_8821ce` initializes the Wi-Fi side. The likely area is Realtek
combo-chip coexistence/RF/antenna-path/shared firmware state.
Practical workaround on this machine:
- keep `rtw88_8821ce` loadable and loaded at boot;
- keep Wi-Fi radio disabled if Wi-Fi is not needed.
Local captures/reports:
- `captures/range-sco-test-20260531-005925.snoop`
- `captures/range-sco-test-20260531-005925-metrics.csv`
- `reports/range-sco-test-20260531-005925-analysis.md`
- `captures/range-sco-test-20260531-010648.snoop`
- `captures/range-sco-test-20260531-010648-metrics.csv`
- `reports/range-sco-test-20260531-010648-analysis.md`
- `reports/rtl8821ce-wifi-driver-coex-range-comparison-20260531.md`
--
You may reply to this email to add a comment.
You are receiving this mail because:
You are the assignee for the bug.
prev parent reply other threads:[~2026-05-30 22:12 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-30 15:18 [Bug 221598] New: Bluetooth: btusb/btrtl RTL8821C 0bda:c821 HFP/mSBC microphone stutters with bursty SCO RX delivery bugzilla-daemon
2026-05-30 15:19 ` [Bug 221598] " bugzilla-daemon
2026-05-30 15:20 ` bugzilla-daemon
2026-05-30 15:25 ` bugzilla-daemon
2026-05-30 15:27 ` bugzilla-daemon
2026-05-30 15:32 ` bugzilla-daemon
2026-05-30 16:21 ` bugzilla-daemon
2026-05-30 16:23 ` bugzilla-daemon
2026-05-30 21:38 ` bugzilla-daemon
2026-05-30 22:12 ` bugzilla-daemon [this message]
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-221598-62941-ZECWEKs7bL@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