WRT1900ACS - Wifi Issue after Upgrade from 19.07 to 21.02 (vacuum cleaner, legacy rate support)

Some of my Config...

config wifi-iface 'wifinet2'
	option device 'radio1'
	option mode 'ap'
	option ssid 'NameofWiFi'
	option hidden '1'
	option key 'xxxxxxxxxxxxxxxxxxxxxx'
	option network 'IoT'
	option encryption 'psk2'
	
	
config wifi-iface 'wifinet0'
	option device 'radio1'
	option mode 'ap'
	option ssid 'NameofWiFi'
	option encryption 'sae-mixed'
	option key 'xxxxxxxxxxxxxxxxxxxxxx'
	option network 'LAN'
	option disabled '1'
	option ieee80211w '0'

I run multiple SSIDs in different Networks and those are 2 of them on the 2.4 GHz Band. Once with WPA2-PSK and once with WPA3-SAE/WPA2-PSK mixed mode. The one with only WPA2-PSK is the one all my Smart Devices connect to. And it works. I run this config on 1x 1900ACS and 2x 1900AC.

Maybe its helpful for you.

I also found the following statement:

On this website

@Cookie there's not point of staying with 21.02.1 or use snapshots.
WiFi is dropping devices, lagging or hanging, Ethernet also seems to be affected...

Snapshots are getting things even worse unfortunately.

Device Linksys wrt1900acs

Hi,
I also have a WRT1900AC running OpenWrt v21.02, and it works well with all of my devices.
It did take quite a bit of time reading forum posts and some trial and error to setup to make everything work properly.

Here are some additional config. settings that helped my setup (which you might try if you haven't already):

  1. To help prevent network drop-outs
    uninstall default wpad-basic-wolfssl opkg, and
    install wpad-openssl opkg: (don't overwrite existing files)
    Remove SSID entries (not radios) in Wireless page
    Add new entries from radio listings + configure.

  2. Also, add opkg irqbalance.
    Change 'enabled' from '0' to '1' in '/etc/config/irqbalance' for improved Wi-Fi performance.

  3. Patch the firmware for 88w8864 (mwlwifi specific high latencies) by disabling tx_amsdu:
    Add in luci > startup > local startup the following commands:

echo "0" >> /sys/kernel/debug/ieee80211/phy0/mwlwifi/tx_amsdu
echo "0" >> /sys/kernel/debug/ieee80211/phy1/mwlwifi/tx_amsdu

(See Users needed to test Wi-Fi stability on Linksys WRT3200ACM & WRT32X on OpenWrt 21.02 - #124 by dolohow)

  1. Luci > Network > Wireless: Edit wlan settings: Interface Configuration > Advanced Settings > Disassociate On Low Acknowledgement: Uncheck.

I hope people find these tips helpful.

2 Likes

@2Torr Thx 4 the hints, I'll give it a try and report later.

:slight_smile:

Your tips are helpful and I have followed all your tips.

Result:
My smartphones now have a stable wifi connection. :+1:
But the robot vacuum cleaner still does not connect.

However, I have found a solution/workaround for the vacuum cleaner robot.
Just enable the option option legacy_rates '1' for the 2.4 GHz.
Now the vacuum cleaner robot connects to the OpenWrt 21.02.1 2.4GHz Wifi.

config wifi-device 'radio1'
config wifi-device 'radio1'
        option type 'mac80211'
        option hwmode '11g'
        option path 'soc/soc:pcie/pci0000:00/0000:00:02.0/0000:02:00.0'
        option country 'DE'
        option htmode 'HT40'
        option channel '11'
        option cell_density '1'
        option legacy_rates '1'
        option txpower '20'

But what irritates me in OpenWrt 19.07.8 I have not enabled the option option legacy_rates '1'.

1 Like

I only have problems with my smartphones and with the vacuum cleaner robot wifi.
On the network side (Ethernet), everything runs well and smoothly.

@Cookie, glad the settings helped.
I just rechecked my WRT1900AC setup notes, and I forgot to add the setting for the 2.4GHz radio:

  • Select "Allow legacy 802.11b rates" for 2.4GHz devices such as some Android phones to be able to authenticate to network.

I was also having issues with my 2.4GHz Android devices not connecting, and found this tip on the forum here:

where the user claimed,
"They don't use 802.11b rates but without it no connection, with it they connect straight away, just no idea why this is needed..."

Cheers,
2Torr

1 Like

That reminds me that I'll have to test for that issue, too, when I get the chance to upgrade. The default for that setting is "unchecked" in relatively recent OpenWRT builds. Annoyingly, in the past, if it was checked, it broke Roku connectivity! Corroborating instances of this can be found in the Roku forums. I don't know if this still holds true in 21.02.

The default value changed between 19.07 and 21.02. Earlier it was on by default, now the default is off.

The legacy rate support option's default was intentionally toggled in late 2020, as enabling legacy rates (for ancient 802.11b connecting devices) hurts also other WiFi devices' speeds.

2 Likes

Thanks for the info. about possible Roku connectivity issues as well. I hope this issue is resolved in 21.02.1, but if not, perhaps this issue could be fixed with a mwlwifi driver update which would allow us to be able to use all our modern devices without compromising the transfer speeds?

2 Likes

A driver update is very unlikely to happen, which is discussed in the following, but, just to be sure, have you been following the WRT3200ACM & WRT32X thread where they've fixed a major issue on it in the 21.02 daily snapshots and the master for this family of devices? That was what I was talking about me needing to test. You should definitely test a 21.02 daily snapshot and/or the master to see if it solves your problems. The 21.02 daily snapshots are in a hidden directory, but someone can probably send you a link to it.

Thanks for the link! I misspoke earlier. I'm currently running v21.02.0, and I haven't kept up with the thread since 10/17/2021. I'll look into the latest snapshots over the holidays. :slight_smile:

Checking the "Allow legacy 802.11b rates" option made no difference for me. The one device that could not connect still cannot.

I'hava already compiled 21.02.1 complete with oopen

Please post your /etc/config/network and /etc/config/wireless
as well the output from ubus call system board

Which wifi are you using? 2.4GHz or 5GHz?

Ronny

Hi Ronny,

The issue is with 2.4GHz. I have one device that will not connect at 2.4GHz but it will connect at 5GHz, and it will also connect at 2.4GHz to a TP-Link Archer C7 running 21.02.1.

Requested file contents below.

Thanks and best regards ... Jack

# ---- ubus call system board ---
{
	"kernel": "5.4.154",
	"hostname": "wrt1900ac",
	"system": "ARMv7 Processor rev 2 (v7l)",
	"model": "Linksys WRT1900AC v1",
	"board_name": "linksys,wrt1900ac-v1",
	"release": {
		"distribution": "OpenWrt",
		"version": "21.02.1",
		"revision": "r16325-88151b8303",
		"target": "mvebu/cortexa9",
		"description": "OpenWrt 21.02.1 r16325-88151b8303"
	}
}

# ---- /etc/config/network ----
config interface 'loopback'
	option device 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config globals 'globals'
	option ula_prefix 'xxxx:xxxx:xxxx::/48'

config device
	option name 'br-lan'
	option type 'bridge'
	list ports 'lan1'
	list ports 'lan2'
	list ports 'lan3'
	list ports 'lan4'

config device
	option name 'lan1'
	option macaddr 'xx:xx:xx:xx:xx:xx'

config device
	option name 'lan2'
	option macaddr 'xx:xx:xx:xx:xx:xx'

config device
	option name 'lan3'
	option macaddr 'xx:xx:xx:xx:xx:xx'

config device
	option name 'lan4'
	option macaddr 'xx:xx:xx:xx:xx:xx'

config interface 'lan'
	option device 'br-lan'
	option proto 'static'
	option netmask '255.255.255.0'
	option ip6assign '64'
	option ip6hint '0'
	list dns '208.67.222.222'
	list dns '208.67.220.220'
	option ipaddr '192.168.1.1'

config device
	option name 'wan'
	option macaddr 'xx:xx:xx:xx:xx:xx'

config interface 'wan'
	option device 'wan'
	option proto 'dhcp'
	option peerdns '0'

config interface 'wan6'
	option device 'wan'
	option proto 'dhcpv6'
	option reqaddress 'try'
	option peerdns '0'
	option reqprefix '60'

config interface 'guestnet'
	option proto 'static'
	option netmask '255.255.255.0'
	list dns '208.67.222.222'
	list dns '208.67.220.220'
	option ip6assign '64'
	option ip6hint 'f'
	option device 'wlan0-1'
	option ipaddr '192.168.2.1'

config device
	option name 'wlan0-1'

config device
	option name 'eth0'

config device
	option name 'eth1'

config device
	option name 'wlan0'

config device
	option name 'wlan1'

# ---- /etc/config/wireless ----

config wifi-device 'radio0'
	option type 'mac80211'
	option hwmode '11g'
	option path 'soc/soc:pcie@82000000/pci0000:00/0000:00:02.0/0000:02:00.0'
	option htmode 'HT20'
	option country 'US'
	option channel 'auto'
	option cell_density '0'

config wifi-iface 'default_radio0'
	option device 'radio0'
	option network 'lan'
	option mode 'ap'
	option macaddr 'xx:xx:xx:xx:xx:xx'
	option ssid 'xxx'
	option encryption 'psk2+ccmp'
	option key 'xxx'

config wifi-device 'radio1'
	option type 'mac80211'
	option hwmode '11a'
	option path 'soc/soc:pcie@82000000/pci0000:00/0000:00:03.0/0000:03:00.0'
	option htmode 'VHT80'
	option country 'US'
	option channel 'auto'
	option cell_density '0'

config wifi-iface 'default_radio1'
	option device 'radio1'
	option network 'lan'
	option mode 'ap'
	option macaddr 'xx:xx:xx:xx:xx:xx'
	option ssid 'xxx'
	option encryption 'psk2+ccmp'
	option key 'xxx'

config wifi-iface 'wifinet2'
	option device 'radio0'
	option mode 'ap'
	option ssid 'xxx'
	option network 'guestnet'
	option encryption 'psk2+ccmp'
	option key 'xxx'

2021-12-11 21_36_13-router - WLAN - LuCI

As you can see, legacy rates are not enabled in 19.07 on my router, and my vacuum cleaner is connected to my 2.4 GHz WLAN without any problems. So I think there is another problem in 21.02.

I miss the option legacy_rates '1' option in your 2.4GHz radio settings.

Correct. I had tried it, but when it didn't make a difference, I turned it back off.

BUT ... I just tried it again, and now the tablet can connect! This may have been an error on my part, before I may have neglected to do "Save & Apply" in LuCI.

I do see it now in /etc/config/wireless as well.

Thanks!

config wifi-device 'radio0'
        option type 'mac80211'
        option hwmode '11g'
        option path 'soc/soc:pcie@82000000/pci0000:00/0000:00:02.0/0000:02:00.0'
        option htmode 'HT20'
        option country 'US'
        option channel 'auto'
        option cell_density '0'
        option legacy_rates '1'

1 Like

Sometimes that happens to me too.

Please, you're welcome. Glad that it now works for you.

Regards,
Ronny

I can officially say adding the following code to the local startup does decrease the latency on 5GHz:

echo "0" >> /sys/kernel/debug/ieee80211/phy0/mwlwifi/tx_amsdu
echo "0" >> /sys/kernel/debug/ieee80211/phy1/mwlwifi/tx_amsdu

However, my Motorola Moto G30 really is struggling to get past 150Mbps on the 5GHz channel despite the link speed being 433Mbps. On the other hand, the Moto G30 will complete an Ookla Speedtest at a lot higher speeds of 220~Mbps on my BT Smarthub 2.

I sometimes think it could be my phone because my older Uelefone Armor 8 phone has a fairly close benchmark score to the Moto G30 and yet that will complete Ookla Speedtests at 250Mbps on OpenWrt.