For now I have disabled AQL, ATF and restart my WiFi radios at 5am, so maybe that fixes the WiFi issues.
Disabled AQL and ATF:
(/etc/rc.local or LuCI → System → Startup → Local Startup tab)
# Put your custom commands here that should be executed once
# the system init finished. By default this file does nothing.
# Disable Airtime Queue Limits (AQL) (default value was 1)
echo 0 > /sys/kernel/debug/ieee80211/phy0/aql_enable
echo 0 > /sys/kernel/debug/ieee80211/phy1/aql_enable
# Disable Airtime Fairness (ATF) (default value was 3)
echo 0 > /sys/kernel/debug/ieee80211/phy0/airtime_flags
echo 0 > /sys/kernel/debug/ieee80211/phy1/airtime_flags
exit 0
Restart wireless radios:
(/etc/crontabs/root or LuCI → System → Scheduled Task)
# Restart wireless radios at 5am every day
0 5 * * * wifi down && wifi up
Reboot the router and then check:
cat /sys/kernel/debug/ieee80211/phy0/aql_enable
cat /sys/kernel/debug/ieee80211/phy1/aql_enable
cat /sys/kernel/debug/ieee80211/phy0/airtime_flags
cat /sys/kernel/debug/ieee80211/phy1/airtime_flags
Output:
root@OpenWrt:~# cat /sys/kernel/debug/ieee80211/phy0/aql_enable
0
root@OpenWrt:~# cat /sys/kernel/debug/ieee80211/phy1/aql_enable
0
root@OpenWrt:~# cat /sys/kernel/debug/ieee80211/phy0/airtime_flags
root@OpenWrt:~# cat /sys/kernel/debug/ieee80211/phy1/airtime_flags