Skip to content

Bluetooth audio stuttering when WiFi active – caused by LPS (power saving) #372

@Adhi-haran

Description

@Adhi-haran

Bluetooth audio becomes unstable when WiFi is enabled.

Symptoms:

  • Audio stuttering and pauses
  • Audio switching between left/right earbuds
  • Temporary audio drops

When WiFi is disabled, Bluetooth audio works perfectly.

Hardware

WiFi Card: Realtek RTL8821CE
Laptop: HP 14s-fq1xxx

Software

OS: Arch Linux
Kernel: 6.18.19-1-lts
Driver:

  • rtw88_8821ce (kernel)
  • also tested rtl8821ce-dkms-git (AUR)

Steps to Reproduce

  1. Connect to WiFi (5GHz)
  2. Connect Bluetooth earbuds
  3. Play audio (YouTube/music)
  4. Observe stuttering and instability after some time
  5. Disable WiFi
  6. Audio becomes stable immediately

Logs

[ 175.600403] rtw88_8821ce 0000:01:00.0: firmware failed to leave lps state
[ 177.520442] rtw88_8821ce 0000:01:00.0: firmware failed to leave lps state
[ 180.340943] rtw88_8821ce 0000:01:00.0: failed to send h2c command
[ 180.420684] rtw88_8821ce 0000:01:00.0: failed to send h2c command
[ 181.048057] IPv6: MLD: clamping QRV from 1 to 2!
[ 181.048072] IPv6: MLD: clamping QRV from 1 to 2!
[ 181.474108] rtw88_8821ce 0000:01:00.0: failed to send h2c command
[ 181.577097] rtw88_8821ce 0000:01:00.0: firmware failed to leave lps state
[ 181.580318] rtw88_8821ce 0000:01:00.0: failed to send h2c command
[ 181.583563] rtw88_8821ce 0000:01:00.0: failed to send h2c command
[ 181.586772] rtw88_8821ce 0000:01:00.0: failed to send h2c command

What I tried

  • Disabled WiFi power saving → no effect
  • Tested on 5GHz → issue persists
  • Installed rtl8821ce-dkms-git → issue persists
  • Disabled autosuspend → no effect

Workaround/Fix

Disabling LPS (power saving) fixes the issue completely:

/etc/modprobe.d/rtw88.conf

options rtw88_core disable_lps_deep=1
options rtw88_core disable_ps_mode=1

After reboot:

  • No audio stuttering
  • No firmware errors
  • Bluetooth + WiFi works normally

Expected Behavior

Bluetooth audio should remain stable while WiFi is active without requiring LPS to be disabled.

Actual Behavior

Driver enters LPS and fails to recover properly, causing Bluetooth instability and repeated firmware errors.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions