On iOS, equal channel with correct ESS will switch liberally. On Android 14+ with Broadcom chip it will start conservative, then switch liberally after the first poor signal switch-over event, up until disconnection.
Android (Pixel/Moto) will never switch (even with K/V) on large network activity, only VoIP/video call. It depends on vendor implementation. I use "dp.logcatapp" log reader while roaming, "com.android.location.fused" shows score and current load.
Samsung is known to push protocol support early: 802.11r in 2013, 802.11w 2015, some models do not use Android's default connectivity manager.
To add, WPA3 with 802.11r is known to have issues on Apple hardware before 2021 on all iOS versions, many Android devices, especially smart TVs don't support it, will not connect or are unreliable (protected beacon frame), can be searched in buried report results at OpenWrt forum mega threads and Ubiquity. WPA2+FT and forced MFP with a long password is a safe alternative. 802.11r use PMK push on WPA3 compared to WPA2, which was known to be problematic on older hardware.
802.11K/V is more suitable for campus and load balancing, tuning it based on RSSI and station metrics is very difficult, enterprise hardware rely on network traffic and air time.
Not sure if roaming is actually the fix for this problem. For whatever reason my Ring cameras just love connecting to the worst and most far away AP in my house.
I had to solve a similar issue for some crap IoT lights that would join the incorrect AP after a power cut every time.
> https://community.ui.com/questions/Lock-Client-to-Specific-A...
That can mean that the portable wifi speaker-widget (which itself doesn't need much bandwidth) might go from working fine on the back deck or well-enough about anywhere else in the yard, to not working at all outside.
I need my TV to rapidly switch APs in very heavy load wide area networks with thousands of devices while I'm cruising through the venue with my motorized couch and entertainment system.
Now I want to actually build that for GPN24 next week. Wouldn't use AndroidTV for that though.
With 802.11r on, things would disconnect for 60+ seconds before reconnecting. It was a constant frustration of "arrrrrrrggghhhh fucking connect damnit I'm standing a meter in front of the AP can't you fucking see it fuck fuck fuck just connect, it's right THERE, connect NOW, arghhh" and then it would completely disconnect (no wifi found) and then reconnect a minute later.
With 802.11r off things just roam smoothly. I guess the people who inventned the tech didn't test it thoroughly enough.
I haven't had luck with the roaming extensions; when I run them, some of my devices won't connect or won't stay connected and it's a pain to monitor. I guess I could run a different SSID with roaming enhancement, but effort.
Not sure if they finally got around to making the BSSID selection algorithm a bit smarter or whether all my access points just support active steering at this point, but I haven't seen this in the past couple of years.
What difference does the presence of legacy devices make? Is the intent to isolate them from modern devices from a network perspective? Then create a separate SSID on both 2.4 and 5 GHz for modern devices.
I can't think of any legitimate reason for split SSIDs anymore. Linux clients used to be pretty bad at preferring 5 over 2.4 GHz if RSSIs were both excellent but 2.4 was slightly better, but I haven't seen that in years.
Running Omada on my Windows Server was painful (doesn’t really run properly as a service, software updates are a chore), but since I moved it to run on Proxmox using a super simple LXC image (I maybe got terminology wrong here) it’s been very nice.
Supposedly I should have excellent roaming between the APs, but I’m not sure how to check. Certainly, walking from one end of the house the other while on a Teams or WhatsApp call on my phone has maybe only a super minimal amount of time that I might not hear the other person (sub second for sure, if at all), but mostly I don’t notice.
* https://www.omadanetworks.com/us/business-networking/omada-r...
If you want multiple SSIDs, roaming, daily neighbor scanning and auto channel selection, etc, but don't like to spend hours tinkering with your equipment beyond the physical setup, then Ubiquiti UniFi equipment is great.
I stopped recommending UniFi around 2020 (several of their best engineers had left, and they made some dumb choices), but IMO they're back to being a decent choice. And I appreciate that they're become a one-stop solution for all home/SOHO as well as mid size enterprise IT needs.
By lucky chance, while he set up usteer, he modified DTIM to 3 thus fixing the fast transition roaming, which doesn't work well on default openwrt because of DTIM. Especially Apple devices really hate DTIM=2 (they need the extra off-time given by DTIM to properly scan the other channels).
Great write up, good information to share. This really is such an important next step for many people's wifi and it's documentation is pretty so-so.