All of lore.kernel.org
 help / color / mirror / Atom feed
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 21:38:44 +0000	[thread overview]
Message-ID: <bug-221598-62941-lfsHy6DFAb@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 #7 from Alexander Paderin (apocarteres@gmail.com) ---
Additional update after isolating user-space HCI traffic:

I found a strong practical mitigation/confounder: stopping/removing Blueman
significantly improves the HFP/mSBC microphone quality on this machine.

Before this test, Blueman UI processes were running:

- `blueman-manager`
- `blueman-applet`
- `blueman-tray`

The bad traces with Blueman running contained frequent HCI control traffic,
especially:

- `Read RSSI` (`0x1405`)
- `Read Transmit Power Level` (`0x0c2d`)

After stopping/removing Blueman, the same headset/machine produced much cleaner
captures. The subjective microphone stutter also became noticeably better.

Summary of RX mSBC/H2 continuity results:

| run | extra HCI polling | RX H2 markers | bad seq | bad seq/k | bad dist |
bad dist/k |
|---|---:|---:|---:|---:|---:|---:|
| old control | yes | 3486 | 21 | 6.02 | 23 | 6.60 |
| no-Blueman control 1 | no | 4301 | 6 | 1.39 | 15 | 3.49 |
| no-Blueman control 2 | no | 4312 | 6 | 1.39 | 6 | 1.39 |
| bad noisy watch-only run | yes | 3949 | 454 | 114.97 | 425 | 107.62 |
| bad noisy raw-open repeat | yes | 4812 | 453 | 94.14 | 385 | 80.01 |

TX remained clean in all runs (`bad_sequence=0`, `bad_distance=0`).

Important caveat: I then tried to reproduce the issue without Blueman by
injecting the same polling manually after eSCO setup. The stress script sent 25
pairs of:

- `Read RSSI` (`0x1405`)
- `Read Transmit Power Level` (`0x0c2d`)

That did not reproduce the catastrophic bad runs:

| run | polling | RX H2 markers | bad seq | bad seq/k | bad dist | bad dist/k |
|---|---:|---:|---:|---:|---:|---:|
| no-Blueman control 2 | no | 4312 | 6 | 1.39 | 6 | 1.39 |
| artificial HCI polling stress | 25 RSSI + 25 TX-power reads | 3778 | 16 |
4.24 | 13 | 3.44 |

So `Read RSSI` / `Read Transmit Power Level` alone is not proven to be the
direct root cause. The stronger conclusion is:

- Removing Blueman is a real practical mitigation on this RTL8821C/0bda:c821
system.
- Extra user-space HCI management/control traffic is a strong confounder and
can correlate with much worse RX mSBC continuity.
- The underlying failure still appears to be RX-only H2/mSBC continuity loss:
host TX stays clean, eSCO setup parameters remain normal, and RX still has some
breaks even in the clean no-Blueman baseline.

Relevant local captures/reports:

- `captures/sco-control-test-20260531-002158.snoop`
- `captures/sco-control-test-20260531-002431.snoop`
- `captures/hci-poll-stress-test-20260531-003222.snoop`
- `reports/control-no-blueman-20260531-002158-findings.md`
- `reports/control-no-blueman-repeat-20260531-002431-findings.md`
- `reports/hci-poll-stress-20260531-003222-findings.md`

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are the assignee for the bug.

  parent reply	other threads:[~2026-05-30 21:38 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 [this message]
2026-05-30 22:12 ` 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-221598-62941-lfsHy6DFAb@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.