There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

Enabling Antenna Aggregation Might Make Big Difference If Your Laptop Has An Intel Wifi Card.

This is swiped from reddit but I thought it was really helpful so please don’t judge me too harshly lol.

So it turns out that some Linux distros don’t enable this by default for whatever reason but if you have an Intel wifi card that uses the iwlwifi driver (you can check this with lspci -k and look for a section that says Network controller: Intel Corporation and Kernel driver in use: iwlwifi under it), you can add a simple line to a config file that might make a huge difference to your wifi speeds.

Just edit /etc/modprobe.d/iwlwifi.conf (if it doesn’t exist just create it) and add the line: options iwlwifi 11n_disable=8 then reboot. I ran Speedtest before and after trying this on my laptop and it seems to have increased it by about 20% or so.

Your mileage may vary of course, but hopefully this helps someone!

gerdesj ,

Please do a little research before trying random stuff. After checking to see if you are actually using the iwlwifi module, why not find out a bit about whether the mentioned param. is available to you and what it does:

Am I using the module. If the output from this is blank, then no:


<span style="color:#323232;">$ lsmod | grep iwlwifi
</span><span style="color:#323232;">iwlwifi               622592  1 iwlmvm
</span><span style="color:#323232;">cfg80211             1331200  3 iwlmvm,iwlwifi,mac80211
</span><span style="color:#323232;">
</span>

Also verify with lspci -k as above:


<span style="color:#323232;">$ lspci -k | grep iwlwifi -A2 -B2
</span><span style="color:#323232;">        DeviceName: WLAN
</span><span style="color:#323232;">        Subsystem: Intel Corporation Raptor Lake PCH CNVi WiFi
</span><span style="color:#323232;">        Kernel driver in use: iwlwifi
</span><span style="color:#323232;">        Kernel modules: iwlwifi
</span><span style="color:#323232;">00:15.0 Serial bus controller: Intel Corporation Alder Lake PCH Serial IO I2C Controller #0 (rev 01)
</span><span style="color:#323232;">        Subsystem: Hewlett-Packard Company Alder Lake PCH Serial IO I2C Controller
</span><span style="color:#323232;">
</span>

<span style="color:#323232;"># modinfo iwlwifi
</span><span style="color:#323232;">   ...
</span><span style="color:#323232;">parm:           swcrypto:using crypto in software (default 0 [hardware]) (int)
</span><span style="color:#323232;">parm:           11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
</span><span style="color:#323232;">parm:           amsdu_size:amsdu size 0: 12K for multi Rx queue devices, 2K for AX210 devices, 4K for other devices 1:4K 2:8K 3:12K (16K buffers) 4: 2K (default 0) (int)
</span><span style="color:#323232;">parm:           fw_restart:restart firmware in case of error (default true) (bool)
</span><span style="color:#323232;">parm:           nvm_file:NVM file name (charp)
</span><span style="color:#323232;">parm:           uapsd_disable:disable U-APSD functionality bitmap 1: BSS 2: P2P Client (default: 3) (uint)
</span><span style="color:#323232;">parm:           enable_ini:0:disable, 1-15:FW_DBG_PRESET Values, 16:enabled without preset value defined,Debug INI TLV FW debug infrastructure (default: 16) (uint)
</span><span style="color:#323232;">parm:           bt_coex_active:enable wifi/bt co-exist (default: enable) (bool)
</span><span style="color:#323232;">parm:           led_mode:0=system default, 1=On(RF On)/Off(RF Off), 2=blinking, 3=Off (default: 0) (int)
</span><span style="color:#323232;">parm:           power_save:enable WiFi power management (default: disable) (bool)
</span><span style="color:#323232;">parm:           power_level:default power save level (range from 1 - 5, default: 1) (int)
</span><span style="color:#323232;">parm:           disable_11ac:Disable VHT capabilities (default: false) (bool)
</span><span style="color:#323232;">parm:           remove_when_gone:Remove dev from PCIe bus if it is deemed inaccessible (default: false) (bool)
</span><span style="color:#323232;">parm:           disable_11ax:Disable HE capabilities (default: false) (bool)
</span><span style="color:#323232;">parm:           disable_11be:Disable EHT capabilities (default: false) (bool)
</span><span style="color:#323232;">
</span>

sysfs is a pseudo filesystem with lots of info in it. cat the files here:


<span style="color:#323232;">$ ls -l /sys/module/iwlwifi/parameters/
</span><span style="color:#323232;">
</span>

… to see what your current values are set at. You can install sysfstools and run this for a neat report:


<span style="color:#323232;">$ systool -vm iwlwifi
</span><span style="color:#323232;">Module = "iwlwifi"
</span><span style="color:#323232;">
</span><span style="color:#323232;">  Attributes:
</span><span style="color:#323232;">     ...
</span><span style="color:#323232;">  Parameters:
</span><span style="color:#323232;">    11n_disable         = "0"
</span><span style="color:#323232;">    amsdu_size          = "0"
</span><span style="color:#323232;">    bt_coex_active      = "Y"
</span><span style="color:#323232;">    disable_11ac        = "N"
</span><span style="color:#323232;">    disable_11ax        = "N"
</span><span style="color:#323232;">    disable_11be        = "N"
</span><span style="color:#323232;">    enable_ini          = "16"
</span><span style="color:#323232;">    fw_restart          = "Y"
</span><span style="color:#323232;">    led_mode            = "0"
</span><span style="color:#323232;">    nvm_file            = "(null)"
</span><span style="color:#323232;">    power_level         = "0"
</span><span style="color:#323232;">    power_save          = "N"
</span><span style="color:#323232;">    remove_when_gone    = "N"
</span><span style="color:#323232;">    swcrypto            = "0"
</span><span style="color:#323232;">    uapsd_disable       = "3"
</span><span style="color:#323232;">
</span>
BCsven ,

Not sure if this is the same setting but a linux podcast noted one setting was not set by default (for speed) in order to keep power consumption lower

SteveTech ,

I think some people also use power_save=0 which would, but my understanding is 11n_disable=8 enables aggregating transmit packets together, which impacts latency but improves upload speed.

drwho ,
@drwho@beehaw.org avatar

Thank you for posting this, I’ll give it a try tonight.

CrabAndBroom OP ,

No worries! From other comments and a couple of tests I did it seems to get somewhat mixed results, but it’s easy enough to undo so you might get lucky! It worked for me at least lol.

henfredemars ,

Just throwing this out there: on my hardware, this improves my upload but hurts my download speeds. There could possibly be reasons why it’s not set by default.

MonkderVierte ,

I think i read about this once. Something like, Windows has less strict requirements for drivers and hardware, which is why driver-side workarounds for broken hw works better there. Or something like that.

CrabAndBroom OP ,

I tried it out on another laptop since I posted this, and that had the inverse - download speeds went up by about 20% or so, but the upload speed seems have taken a hit of about 10%. On my ‘main’ laptop both improved quite drastically.

So yeah definitely a ‘your mileage may vary’ type of situation, but it’s easy enough to reverse I guess so worth a shot if anyone has a bit of a speed problem. You might get lucky!

fuckwit_mcbumcrumble ,

Are you in a particularly busy wifi area or one without a lot of traffic?

henfredemars ,

My Wi-Fi bands are saturated with about 50 networks on 2.4 in an apartment complex.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines