Realtek [RTL8723BE] Wifi and bluetooth , network speed problems

I have a Realtek wifi card , when i connect to wifi alone the network speed is nice and fast but as soon as I connect a bluetooth headset , the network speed drops by 10x
the card is Realtek RTL8723BE

System:
  Kernel: 6.10.10-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1 clocksource: tsc
    avail: acpi_pm parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
    root=UUID=e0869f39-b7a0-4c19-8e3f-ce38d8d65169 rw rootflags=subvol=@ quiet loglevel=3 ibt=off
  Desktop: GNOME v: 47.0 tk: GTK v: 3.24.43 wm: gnome-shell tools: gsd-screensaver-proxy dm: GDM
    v: 47.0 Distro: Garuda base: Arch Linux
Machine:
  Type: Laptop System: ASUSTeK product: X540LA v: 1.0 serial: <superuser required>
  Mobo: ASUSTeK model: X540LA v: 1.0 serial: <superuser required> part-nu: ASUS-NotebookSKU
    uuid: <superuser required> UEFI: American Megatrends v: X540LA.303 date: 08/31/2018
Battery:
  ID-1: BAT0 charge: 25.6 Wh (96.2%) condition: 26.6/33.2 Wh (80.2%) volts: 10.8 min: 10.8
    model: ASUSTeK ASUS Battery type: Li-ion serial: N/A status: not charging cycles: 853
CPU:
  Info: model: Intel Core i3-5005U bits: 64 type: MT MCP arch: Broadwell gen: core 5 level: v3
    note: check built: 2015-18 process: Intel 14nm family: 6 model-id: 0x3D (61) stepping: 4
    microcode: 0x2F
  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: 1900 min/max: 500/1900 scaling: driver: intel_cpufreq governor: performance
    cores: 1: 1900 2: 1900 3: 1900 4: 1900 bogomips: 15962
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: Intel HD Graphics 5500 vendor: ASUSTeK driver: i915 v: kernel arch: Gen-8
    process: Intel 14nm built: 2014-15 ports: active: DP-1 off: eDP-1 empty: HDMI-A-1 bus-ID: 00:02.0
    chip-ID: 8086:1616 class-ID: 0300
  Device-2: IMC Networks USB2.0 VGA UVC WebCam driver: uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-5:4 chip-ID: 13d3:5a11 class-ID: 0e02
  Display: wayland server: X.org v: 1.21.1.13 with: Xwayland v: 24.1.2 compositor: gnome-shell
    driver: X: loaded: modesetting alternate: fbdev,intel,vesa dri: iris gpu: i915 display-ID: 0
  Monitor-1: DP-1 model: Samsung SyncMaster serial: <filter> built: 2009 res: 1600x900 dpi: 92
    gamma: 1.2 size: 443x249mm (17.44x9.8") diag: 508mm (20") ratio: 16:9 modes: max: 1600x900
    min: 720x400
  Monitor-2: eDP-1 model: ChiMei InnoLux 0x15dc built: 2015 res: 1366x768 dpi: 101 gamma: 1.2
    size: 344x193mm (13.54x7.6") diag: 394mm (15.5") ratio: 16:9 modes: 1366x768
  API: Vulkan v: 1.3.295 layers: 3 device: 0 type: integrated-gpu name: Intel HD Graphics 5500
    (BDW GT2) driver: mesa intel v: 24.2.3-arch1.1 device-ID: 8086:1616 surfaces: xcb,xlib,wayland
    device: 1 type: cpu name: llvmpipe (LLVM 18.1.8 256 bits) driver: mesa llvmpipe
    v: 24.2.3-arch1.1 (LLVM 18.1.8) device-ID: 10005:0000 surfaces: xcb,xlib,wayland
  API: EGL Message: EGL data requires eglinfo. Check --recommends.
Audio:
  Device-1: Intel Broadwell-U Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel bus-ID: 00:03.0
    chip-ID: 8086:160c class-ID: 0403
  Device-2: Intel Wildcat Point-LP High Definition Audio vendor: ASUSTeK driver: snd_hda_intel
    v: kernel bus-ID: 00:1b.0 chip-ID: 8086:9ca0 class-ID: 0403
  API: ALSA v: k6.10.10-zen1-1-zen status: kernel-api tools: N/A
  Server-1: PipeWire v: 1.2.4 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: Realtek RTL810xE PCI Express Fast Ethernet vendor: ASUSTeK driver: r8169 v: kernel
    pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: 4000 bus-ID: 02:00.2 chip-ID: 10ec:8136
    class-ID: 0200
  IF: enp2s0f2 state: down mac: <filter>
  Device-2: Realtek RTL8723BE PCIe Wireless Network Adapter vendor: Lite-On driver: rtl8723be
    v: kernel pcie: gen: 1 speed: 2.5 GT/s lanes: 1 port: 3000 bus-ID: 03:00.0 chip-ID: 10ec:b723
    class-ID: 0280
  IF: wlp3s0 state: up mac: <filter>
  Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
  Device-1
: Cambridge Silicon Radio Bluetooth Dongle (HCI mode) driver: btusb v: 0.8 type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-1:70 chip-ID: 0a12:0001 class-ID: e001
  Report: btmgmt ID: hci0 rfk-id: 80 state: down bt-service: enabled,running rfk-block:
    hardware: no software: yes address: <filter> bt-v: 4.0 lmp-v: 6 status: discoverable: no
    pairing: no
  Device-2: Realtek Bluetooth Radio driver: btusb v: 0.8 type: USB rev: 2.1 speed: 12 Mb/s
    lanes: 1 mode: 1.1 bus-ID: 1-4:3 chip-ID: 0bda:b721 class-ID: e001 serial: <filter>
  Report: ID: hci1 rfk-id: 71 state: down bt-service: enabled,running rfk-block: hardware: no
    software: yes address: <filter> bt-v: 4.0 lmp-v: 6 status: discoverable: no pairing: no
Drives:
  Local Storage: total: 704.24 GiB used: 664.65 GiB (94.4%)
  SMART Message: Required tool smartctl not installed. Check --recommends
  ID-1: /dev/sda maj-min: 8:0 vendor: TeamGroup model: T253256GB size: 238.47 GiB block-size:
    physical: 512 B logical: 512 B speed: 6.0 Gb/s tech: SSD serial: <filter> fw-rev: 227N
    scheme: GPT
  ID-2: /dev/sdb maj-min: 8:16 vendor: Western Digital model: WD5000LPCX-80VHAT1 size: 465.76 GiB
    block-size: physical: 4096 B logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 5400 serial: <filter>
    fw-rev: 1A02 scheme: GPT
Partition:
  ID-1: / raw-size: 15.18 GiB size: 15.18 GiB (100.00%) used: 9.09 GiB (59.9%) fs: btrfs
    dev: /dev/sda2 maj-min: 8:2
  ID-2: /home raw-size: 19.53 GiB size: 19.53 GiB (100.00%) used: 8.27 GiB (42.3%) fs: btrfs
    dev: /dev/sda4 maj-min: 8:4
  ID-3: /var/log raw-size: 15.18 GiB size: 15.18 GiB (100.00%) used: 9.09 GiB (59.9%) fs: btrfs
    dev: /dev/sda2 maj-min: 8:2
  ID-4: /var/tmp raw-size: 15.18 GiB size: 15.18 GiB (100.00%) used: 9.09 GiB (59.9%) fs: btrfs
    dev: /dev/sda2 maj-min: 8:2
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
  ID-1: swap-1 type: zram size: 7.62 GiB used: 1.15 GiB (15.2%) priority: 100 comp: zstd
    avail: lzo,lzo-rle,lz4,lz4hc,842 max-streams: 4 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 59.0 C pch: 53.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Memory: total: 8 GiB available: 7.62 GiB used: 4.36 GiB (57.2%)
  Processes: 296 Power: uptime: 3d 21h 20m states: freeze,mem,disk suspend: deep avail: s2idle
    wakeups: 7 hibernate: platform avail: shutdown, reboot, suspend, test_resume image: 3.04 GiB
    services: gsd-power, power-profiles-daemon, upowerd Init: systemd v: 256 default: graphical
    tool: systemctl
  Packages: 1150 pm: pacman pkgs: 1131 libs: 331 tools: gnome-software,paru pm: flatpak pkgs: 19
    Compilers: gcc: 14.2.1 Client: shell wrapper v: 5.2.32-release inxi: 3.3.36
Garuda (2.6.26-1):
  System install date:     2024-09-21
  Last full system update: 2024-09-25 ↻
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager dracut
  Windows dual boot:       No/Undetected
  Failed units:            
1 Like

Your issue could be due to this kernel bug:
https://bugzilla.kernel.org/show_bug.cgi?id=206513#c15
Maybe try the suggested workaround when the issue occurs. Should be something like:

sudo modprobe -r rtl8723be
sudo modprobe rtl8723be

If that doesn’t help, make sure to test different kernels, starting from the linux-lts.

2 Likes

I usually do that workaround but the fix only lasts for few minutes .

Firstly, whenever experiencing WiFi issues be sure to do the following:

Restart both your computer and router.

Test out at least 3 different kernels. Be sure the LTS kernel is one of the first ones you try. Then perhaps the Mainline and standard Linux kernels.

Always ensure that your bios is up to date.


Many Wifi/BT combo chips have signal interference issues that can degrade the performance of either (or both) Wifi and BT. This often results in poor speeds or dropped connections with these dual chips. Your Realtek adapter is well known for having driver problems in the past.

Your least time consuming fix may be to simply purchase an external USB bluetooth dongle that has in-kernel support (stop using your internal BT for the time being). Eventually whatever is causing your speed issue will likely be resolved by a kernel, bios, or driver update and you can resume using your internal BT adapter again after it’s fixed.

There are some Realtek driver options you can try that could potentially workaround your speed issue for now.

In the past your adapter had issues with the antenna that could be corrected by testing different antenna selection options. Test out the following commands below to see if your speeds are improved:

Run in terminal.

sudo systemctl stop NetworkManager
sudo rmmod btusb
sudo rmmod rtl8723be 
sudo modprobe rtl8723be ant_sel=1 
sudo modprobe btusb
sudo systemctl start NetworkManager

If no improvement, try this alternate command:

sudo systemctl stop NetworkManager
sudo rmmod btusb
sudo rmmod rtl8723be 
sudo modprobe rtl8723be ant_sel=2 
sudo modprobe btusb
sudo systemctl start NetworkManager

Testing any driver options via rmmoding and modprobing is only temporary and the changes are reverted by rebooting.

In addition to the antenna options, there are other alternatives you can test as well. You can test each individually or all at once, as so:

sudo systemctl stop NetworkManager
sudo rmmod btusb
sudo rmmod rtl8723be
sudo modprobe rtl8723be fwlps=N ips=N swlps=N swenc=Y disable_watchdog=1 ant_sel=2
sudo modprobe btusb
sudo systemctl start NetworkManager

You can make any of these driver options permanent by creating a driver configuration file named:

/etc/modprobe.d/rtl8723be.conf

You can add a single driver option to the configuration file, as so:

options rtl8723be ant_sel=2

Multiple alternate driver options can be added as well, such as:

fwlps=N 
ips=N 
swlps=N 
swenc=Y 
disable_watchdog=1 

You can select a single option, or several (or more) options to add to /etc/modprobe.d/rtl8723be.conf. Multiple options can be made permanent at one time by adding the options in the following format (separated by a white space):

options rtl8723be fwlps=N ips=N swlps=N swenc=Y disable_watchdog=1 ant_sel=2

Be sure to save the file /etc/modprobe.d/rtl8723be.conf and then reboot to have the new permanent driver options applied automatically each time at boot.

The file /etc/modprobe.d/rtl8723be.conf can be deleted if it is no longer required.

Good luck, I hope some of those tips help to improve things for you.

4 Likes

Thank you , I’ll do the testing and report later

1 Like

Neither the kernels (lts , mainline) helped nor the drivers options , I got myself a USB bluetooth dongle but it’s bluetooth 4.2 so i get multiple disconnections but the wifi speed is fast .

2 Likes

I tried Claude AI to look for a solution and I think it’s fixed now , It suggested to add :

options rtl8723be bit_rate=96 disable_nmode=1

to

/etc/modprobe.d/rtl8723be.conf

and the wifi speed seems to be normal now

3 Likes

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

I thought I’d wait a few days to see if your fix continued working. As it seems to have held, I have now marked your last post as the solution for you.

I had never seen that option recommended before, so that was a new one on me.

Congrats on finding your fix @houssem.kochat9.

2 Likes