Jay's blog

How I Fixed Slow Wifi In Debian 12

May 21, 2025 Update

I replaced the old Intel 8265 wifi card with a new Intel BE200 Wifi 7 card. I also have a different router than I was using when I wrote this post. This combination of hardware does not require setting wpa-freq-list to automatically connect at the best possible protocol level.


Last time I blogged about my home server's wifi connection, I had to disable power management on the wifi adapter to avoid undesirable behavior.

This time, I was transferring a large quantity of large files from my laptop to my home server, and I noticed the transfer speed was capped at around 3 MB/s. I found that very concerning because although wifi isn't the fastest way to transfer data by a wide margin, it should still be faster than that.

After a bunch of inspection of various settings using iw list and iwlist wlp1s0, I discovered the problem. By looking at frequency and channel settings, I saw that my adapter was connecting to my router at 2.4 Ghz frequencies instead of the 5 GHz frequencies I wanted.

A bunch of googling suggested passing a freq_list property to wpa_supplicant in its config file. One problem: I'm not configuring wpa_supplication via a config file. I'm configuring it via my /etc/network/interfaces file. I was already using the wpa-ssid and wpa-psk options. Is there an equivalent option to pass in a frequency list?

Yes, but it's not very well-documented. The magic happens in the /etc/wpa_supplicant/functions.sh file. The appropriate option is wpa-freq-list.

Here's what my /etc/network/interfaces file looks like:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug wlp1s0
iface wlp1s0 inet dhcp
	wpa-ssid <ssid>
	wpa-psk <passphrase>
	wpa-freq-list <frequency list>

Using the iw list command, I was able to determine that the right list of frequencies for my hardware and desired configuration is the following:

wpa-freq-list 5180 5200 5240 5260 5280 5300 5320 5500 5520 5540 5560 5580 5600 5620 5640 5660 5680 5700 5720 5745 5765 5785 5805 5825

I encourage you to check your own hardware rather than copying my list of frequencies verbatim.

After I made this change and restarted the network subsystem, transfers looked much better at around 20 MB/s to 25 MB/s on average.

#home server #linux