GL.iNet GL-MT6000 WIFI macbook intermittently unusably slow

Hello everybody,

lately, I’m experiencing intermittent issues with wifi performance between flint2 and macbook pro (m1 pro) - I previously thought there might be something wrong with internet connection, but quickly realized it’s the issue with the router.

Sometimes, when doing work on the macbook, I get very slow (better said almost non-working internet) internet speed under 1Mbps and ping to the router in hundreds of ms (sometimes requests fail). When this state happens, my phone works just fine (internet speed is in hundreds of Mbps and ping to the router is single digit ms.

Logs show nothing useful when it happens. Attaching configuration and ping logs - about 2 meters far away from the router. Usually, it’s enough to reconnect wifi from the macbook OS; this time either time or logging into luci solved that.

Any of you experiencing same or similiar behaviour? What might be the issue? As far as I remember this has not been an issue on older versions of router/macbook OS (maybe unrelated, not sure). Thank you

Versions:

openwrt - 24.10.4

macos - 26.1

/etc/rc.local

aql_txq_limit_l=1500
aql_txq_limit_h=1500
for ac in 0 1 2 3; do echo $ac $aql_txq_limit_l $aql_txq_limit_h > /sys/kernel/debug/ieee80211/phy0/aql_txq_limit; done
for ac in 0 1 2 3; do echo $ac $aql_txq_limit_l $aql_txq_limit_h > /sys/kernel/debug/ieee80211/phy1/aql_txq_limit; done

exit 0

/etc/config/wireless

config wifi-device 'radio0'
	option type 'mac80211'
	option path 'platform/soc/18000000.wifi'
	option band '2g'
	option channel '11'
	option htmode 'HE20'
	option country 'SK'
	option cell_density '0'

config wifi-iface 'default_radio0'
	option device 'radio0'
	option network 'lan'
	option mode 'ap'
	option ssid 'xxx'
	option encryption 'psk2+ccmp'
	option key 'xxx
	option isolate '1'
	option dtim_period '3'
	option wpa_group_rekey '86400'
	option disassoc_low_ack '0'

config wifi-device 'radio1'
	option type 'mac80211'
	option path 'platform/soc/18000000.wifi+1'
	option band '5g'
	option htmode 'HE80'
	option country 'SK'
	option cell_density '0'
	option channel '36'

config wifi-iface 'default_radio1'
	option device 'radio1'
	option network 'lan'
	option mode 'ap'
	option ssid 'yyy'
	option encryption 'sae'
	option key 'yyy'
	option ieee80211r '1'
	option mobility_domain 'a1b9'
	option ft_over_ds '0'
	option reassociation_deadline '20000'
	option ocv '0'
	option dtim_period '3'
	option wpa_group_rekey '86400'
	option disassoc_low_ack '0'

config wifi-iface 'wifinet3'
	option device 'radio0'
	option mode 'ap'
	option ssid 'yyy'
	option encryption 'sae'
	option key 'yyy'
	option ieee80211r '1'
	option mobility_domain 'a1b9'
	option ft_over_ds '0'
	option ft_psk_generate_local '0'
	option reassociation_deadline '20000'
	option ocv '0'
	option network 'lan'
	option dtim_period '3'
	option wpa_group_rekey '86400'
	option disassoc_low_ack '0'
	option disabled '1'

When the issue happens:

ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: icmp_seq=0 ttl=64 time=197.153 ms
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=82.769 ms
Request timeout for icmp_seq 2
64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=1062.244 ms
64 bytes from 10.0.0.1: icmp_seq=3 ttl=64 time=58.136 ms
64 bytes from 10.0.0.1: icmp_seq=4 ttl=64 time=627.372 ms
64 bytes from 10.0.0.1: icmp_seq=5 ttl=64 time=49.051 ms
64 bytes from 10.0.0.1: icmp_seq=6 ttl=64 time=692.456 ms
64 bytes from 10.0.0.1: icmp_seq=7 ttl=64 time=380.838 ms
64 bytes from 10.0.0.1: icmp_seq=8 ttl=64 time=25.561 ms
64 bytes from 10.0.0.1: icmp_seq=9 ttl=64 time=33.083 ms
64 bytes from 10.0.0.1: icmp_seq=10 ttl=64 time=111.335 ms
Request timeout for icmp_seq 12
64 bytes from 10.0.0.1: icmp_seq=11 ttl=64 time=2026.516 ms
64 bytes from 10.0.0.1: icmp_seq=12 ttl=64 time=1022.997 ms
64 bytes from 10.0.0.1: icmp_seq=13 ttl=64 time=18.961 ms
64 bytes from 10.0.0.1: icmp_seq=14 ttl=64 time=371.684 ms
64 bytes from 10.0.0.1: icmp_seq=15 ttl=64 time=601.015 ms
64 bytes from 10.0.0.1: icmp_seq=16 ttl=64 time=1009.656 ms
64 bytes from 10.0.0.1: icmp_seq=17 ttl=64 time=8.556 ms
64 bytes from 10.0.0.1: icmp_seq=18 ttl=64 time=404.442 ms
64 bytes from 10.0.0.1: icmp_seq=19 ttl=64 time=3.519 ms
64 bytes from 10.0.0.1: icmp_seq=20 ttl=64 time=57.366 ms
64 bytes from 10.0.0.1: icmp_seq=21 ttl=64 time=408.807 ms
64 bytes from 10.0.0.1: icmp_seq=22 ttl=64 time=148.678 ms
64 bytes from 10.0.0.1: icmp_seq=23 ttl=64 time=175.363 ms
64 bytes from 10.0.0.1: icmp_seq=24 ttl=64 time=389.913 ms
64 bytes from 10.0.0.1: icmp_seq=25 ttl=64 time=616.450 ms
64 bytes from 10.0.0.1: icmp_seq=26 ttl=64 time=987.577 ms
64 bytes from 10.0.0.1: icmp_seq=27 ttl=64 time=341.281 ms
64 bytes from 10.0.0.1: icmp_seq=28 ttl=64 time=420.104 ms
64 bytes from 10.0.0.1: icmp_seq=29 ttl=64 time=495.670 ms
64 bytes from 10.0.0.1: icmp_seq=30 ttl=64 time=54.142 ms
64 bytes from 10.0.0.1: icmp_seq=31 ttl=64 time=1959.881 ms
64 bytes from 10.0.0.1: icmp_seq=32 ttl=64 time=957.650 ms
64 bytes from 10.0.0.1: icmp_seq=33 ttl=64 time=1598.314 ms
64 bytes from 10.0.0.1: icmp_seq=34 ttl=64 time=593.284 ms
64 bytes from 10.0.0.1: icmp_seq=35 ttl=64 time=513.593 ms
64 bytes from 10.0.0.1: icmp_seq=36 ttl=64 time=1019.447 ms
64 bytes from 10.0.0.1: icmp_seq=37 ttl=64 time=1264.913 ms
64 bytes from 10.0.0.1: icmp_seq=38 ttl=64 time=259.573 ms
64 bytes from 10.0.0.1: icmp_seq=39 ttl=64 time=259.052 ms
64 bytes from 10.0.0.1: icmp_seq=40 ttl=64 time=5.258 ms
64 bytes from 10.0.0.1: icmp_seq=41 ttl=64 time=249.277 ms
64 bytes from 10.0.0.1: icmp_seq=42 ttl=64 time=926.743 ms
64 bytes from 10.0.0.1: icmp_seq=43 ttl=64 time=344.294 ms
64 bytes from 10.0.0.1: icmp_seq=44 ttl=64 time=437.490 ms
64 bytes from 10.0.0.1: icmp_seq=45 ttl=64 time=559.012 ms
64 bytes from 10.0.0.1: icmp_seq=46 ttl=64 time=2934.129 ms
64 bytes from 10.0.0.1: icmp_seq=47 ttl=64 time=1930.653 ms
64 bytes from 10.0.0.1: icmp_seq=48 ttl=64 time=927.189 ms
64 bytes from 10.0.0.1: icmp_seq=49 ttl=64 time=1072.368 ms
64 bytes from 10.0.0.1: icmp_seq=50 ttl=64 time=69.525 ms
64 bytes from 10.0.0.1: icmp_seq=51 ttl=64 time=116.993 ms
64 bytes from 10.0.0.1: icmp_seq=52 ttl=64 time=155.981 ms
64 bytes from 10.0.0.1: icmp_seq=53 ttl=64 time=1109.012 ms
64 bytes from 10.0.0.1: icmp_seq=54 ttl=64 time=103.756 ms
64 bytes from 10.0.0.1: icmp_seq=55 ttl=64 time=402.471 ms
64 bytes from 10.0.0.1: icmp_seq=56 ttl=64 time=985.199 ms
64 bytes from 10.0.0.1: icmp_seq=57 ttl=64 time=222.450 ms
64 bytes from 10.0.0.1: icmp_seq=58 ttl=64 time=97.179 ms
64 bytes from 10.0.0.1: icmp_seq=59 ttl=64 time=990.133 ms
64 bytes from 10.0.0.1: icmp_seq=60 ttl=64 time=453.456 ms
64 bytes from 10.0.0.1: icmp_seq=61 ttl=64 time=576.396 ms
64 bytes from 10.0.0.1: icmp_seq=62 ttl=64 time=2829.239 ms
64 bytes from 10.0.0.1: icmp_seq=63 ttl=64 time=1827.758 ms
64 bytes from 10.0.0.1: icmp_seq=64 ttl=64 time=824.753 ms
64 bytes from 10.0.0.1: icmp_seq=65 ttl=64 time=417.972 ms
64 bytes from 10.0.0.1: icmp_seq=66 ttl=64 time=832.891 ms
64 bytes from 10.0.0.1: icmp_seq=67 ttl=64 time=1828.347 ms
64 bytes from 10.0.0.1: icmp_seq=68 ttl=64 time=826.662 ms
64 bytes from 10.0.0.1: icmp_seq=69 ttl=64 time=844.984 ms
64 bytes from 10.0.0.1: icmp_seq=70 ttl=64 time=2.035 ms
64 bytes from 10.0.0.1: icmp_seq=71 ttl=64 time=30.429 ms
64 bytes from 10.0.0.1: icmp_seq=72 ttl=64 time=39.355 ms
64 bytes from 10.0.0.1: icmp_seq=73 ttl=64 time=20.086 ms
64 bytes from 10.0.0.1: icmp_seq=74 ttl=64 time=12.695 ms
64 bytes from 10.0.0.1: icmp_seq=75 ttl=64 time=110.215 ms
64 bytes from 10.0.0.1: icmp_seq=76 ttl=64 time=8.301 ms
64 bytes from 10.0.0.1: icmp_seq=77 ttl=64 time=122.577 ms
64 bytes from 10.0.0.1: icmp_seq=78 ttl=64 time=913.686 ms
64 bytes from 10.0.0.1: icmp_seq=79 ttl=64 time=727.461 ms
64 bytes from 10.0.0.1: icmp_seq=80 ttl=64 time=544.439 ms
64 bytes from 10.0.0.1: icmp_seq=81 ttl=64 time=1098.664 ms
64 bytes from 10.0.0.1: icmp_seq=82 ttl=64 time=93.617 ms
64 bytes from 10.0.0.1: icmp_seq=83 ttl=64 time=2.700 ms
64 bytes from 10.0.0.1: icmp_seq=84 ttl=64 time=736.091 ms
64 bytes from 10.0.0.1: icmp_seq=85 ttl=64 time=309.798 ms
64 bytes from 10.0.0.1: icmp_seq=86 ttl=64 time=1113.962 ms
64 bytes from 10.0.0.1: icmp_seq=87 ttl=64 time=111.813 ms
64 bytes from 10.0.0.1: icmp_seq=88 ttl=64 time=725.088 ms
64 bytes from 10.0.0.1: icmp_seq=89 ttl=64 time=99.374 ms
64 bytes from 10.0.0.1: icmp_seq=90 ttl=64 time=234.888 ms
64 bytes from 10.0.0.1: icmp_seq=91 ttl=64 time=351.792 ms
64 bytes from 10.0.0.1: icmp_seq=92 ttl=64 time=315.614 ms
64 bytes from 10.0.0.1: icmp_seq=93 ttl=64 time=390.952 ms
64 bytes from 10.0.0.1: icmp_seq=94 ttl=64 time=1338.216 ms
64 bytes from 10.0.0.1: icmp_seq=95 ttl=64 time=336.179 ms
64 bytes from 10.0.0.1: icmp_seq=96 ttl=64 time=354.275 ms
64 bytes from 10.0.0.1: icmp_seq=97 ttl=64 time=1749.913 ms
64 bytes from 10.0.0.1: icmp_seq=98 ttl=64 time=745.430 ms
64 bytes from 10.0.0.1: icmp_seq=99 ttl=64 time=769.362 ms
64 bytes from 10.0.0.1: icmp_seq=100 ttl=64 time=329.883 ms
64 bytes from 10.0.0.1: icmp_seq=101 ttl=64 time=221.259 ms
64 bytes from 10.0.0.1: icmp_seq=102 ttl=64 time=1.586 ms
64 bytes from 10.0.0.1: icmp_seq=103 ttl=64 time=1.736 ms
64 bytes from 10.0.0.1: icmp_seq=104 ttl=64 time=2.632 ms
64 bytes from 10.0.0.1: icmp_seq=105 ttl=64 time=1.997 ms
64 bytes from 10.0.0.1: icmp_seq=106 ttl=64 time=2.415 ms
64 bytes from 10.0.0.1: icmp_seq=107 ttl=64 time=1.726 ms
64 bytes from 10.0.0.1: icmp_seq=108 ttl=64 time=2.258 ms
64 bytes from 10.0.0.1: icmp_seq=109 ttl=64 time=20.991 ms
64 bytes from 10.0.0.1: icmp_seq=110 ttl=64 time=70.409 ms
64 bytes from 10.0.0.1: icmp_seq=111 ttl=64 time=3.208 ms
64 bytes from 10.0.0.1: icmp_seq=112 ttl=64 time=2.001 ms
64 bytes from 10.0.0.1: icmp_seq=113 ttl=64 time=3.898 ms
64 bytes from 10.0.0.1: icmp_seq=114 ttl=64 time=2.976 ms
64 bytes from 10.0.0.1: icmp_seq=115 ttl=64 time=3.105 ms
64 bytes from 10.0.0.1: icmp_seq=116 ttl=64 time=1.862 ms
64 bytes from 10.0.0.1: icmp_seq=117 ttl=64 time=1.913 ms
^C
--- 10.0.0.1 ping statistics ---
118 packets transmitted, 118 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.586/510.973/2934.129/588.721 ms

Normally, when it “works” - however realizing that there are some peaks to tens of ms; overall it works just fine:

PING 10.0.0.1 (10.0.0.1): 56 data bytes
64 bytes from 10.0.0.1: icmp_seq=0 ttl=64 time=2.690 ms
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=5.853 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=2.256 ms
64 bytes from 10.0.0.1: icmp_seq=3 ttl=64 time=1.965 ms
64 bytes from 10.0.0.1: icmp_seq=4 ttl=64 time=1.859 ms
64 bytes from 10.0.0.1: icmp_seq=5 ttl=64 time=4.087 ms
64 bytes from 10.0.0.1: icmp_seq=6 ttl=64 time=50.656 ms
64 bytes from 10.0.0.1: icmp_seq=7 ttl=64 time=2.235 ms
64 bytes from 10.0.0.1: icmp_seq=8 ttl=64 time=3.877 ms
64 bytes from 10.0.0.1: icmp_seq=9 ttl=64 time=1.854 ms
64 bytes from 10.0.0.1: icmp_seq=10 ttl=64 time=2.191 ms
64 bytes from 10.0.0.1: icmp_seq=11 ttl=64 time=3.705 ms
64 bytes from 10.0.0.1: icmp_seq=12 ttl=64 time=3.017 ms
64 bytes from 10.0.0.1: icmp_seq=13 ttl=64 time=3.421 ms
64 bytes from 10.0.0.1: icmp_seq=14 ttl=64 time=4.484 ms
64 bytes from 10.0.0.1: icmp_seq=15 ttl=64 time=2.654 ms
64 bytes from 10.0.0.1: icmp_seq=16 ttl=64 time=2.640 ms
64 bytes from 10.0.0.1: icmp_seq=17 ttl=64 time=13.245 ms
64 bytes from 10.0.0.1: icmp_seq=18 ttl=64 time=57.492 ms
64 bytes from 10.0.0.1: icmp_seq=19 ttl=64 time=3.208 ms

--- 10.0.0.1 ping statistics ---
20 packets transmitted, 20 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 1.854/8.669/57.492/15.365 ms

You have neigbours in ch36

I don’t really see how it could happen. There can’t be any router near at least 20-25m from my router as there’s no closer house nearby. Also, in that case it must have been a very strong interference, therefore I don’t think any other device on network would work - my phone worked just perfectly fine during macbook wifi “outage”.

Current wifi channel analysis:

Signal SSID Channel Channel Width Mode BSSID
-10 dBm Local Interface 36 80 MHz Master
-93 dBm ⬤ AP1 44 160 MHz Master
-94 dBm ⬤ AP2 52 160 MHz Master
-92 dBm ⬤ AP3 56 160 MHz Master
-93 dBm ⬤ AP4 104 40 MHz Master
-90 dBm ⬤ AP5 132 40 MHz Master
-87 dBm ⬤ AP6 136 20 MHz Master
-87 dBm ⬤ AP7 136 20 MHz Master

See if this helps:

3 first ones totally overlap with 36-64 and given spread out cpntrol vhannel you can not have BW coordination.

That does channel hopping so it should not be noticeable. https://www.ditto.com/blog/cross-platform-p2p-wi-fi-how-the-eu-killed-awdl

Check whether you have any USB devices attached to the router.

Yes, they do, however their signal strength is weak and if there was any issue with channel interference, I assume all devices would have issues on wifi.. That’s my take on that.

No usb attached to the router.

You have 2.4 disabled. That means apple informs you you be wrong here.

Not sure what you mean by that. I don’t have 2,4GHz disabled, but I use solely 5GHz for majority of the devices (if they support it) including macbook.

config wifi-device 'radio0'
option type 'mac80211'
option path 'platform/soc/18000000.wifi'
option band '2g'
option channel '11'
option htmode 'HE20'
option country 'SK'
option cell_density '0'

config wifi-iface 'default_radio0'
option device 'radio0'
option network 'lan'
option mode 'ap'
option ssid 'xxx'
option encryption 'psk2+ccmp'
option key 'xxx
option isolate '1'
option dtim_period '3'
option wpa_group_rekey '86400'
option disassoc_low_ack '0'

This other SSID is disabled, it was either for testing or previous ssid before renaming it, I think it does not matter.

config wifi-iface 'wifinet3'
option device 'radio0'
option mode 'ap'
option ssid 'yyy'
option encryption 'sae'
option key 'yyy'
option ieee80211r '1'
option mobility_domain 'a1b9'
option ft_over_ds '0'
option ft_psk_generate_local '0'
option reassociation_deadline '20000'
option ocv '0'
option network 'lan'
option dtim_period '3'
option wpa_group_rekey '86400'
option disassoc_low_ack '0'
option disabled '1'

Is same ssid with same parameters available in all bands?

1 Like

Why would it need that? I only use 1 specific ssid - 5GHz.

Because Apples documentation says so?

2 Likes

This only affects iOS, not Macos, and only going into the future... also I would guess apple will keep the old ways for some time to allow older gear to still offer AWDL-based services (continuity, airdrop, ...)

My understanding of the Apple recommendation to ALSO use 2,4 GHz is due to roaming, band steering and compatibility. I do not want/need any of those in the current setup and I highly doubt that you need to have 2,4 GHz turned on together with 5/6 GHz for any wifi product to work properly. I understand you’re trying to help, but you’re most probably on the wrong path here. Thanks.

It heavily depends on generaton of your idevice. Some need wifi-b in 2.4 to get wifi-ac in 5ghz, some mandate 5ghz to get 6ghz. Just this much for any wifi product from apple. It is a gift that keeps on giving.

Anybody with similiar issues?

I'm having the same problem. It started 2 days ago with my MacBook M1 and iPhone 15. I tested other older builds that I know worked well, and the slowness persists. However, the official GL.iNet firmware works fine.

It seems to be coming from Apple's side. But no software updates have been made during this period.

Hi, is it slow all the time for you or it is just temporarily/intermittently. For me it helped when I reconnected the wifi.

For me, the connection is constantly slow on my MacBook M1 (Tahoe 26.1) and iPhone 15 (iOS 18.7.2), only on Wi-Fi. The slowness is noticeable even in the delay in opening web pages. Connecting a network cable to the MacBook and iPhone restores normal maximum speeds. Mobile data also works fine. Forgetting the Wi-Fi network and reconnecting didn't solve the problem for me.

It's a strange situation, and it seems to be coming from Apple's side. I found your post when I searched and decided to share my experience. I'm waiting for the next iOS and macOS update this week and will perform a full system restore afterward.