a few days ago I helped a friend with installing OpenWrt 19.07.5 on a D-Link DIR-860L B1 router and encouraged him to use the 5 GHz network while in close proximity to the router. The 5GHz clients are 100% Samsung smartphones (J7/A51/S9/etc.).
Today, after an uptime of 4 days, I noticed the following in the kernel log, repeating randomly at least 10 times during this period of 4 days:
[168941.557056] mt76x2e 0000:01:00.0: MCU message 31 (seq 3) timed out [168941.618638] mt76x2e 0000:01:00.0: Firmware Version: 0.0.00 [168941.629762] mt76x2e 0000:01:00.0: Build: 1 [168941.638133] mt76x2e 0000:01:00.0: Build Time: 201507311614____ [168941.667043] mt76x2e 0000:01:00.0: Firmware running! [168941.687162] ieee80211 phy0: Hardware restart was requested [168981.556718] mt76x2e 0000:01:00.0: MCU message 31 (seq 8) timed out [168981.618260] mt76x2e 0000:01:00.0: Firmware Version: 0.0.00 [168981.629403] mt76x2e 0000:01:00.0: Build: 1 [168981.637772] mt76x2e 0000:01:00.0: Build Time: 201507311614____ [168981.666716] mt76x2e 0000:01:00.0: Firmware running!
Apparently it only affects phy0 (5GHz) and there are a few clients 5GHz-able that are connecting to the router. No one noticed any disconnects, but the "Hardware restarts" are definitely causing a short disconnect.
Did some research and found the following related links (not really helpful):
Another link I can't find anymore was also describing an issue with MCU messages timing out, but related to an Intel driver (on a full fledged 4.x kernel Linux) and the workaround there was to disable the 80211.n support.
The relevant OpenWrt wireless configuration section is:
config wifi-device 'radio0' option type 'mac80211' option hwmode '11a' option path 'pci0000:00/0000:00:00.0/0000:01:00.0' option htmode 'VHT80' option txpower '20' option country 'US' option channel '36'
And I'm using the exact same settings on 3 other D-Link DIR-860L B1 routers, running different OpenWrt 18.06.1-19.07.5 versions, where I haven't noticed any issues. But, on those other routers usually there is only one 5GHz (capable) client connecting.
I don't know how to replicate this or what is causing the issue, but I fear that either - if there are many 5GHz clients, causing traffic, the adapter becomes unstable - or - there is one client that "offends" the adapter with some weird wireless traffic/packets (phy level).
Did some more research and learned that I could enforce some client 802.11 version requirements with require_mode
- added to the configuration section from above:
option require_mode 'ac'
- restarted the router and was not able to connect anymore on both 5GHz and 2,4GHz (why?)
From this "defect" - I learned that one can disable the 802.11n by simply using htmode NOHT (not available in LuCI):
- not sure if it's actually supported and if it'll help (the workaround was presented for the Intel driver and it was really old).
I only have one 5GHz capable client (my phone) ATM and haven't had absolutely any issues with it connecting to and using my D-Link DIR-860L B1 and I'm pretty much staying on 5GHz all the time.
Maybe some other users that use more 5GHz clients at the same time could have a look in the kernel log and check if they're getting such errors.
Any other helpful inputs/explanations appreciated!