I spent the better part of today trying to solve this issue, to no avail so far.
In an office with two floors, I have one Hap Ax S on each floor. Capsman is used on one of the APs to manage both of them. One SSID for both 2GHh/5GHz, one security profile.
I'm having huge issues with Windows laptops. As long as they are stationary, they work perfectly fine. This goes for both floors. But as soon one laptop moves away from AP1 into the sending zone of AP2, it sticks to AP1 until it loses connection and does not reestablish connection with AP2 even once the connection to AP1 is entirely lost. The same the other way around.
What's worse, I can't even connect manually once the connection was dropped, it simply won't connect to the new AP, and it won't even reconnect to the original AP if I move back to it. I have to wait several minutes close to the other AP and only then it will let me connect. Or, alternatively, switch off Wifi entirely for about 20-30 seconds, turn it back on again, then connecting will work.
Interestingly enough, I don't have these issues with my Android phone. It roams not only between the two APs but also switches back and forth between 2Ghz and 5GHz.
I understand that the client is supposed to make this decision and there is only so much one can influence from the AP. But several Windows laptops of various brands and with various drivers act the same. And even if it does not seamlessly roam, I would expect to at least build up a new connection once the previous one was lost.
Here are some of things I tried on the APs:
- Turning FT on and off
- Turning RMM on and off
- Turning WNM on and off
- Reducing transition threshold
- Skipping DFS channels for 5GHz
- Turning off all auth types and ciphers except "WPA2 PSK" with CCMP
And on the windows client:
- Updating to newest intel drivers (current)
- Changing preferred band from none to 2ghz and also to 5ghz
- Changing roaming aggressiveness from medium to low to highest
- Turning off power management for the wifi nic
- Reinstalling wifi nic
- Deleting and recreating connection
Nothing I do makes a difference. Even though the second AP can clearly be seen from my Windows laptop with a good RSI value, it won't connect to it after being connected to the other AP.
I've been walking around the office for hours on end, changing settings several times. No problem with Android, but with Windows laptops, it just won't budge. And even though I understand how the responsibilities are divided between the AP and the client, I just don't think this behaviour is normal. After having tested this much without things getting better, I wonder if this is a firmware issue.
Having said that, I had 7.20 on it and then upgraded to 7.23 (current stable), no improvement.
For reference, my Wifi settings:
[admin@PD1] > /interface wifi print detail
count-only from proplist where
file interval show-sensitive without-paging
[admin@PD1] > /interface wifi print detail
Flags: M - MASTER; D - DYNAMIC, N - NETWORK; B - BOUND;
X - DISABLED, I - INACTIVE, R - RUNNING
0 MDBR default-name="wifi1" name="PD1-2g" mac-address=D0:EA:11:3F:AE:88
arp-timeout=auto radio-mac=D0:EA:11:3F:AE:88 configuration=2ghz
configuration.country=Switzerland .ssid="MySSID" .mode=ap
security.authentication-types=wpa2-psk .encryption=ccmp .ft=no
.ft-over-ds=no
datapath.bridge=bridgeLocal
channel.band=2ghz-ax .width=20mhz
steering.rrm=yes .wnm=yes .transition-threshold=-75
.transition-threshold-time=5s
1 MDBR default-name="wifi2" name="PD1-5g" mac-address=D0:EA:11:3F:AE:89
arp-timeout=auto radio-mac=D0:EA:11:3F:AE:89 configuration=5ghz
configuration.country=Switzerland .ssid="MySSID" .mode=ap
security.authentication-types=wpa2-psk .encryption=ccmp .ft=no
.ft-over-ds=no
datapath.bridge=bridgeLocal
channel.band=5ghz-ax .width=20/40mhz .skip-dfs-channels=all
steering.rrm=yes .wnm=yes .transition-threshold=-72
.transition-threshold-time=5s
2 MDB ;;; operated by CAP D0:EA:11:3F:A3:2A%bridgeLocal, traffic processing on
P
cap="PD2@D0:EA:11:3F:A3:2A%*b" name="PD2-2g"
mac-address=D0:EA:11:3F:A3:30 arp-timeout=auto
radio-mac=D0:EA:11:3F:A3:30 configuration=2ghz
configuration.country=Switzerland .ssid="MySSID" .mode=ap
security.authentication-types=wpa2-psk .encryption=ccmp .ft=no
.ft-over-ds=no
datapath.bridge=bridgeLocal
channel.band=2ghz-ax .width=20mhz
steering.rrm=yes .wnm=yes .transition-threshold=-75
.transition-threshold-time=5s
3 MDB ;;; operated by CAP D0:EA:11:3F:A3:2A%bridgeLocal, traffic processing on
P
cap="PD2@D0:EA:11:3F:A3:2A%*b" name="PD2-5g"
mac-address=D0:EA:11:3F:A3:31 arp-timeout=auto
radio-mac=D0:EA:11:3F:A3:31 configuration=5ghz
configuration.country=Switzerland .ssid="MySSID" .mode=ap
security.authentication-types=wpa2-psk .encryption=ccmp .ft=no
.ft-over-ds=no
datapath.bridge=bridgeLocal
channel.band=5ghz-ax .width=20/40mhz .skip-dfs-channels=all
steering.rrm=yes .wnm=yes .transition-threshold=-72
.transition-threshold-time=5s
