Hello fellow endeavourers!
I recently realized that my low internet speeds were not due to an outdated modem but my computer being locked at a lower bitrate. Currently using a Gen 3 Rogers Xfinity modem, so definitely not a modem issue.
Ookla speedtest on phone and macbook gives around 200-400 mb/s (we are maxed at 500 mb/s), while speedtest on my HP Victus Laptop gives about 20 mb/s. Tried to debug with an LLM, but of course none of them as insightful as you guys. Some info that will be helpful:
$ uname -a
Linux <hiding> 7.0.10-arch1-1 #1 SMP PREEMPT_DYNAMIC Sat, 23 May 2026 14:21:20 +0000 x86_64 GNU/Linux
$ lspci -knn | grep -A 3 -i network
pcilib: Error reading /sys/bus/pci/devices/0000:00:08.3/label: Operation not permitted
04:00.0 Network controller [0280]: Realtek Semiconductor Co., Ltd. RTL8852BE PCIe 802.11ax Wireless Network Controller [10ec:b852]
DeviceName: WLAN Realtek Cava2 8852BE Wi-Fi 6 +BT 5.3 WW
Subsystem: Hewlett-Packard Company Device [103c:88e3]
Kernel driver in use: rtw89_8852be
$ iw dev wlo1 link
Connected to 12:36:aa:05:cf:1a (on wlo1)
SSID: <hiding>
freq: 5220.0
RX: 25201114 bytes (31216 packets)
TX: 4491047 bytes (16089 packets)
signal: -44 dBm
rx bitrate: 54.0 MBit/s
tx bitrate: 54.0 MBit/s
bss flags: short-slot-time
dtim period: 1
beacon int: 100
$ iw list | head -n 100
Wiphy phy1
wiphy index: 1
max # scan SSIDs: 8
max scan IEs length: 394 bytes
max # sched scan SSIDs: 8
max # match sets: 0
Retry short limit: 7
Retry long limit: 4
Coverage class: 0 (up to 0m)
Device supports AP-side u-APSD.
Device supports T-DLS.
Supported Ciphers:
* WEP40 (00-0f-ac:1)
* WEP104 (00-0f-ac:5)
* TKIP (00-0f-ac:2)
* CCMP-128 (00-0f-ac:4)
* CCMP-256 (00-0f-ac:10)
* GCMP-128 (00-0f-ac:8)
* GCMP-256 (00-0f-ac:9)
* CMAC (00-0f-ac:6)
* CMAC-256 (00-0f-ac:13)
* GMAC-128 (00-0f-ac:11)
* GMAC-256 (00-0f-ac:12)
Available Antennas: TX 0x3 RX 0x3
Configured Antennas: TX 0 RX 0
Supported interface modes:
* managed
* AP
* AP/VLAN
* monitor
* P2P-client
* P2P-GO
Band 1:
Capabilities: 0x19ef
RX LDPC
HT20/HT40
SM Power Save disabled
RX HT20 SGI
RX HT40 SGI
TX STBC
RX STBC 1-stream
Max AMSDU length: 7935 bytes
DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: No restriction (0x00)
HT Max RX data rate: 300 Mbps
HT TX/RX MCS rate indexes supported: 0-15, 32
HE Iftypes: managed
HE MAC Capabilities (0x0801100a8060):
+HTC HE Supported
Trigger Frame MAC Padding Duration: 2
All Ack
BSR
Maximum A-MPDU Length Exponent: 2
OPS
A-MSDU in A-MPDU
HE PHY Capabilities: (0x02701e1f0dc0270e91bd00):
HE40/2.4GHz
Device Class: 1
LDPC Coding in Payload
HE SU PPDU with 1x HE-LTF and 0.8us GI
NDP with 4x HE-LTF and 3.2us GI
STBC Tx <= 80MHz
STBC Rx <= 80MHz
Doppler Tx
DCM Max Constellation: 3
DCM Max NSS Tx: 1
DCM Max Constellation Rx: 3
SU Beamformee
Beamformee STS <= 80MHz: 3
Ng = 16 SU Feedback
Ng = 16 MU Feedback
Codebook Size SU Feedback
Codebook Size MU Feedback
Triggered SU Beamforming Feedback
Partial Bandwidth Extended Range
Power Boost Factor ar
HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
Max NC: 1
HE ER SU PPDU 4x HE-LTF 0.8us GI
HE ER SU PPDU 1x HE-LTF 0.8us GI
DCM Max BW: 2
Longer Than 16HE SIG-B OFDM Symbols
TX 1024-QAM
RX 1024-QAM
RX Full BW SU Using HE MU PPDU with Compression SIGB
RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
HE RX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
HE TX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
$ sudo iw reg get
global
country 00: DFS-UNSET
(2402 - 2472 @ 40), (6, 20), (N/A)
(2457 - 2482 @ 20), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 - 5250 @ 80), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5250 - 5330 @ 80), (6, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
(5490 - 5730 @ 160), (6, 20), (0 ms), DFS, PASSIVE-SCAN
(5735 - 5835 @ 80), (6, 20), (N/A), PASSIVE-SCAN
(57240 - 63720 @ 2160), (N/A, 0), (N/A)
$ sudo dmesg | grep -iE 'rtw89|8852be' | tail -n 80
[ 7.017041] rtw89_8852be 0000:04:00.0: loaded firmware rtw89/rtw8852b_fw-1.bin
[ 7.017139] rtw89_8852be 0000:04:00.0: enabling device (0000 -> 0003)
[ 7.024128] rtw89_8852be 0000:04:00.0: Firmware version 0.29.29.15 (6fb3ec41), cmd version 0, type 5
[ 7.024132] rtw89_8852be 0000:04:00.0: Firmware version 0.29.29.15 (6fb3ec41), cmd version 0, type 3
[ 7.338753] rtw89_8852be 0000:04:00.0: chip info CID: 0, CV: 1, AID: 0, ACV: 1, RFE: 1
[ 7.932354] rtw89_8852be 0000:04:00.0: rfkill hardware state changed to enable
[ 8.516899] rtw89_8852be 0000:04:00.0 wlo1: renamed from wlan0
[ 463.797417] rtw89_8852be 0000:04:00.0: loaded firmware rtw89/rtw8852b_fw-1.bin
[ 463.820159] rtw89_8852be 0000:04:00.0: Firmware version 0.29.29.15 (6fb3ec41), cmd version 0, type 5
[ 463.820171] rtw89_8852be 0000:04:00.0: Firmware version 0.29.29.15 (6fb3ec41), cmd version 0, type 3
[ 464.247857] rtw89_8852be 0000:04:00.0: chip info CID: 0, CV: 1, AID: 0, ACV: 1, RFE: 1
[ 464.256467] rtw89_8852be 0000:04:00.0: rfkill hardware state changed to enable
[ 464.265925] rtw89_8852be 0000:04:00.0 wlo1: renamed from wlan0
Please let me know if any additional info is missing! As you can see seems to be locked at 54 mb/s. Any help will be greatly appreciated!
Edit: Already tried disabling power saving with iw dev wlo1 set power_save off