Clients keep switching to 2.4Ghz after a few minutes

AP has two radios for 2.4 and 5 GHz.

Running one SSID for both 2.4GHz and 5GHz.

Clients initially connect to the 5GHz band but after about couple of minutes they switch to 2.4GHz. Client is in the same location, not moving and at least 10 feet away from AP.

Do clients keep sending probe requests and association requests periodically? That doesn't make sense.

Any advice?

While they are on the 5GHz band, do the clients manage to send/receive any Internet traffic?

Yes. There is traffic. I can do my normal browsing and all. They just switch after a few minutes. I don't even realize it many times until I am watching HD youtube video.

OK, next thing to check: what if the 2.4GHz AP is not enabled? Does 5GHz stay functional?

As long as the 5GHz AP doesn't drop connections, being so close to the router, clients shouldn't choose to associate with the 2.4GHz AP. So let's test that this is the case.

Ok. will do first thing in the morning and report back.

Even when I was right next to the router, clients that initially connected to 5Ghz switched to 2.4Ghz after a few minutes.

@dimitris ok. I tested it for most of the day today. Disabled 2.4ghz and used only 5ghz.

No connection drops. But I did notice something weird when I am using my iphone and move far away from the AP, around 70-73 RSSI, SNR = -70/-107 dBm (approx).

I use safari to open a website and nothing happens. The website doesn't open. But then I press the home button, making safari app to go into the background. Then reopen the safari and the website opens or is already opened.

Sorry for asking some obvious-sounding questions, but this is now at the limit of my (not so great) troubleshooting experience.

  • What happens if you just try to reload the page with Safari, instead of background/foreground?

I'm suspecing that what's happening underneath it all is that the connection is somehow lost at the WLAN/link layer, and the foreground/background business just prompts iOS to try to bring it up faster than it otherwise would - i.e. bit of a red herring.

  • Can you get logs from the AP around the time this happens?

  • Can you try to reproduce this with a linux laptop (or any other client that can get you client-side logs from its WLAN adapter)?

I had some connectivity issues with the 5GHz band when the router would constantly drop the clients. I fixed by disabling disassoc_low_ack for both bands.

@dimitris It reloads sometimes and doesn't other times. I tried it for two days.

@fantom-x yeah I have it disabled.

Also, I noticed when the connection switches to 2.4ghz from 5ghz: these are the logs:

wlan0-1: RADIUS: starting accounting session
wlan0-1: WPA: pairwise key handshake completed
wlan0-1: STA IEEE 802.11: disassociated due to inactivity
wlan0-1: STA IEEE 802.11: deauthenticated due to inactivity (timer DEAUTH/REMOVE)

after above deauthentication, client is immediately connected to wlan1, with the same above setups but for authentication.

I still have this issue :frowning:

I've disabled 2.4GHz completely and when using 5GHz only there are NO connection drops.
My laptop (Macbook pro) is in the same position:

  1. disconnect from wifi
  2. connect to wifi
  3. macbook pro connects to 5GHz
  4. works for around 10-15 mins
  5. switches over to 2.4GHz
  6. doesn't connect to 5GHz unless I repeat from step 1

I have the 2.4GHz radio's power at 17dBm and 5GHz radio's power at 23dBm

I just looked a the logs - at one point MacBook pro was connected to BOTH 2.4 (wlan0) and 5 GHz (wlan1) and after about 12 mins I see this messages: hostapd: wlan1 : disassociated due to inactivity hostapd: wlan1: deauthenticated due to inactivity (timer DEAUTH/REMOVE)

Macbook pro and/or iPhone are within 30 feet of the AP running 17.0.1

Any advice?


Did you found anything?

Can you try:

option wpa_group_rekey '86400' (I think, for aes this should actually be default and 1800/3600 should be used for tkip)
option max_inactivity '1800' (maybe raise to 3600 or even higher if 1800 doesn't work)
option disassoc_low_ack '0'

Also the switch between 2.4Ghz and 5Ghz is done by the clients.
OpenWrt doesn't support band steering.


thanks for your input.
I tried your suggested settings, but there were no difference.
It looks like my iPhone 7 is more sticky to a network than my older iPhones and tries to stick to a wifi network as long as possible.
And also the problem is very hard to reproduce.
But 802.11r roaming is working for me from 5Ghz to 2.4Ghz.

Is there a reason that you are assigning the same SSID to the 2.4 and 5.4?

There is no band steering software on OpenWrt (such technology is non-standard). So, in your situation, if 5.4 has a hiccup, your devices would go to 2.4 GHz. It seems like expected behavior.

I would also advise increasing the group rekey.

Yes, the same SSID for all clients. Is there a reason not to assign the same SSID to 2.4 and 5GHz? The client can decide which band it prefers.
And why should i increase the group rekey option? And to what level? 86400 is the default if you believe the docs.

Client choice of AP is a software issue and not every client software has a good algorithm, to put it mildly. I personally have one network SSID which is the same on both bands but I add a second SSID that is 5ghz only. Devices I want to force onto 5ghz I connect to the 5ghz specific SSID.


What router device are using?
Is it possible that you use a device that uses mwlwifi driver?
I also have those messages in my log with some devices.

I am using QCA9880 which is mac80211 and ath10k firmware.
I haven't experienced this issue recently. I updated to 18.06.

Let me know if you need any more info or if you want me to run some tests.
I am happy to help/test to solve this issue.

disassociated due to inactivity hostapd: wlan1: deauthenticated due to inactivity (timer DEAUTH/REMOVE)

I have seen this message numerous times now.
Regardless of the devices that are used.
I wonder what triggers this.
Maybe the powersaving feature on the clients? Some misbehavior in mac80211 or hostapd?

Search the forum for deauthenticated due to inactivity