Wi-Fi connection drops when joining any voice chat with Bluetooth headset connected (switches to HSP/HFP profile)

Hey,

Sorry for the lengthy title, it’s hard to summarize this issue briefly.

This problem has occurred on every Arch based distribution I’ve tried (including Arch, Cachyos, and now Garuda Linux). Whenever I join any kind of voice chat for example, Google Meet or similar platforms while my Bluetooth headset is connected, my Wi-Fi connection drops completely. This makes me unable to join the meeting, and my entire system loses internet connectivity, not just the browser.

However, if I disconnect my Bluetooth headset, the issue doesn’t occur and my Wi-Fi works normally.

I also noticed that whenever I join a voice chat, the system automatically switches my Bluetooth audio profile to HSP/HFP (mSBC codec). I’m not entirely sure why switching to this profile affects my Wi-Fi connection, but it seems directly related.

If I manually switch the audio profile back to AAC or SBC-XQ while connecting to the meeting, my internet starts working fine again but in that case, my headset no longer stays connected to the voice chat.

Here’s the journalctl log:

Nov 05 18:36:41 LenovoIdeapad-81vd kwin_wayland[31795]: XKB: [XKB-679] No Compose file for locale "en_IN.ISO8859-1": locale is either invalid or not installed
Nov 05 18:36:41 LenovoIdeapad-81vd kwin_wayland[31795]: XKB: [XKB-679] couldn't find a Compose file for locale "en_IN" (mapped to "en_IN.ISO8859-1")
Nov 05 18:36:44 LenovoIdeapad-81vd plasmashell[31809]: Couldn't find QML Decoration ""
Nov 05 18:53:38 LenovoIdeapad-81vd kwin_wayland[31795]: Libinput: event7 - USB Optical Mouse: client bug: event processing lagging behind by 83ms, your system is too slow
Nov 05 19:07:26 LenovoIdeapad-81vd bluetoothd[540]: src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Nov 05 19:55:18 LenovoIdeapad-81vd bluetoothd[540]: src/profile.c:ext_io_disconnected() Unable to get io data for Hands-Free Voice gateway: getpeername: Transport endpoint is not connected (107)
Nov 05 20:01:03 LenovoIdeapad-81vd kernel: Bluetooth: hci0: unexpected SMP command 0x0b from 22:01:01:88:43:a7
Nov 05 20:01:09 LenovoIdeapad-81vd bluetoothd[540]: No matching connection for device
Nov 05 20:02:57 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:02:57 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:03:53 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 2
Nov 05 20:03:55 LenovoIdeapad-81vd bluetoothd[540]: No matching connection for device
Nov 05 20:04:21 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 3
Nov 05 20:05:03 LenovoIdeapad-81vd bluetoothd[540]: No matching connection for device
Nov 05 20:25:31 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 3
Nov 05 20:25:31 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 3
Nov 05 20:28:23 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 3
Nov 05 20:28:23 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:23 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:23 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:29 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 4
Nov 05 20:28:29 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 5
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 5
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:28:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:38:26 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:38:26 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:39:12 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 9
Nov 05 20:39:12 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 10
Nov 05 20:39:12 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 10
Nov 05 20:39:20 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 10
Nov 05 20:39:27 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 11
Nov 05 20:39:27 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 12
Nov 05 20:39:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 12
Nov 05 20:39:42 LenovoIdeapad-81vd kernel: Bluetooth: hci0: corrupted SCO packet
Nov 05 20:39:49 LenovoIdeapad-81vd kernel: Bluetooth: hci0: SCO packet for unknown connection handle 13

Garuda-inxi:

❯ garuda-inxi
System:
  Kernel: 6.17.7-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 15.2.1
    clocksource: tsc avail: hpet,acpi_pm
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=f36cd41d-5fe0-4622-a117-a12fe4cc458c rw rootflags=subvol=@
    vt.default_red=30,243,166,249,137,245,148,186,88,243,166,249,137,245,148,166
    vt.default_grn=30,139,227,226,180,194,226,194,91,139,227,226,180,194,226,173
    vt.default_blu=46,168,161,175,250,231,213,222,112,168,161,175,250,231,213,200
  Desktop: KDE Plasma v: 6.5.1 tk: Qt v: N/A info: frameworks v: 6.19.0
    wm: kwin_wayland with: krunner vt: 2 dm: SDDM Distro: Garuda
    base: Arch Linux
Machine:
  Type: Laptop System: LENOVO product: 81VD v: Lenovo IdeaPad S145-15IKB
    serial: <superuser required> Chassis: type: 10 v: Lenovo IdeaPad S145-15IKB
    serial: <superuser required>
  Mobo: LENOVO model: LNVNB161216 v: SDK0Q55724 WIN
    serial: <superuser required>
    part-nu: LENOVO_MT_81VD_BU_idea_FM_IdeaPad S145-15IKB
    uuid: <superuser required> UEFI: LENOVO v: CSCN17WW date: 05/20/2021
Battery:
  ID-1: BAT0 charge: 27.7 Wh (100%) condition: 27.7/35.3 Wh (78.5%)
    volts: 8.43 min: 7.6 model: CPT-COS L16C2PB1 type: Li-poly serial: <filter>
    charging: status: full type: standard avail: long_life,standard
    cycles: 386
CPU:
  Info: model: Intel Core i3-7020U bits: 64 type: MT MCP arch: Amber/Kaby Lake
    note: check gen: core 7 level: v3 note: check built: 2017
    process: Intel 14nm family: 6 model-id: 0x8E (142) stepping: 9
    microcode: 0xF6
  Topology: cpus: 1x dies: 1 clusters: 2 cores: 2 threads: 4 tpc: 2
    smt: enabled cache: L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 512 KiB
    desc: 2x256 KiB L3: 3 MiB desc: 1x3 MiB
  Speed (MHz): avg: 2300 min/max: 400/2300 scaling: driver: intel_pstate
    governor: powersave cores: 1: 2300 2: 2300 3: 2300 4: 2300 bogomips: 18399
  Flags-basic: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: Intel HD Graphics 620 vendor: Lenovo driver: i915 v: kernel
    arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports: active: eDP-1
    empty: DP-1,HDMI-A-1,HDMI-A-2 bus-ID: 00:02.0 chip-ID: 8086:5916
    class-ID: 0300
  Device-2: Chicony Integrated Camera driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-8:6 chip-ID: 04f2:b624
    class-ID: 0e02 serial: <filter>
  Display: wayland server: X.org v: 1.21.1.20 with: Xwayland v: 24.1.9
    compositor: kwin_wayland driver: gpu: i915 display-ID: 0
  Monitor-1: eDP-1 model: AU Optronics 0x61ed built: 2018 res:
    mode: 1920x1080 hz: 60 scale: 100% (1) dpi: 142 gamma: 1.2
    size: 344x194mm (13.54x7.64") diag: 395mm (15.5") ratio: 16:9
    modes: 1920x1080
  API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris
    device: 1 drv: swrast gbm: drv: iris surfaceless: drv: iris wayland:
    drv: iris x11: drv: iris
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 25.2.6-arch1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel HD Graphics 620 (KBL GT2)
    device-ID: 8086:5916 memory: 11.31 GiB unified: yes display-ID: :0.0
  API: Vulkan v: 1.4.328 layers: 10 device: 0 type: integrated-gpu
    name: Intel HD Graphics 620 (KBL GT2) driver: mesa intel v: 25.2.6-arch1.1
    device-ID: 8086:5916 surfaces: N/A device: 1 type: cpu name: llvmpipe
    (LLVM 21.1.4 256 bits) driver: mesa llvmpipe v: 25.2.6-arch1.1 (LLVM
    21.1.4) device-ID: 10005:0000 surfaces: N/A
  Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo
    de: kscreen-console,kscreen-doctor gpu: corectrl wl: wayland-info
    x11: xdpyinfo, xprop, xrandr
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Lenovo
    driver: snd_hda_intel v: kernel alternate: snd_soc_avs bus-ID: 00:1f.3
    chip-ID: 8086:9d71 class-ID: 0403
  API: ALSA v: k6.17.7-zen1-1-zen status: kernel-api with: aoss
    type: oss-emulator tools: N/A
  Server-1: PipeWire v: 1.4.9 status: active with: 1: pipewire-pulse
    status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
    4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter
    vendor: Lenovo driver: ath10k_pci v: kernel pcie: gen: 1 speed: 2.5 GT/s
    lanes: 1 bus-ID: 02:00.0 chip-ID: 168c:0042 class-ID: 0280
  IF: wlp2s0 state: up mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
  Device-1: Qualcomm Atheros driver: btusb v: 0.8 type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-7:5 chip-ID: 0cf3:e500
    class-ID: e001
  Report: btmgmt ID: hci0 rfk-id: 4 state: up address: <filter> bt-v: 4.2
    lmp-v: 8 status: discoverable: no pairing: no class-ID: 6c010c
Drives:
  Local Storage: total: 176.55 GiB used: 19.06 GiB (10.8%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/sda maj-min: 8:0 model: Daichi size: 119.24 GiB block-size:
    physical: 512 B logical: 512 B speed: 6.0 Gb/s tech: SSD serial: <filter>
    fw-rev: 8A0 scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 vendor: SanDisk model: USB 3.2Gen1
    size: 57.3 GiB block-size: physical: 512 B logical: 512 B type: USB rev: 2.1
    spd: 480 Mb/s lanes: 1 mode: 2.0 tech: N/A serial: <filter> fw-rev: 1.00
    scheme: MBR
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
Partition:
  ID-1: / raw-size: 114.95 GiB size: 114.95 GiB (100.00%)
    used: 19.05 GiB (16.6%) fs: btrfs dev: /dev/sda3 maj-min: 8:3
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 664 KiB (0.2%) fs: vfat dev: /dev/sda1 maj-min: 8:1
  ID-3: /home raw-size: 114.95 GiB size: 114.95 GiB (100.00%)
    used: 19.05 GiB (16.6%) fs: btrfs dev: /dev/sda3 maj-min: 8:3
  ID-4: /var/log raw-size: 114.95 GiB size: 114.95 GiB (100.00%)
    used: 19.05 GiB (16.6%) fs: btrfs dev: /dev/sda3 maj-min: 8:3
  ID-5: /var/tmp raw-size: 114.95 GiB size: 114.95 GiB (100.00%)
    used: 19.05 GiB (16.6%) fs: btrfs dev: /dev/sda3 maj-min: 8:3
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
  ID-1: swap-1 type: zram size: 11.58 GiB used: 0 KiB (0.0%) priority: 100
    comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 dev: /dev/zram0
  ID-2: swap-2 type: partition size: 4 GiB used: 0 KiB (0.0%) priority: -2
    dev: /dev/sda2 maj-min: 8:2
Sensors:
  System Temperatures: cpu: 52.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 12 GiB available: 11.58 GiB used: 3.85 GiB (33.3%)
  Processes: 237 Power: uptime: 2h 57m states: freeze,mem,disk suspend: deep
    avail: s2idle wakeups: 1 hibernate: platform avail: shutdown, reboot,
    suspend, test_resume image: 4.62 GiB services: org_kde_powerdevil,
    power-profiles-daemon, upowerd Init: systemd v: 258 default: graphical
    tool: systemctl
  Packages: 1647 pm: pacman pkgs: 1634 libs: 488 tools: octopi,paru
    pm: flatpak pkgs: 13 Compilers: gcc: 15.2.1 Shell: Bash v: 5.3.3
    default: Zsh v: 5.9 running-in: alacritty inxi: 3.3.39
Garuda (2.11.1-1):
  System install date:     2025-11-04
  Garuda release:          251002
  Last full system update: 2025-11-05
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager dracut garuda-hardware-profile-standard
  Windows dual boot:       No/Undetected
  Failed units:
--- System Health Check Report ---
24/25 checks run in 2.17 seconds ⌛
Powered by garuda-health 🦅

✅ System health check passed. No issues found.

I know this isn’t the same issue, but wondering if it’s related/connected:

Others seemed to have complained on a manjaro forum:

1 Like

Hi there @vigr.

Unfortunately your qca9377 Wifi/BT combo chip is well known for having connectivity issues.



There are a bunch of fixes that are known to help improve connectivity with your qca9377 network adapter posted on the following thread:



In addition, I would be sure to disable the Random Mac Address feature of Network Manager. There are several different methods to accomplish this. A quick search should give you the options available to do this.



Adding additional kernel boot parameters often helps improve the performance of the qca9377 network adapter.

The following command will automatically add these helpful kernel boot parameters to /etc/default/grub:

sudp cp /etc/default/grub /etc/default/grub.bak && sudo sed '/^GRUB_CMDLINE_LINUX_DEFAULT=/s/"$/ ath10k_core.nohwcrypt=1 pcie_aspm=off "/g' -i /etc/default/grub

After adding the above boot parameter(s), run:

sudo update-grub 

Then, reboot, and test your connectivity for any improvement.



You may want to test several different workaround methods, if none of the above suggestions help with your disconnect issues.

Try this:

Before you intend to place a call using Google Meet (or some other software), connect your Cellular phone via USB cable to your computer. Through your phones settings utility enable “USB Tethering”.

A new connection name should appear in your system tray’s network connections applet. Switch to this new connection and test your internet speeds via phone tethering. Assuming you have a cellular data plan, and that your speeds are sufficient for internet conferencing this may allow you to workaround your disconnection issue.

Your other option that may be easier, but will cost a bit of money would be to purchase a separate USB Bluetooth Bluetooth dongle for your internet conference calling.

Physically separating your WiFi chip from your Bluetooth chip can help resolve conflicts between WiFi and Bluetooth. Both WiFi and BT use the same band for transmitting their signals. On problematic combo WiFi/BT chips such as yours this often results in disconnect or speed issues. Physically separating the two chips can help in these type of cases. It may be beneficial in these type of cases to connect the external BT dongle via a short USB cable. Any extra separation between between your WiFi and Bluetooth transmitters can help improve signal clash.

Obviously, neither of these methods are a proper solution, but these workarounds may at least provide you with a working option until a proper fix is released.



I know that’s a lot of stuff to digest, but hopefully something there will help with your disconnect problems.


Good luck finding your solution.


4 Likes

Thanks, you were right. The issue is specifically tied to my Qualcomm Atheros QCA9377 chipset. Unfortunately, my Bluetooth and Wi-Fi share the same antenna and both operate on the same 2.4 GHz band. This causes interference when Bluetooth uses SCO (Synchronous Connection-Oriented) audio for calls, which affects Wi-Fi connection.

These posts confirm the issue:

Luckily, I was able to resolve the problem by switching my Wi-Fi to a 5 GHz channel. That way, Wi-Fi and Bluetooth operate on different frequency bands, eliminating the interference.

Thanks again for helping me identify the root cause :saluting_face:

2 Likes

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.