If the OP of this thread would take a few minutes and read through Ubiquiti forums they'd know that there have been 10's of conversations wherein someone from Ubiquiti or a power use has explained why you shouldn't be using the old ZHO hacks. I said this yesterday in another Ubiquiti focused comment, but 1) ZHO forces all AP into the same L2 network and 2) ZHO puts all AP on the same channel and SSID. The last one should be blatant enough for anyone to know that that's not going to scale or be performant. ZHO was implemented for old, low bandwidth devices that needed to be on the same network. Full stop. Don't use ZHO!
Beyond that do some due diligence when setting up your networks. Even with 802.11n/ac in the 5GHz range you should be aware of best spectrum usage, about things like DFS and consider how wide of a band you're allocating to the channel selection your making (hint: it impacts overlap). Do not do not do not use auto channel selection unless you're forced to. I get it, you may not have control over this in a dense environment (apartment) but if you can control your airspace (reasonably so) map out channel utilization especially if you have more than one AP. Then go to the next step and figure out the worse spots for reception in your house are and, as the person above me states, tune RSSI down to get clients to get kicked as they "roam". This will force them to reselect much faster. One comment stated 8 second reassociations. That's just bad tuning and clear ignorance to the problem - you'd have the same thing with any other vendor.
I think Ubiquiti makes some really great products for the price. Have they violated GPL? Quite possibly but as others have said I don't think that's been proven judicially as of yet. You will get one of the best products at this price point though and, when setup correctly, will be much more performance than things like Eero or Google Wifi that relies on wireless as the backhaul between APs. If you're saying you can't use cabled infrastructure there are options. 1) Powerline is now "decent" as in 400-700 Mbit are attainable depending on your situation, they're also much cheaper (look for HomePlug AV2 standardization) now 2) Dedicated, directional focused wireless backhaul is the better option than an omni backhaul between something that is already handling your clients. That is Ubiquiti's forte. They only recently released the UniFi product but you can use NanoBeam, Bullet or NanoStation in your home to move things around to dedicated AP.
Ultimately if you want good wifi you have to pay for it and plan and deploy it correctly. The second half of it is why we have Eero and Google Wifi - because people don't do that. They buy Ubiquiti or some other enterprise focused WLAN solution, plug it in and do the minimal work and say it doesn't work or sucks without RTFM.
Finally if you want "fast roaming" you should know what you want before buying a product since the device OS needs to support it. Apple has basically said they're supporting 802.11r: https://support.apple.com/en-us/HT202628. And 802.11r is in the latest builds of UniFi firmware, but not really exposed to the GUI config because, well, people will probably shoot themselves in the foot with it.
Appreciate this comment and did want to follow up that we are not a Ubiquiti shop but instead have taken over other deployments of it. My deployment experience with Ubiquiti is none, so it's great to hear the actual implementation of Zero Handoff is a hack... nasty, and that should explain the problems we've seen for sure.
We're still in the process of tuning one client with a significant investment in UniFi. ZHO is not enabled in that case and am going down the routes you've described re RSSI tuning and RF mapping, but still see blatant performance issues, and will readily admit that being forced to resort to forums for support and outdated setup articles isn't exactly confidence inspiring and helps fuel my distaste for the product. We're stuck with it though.
This will likely be one of those things requiring experience but as I'm hoping to install a Ubiquiti focused system in my house over the next few weeks, do you have any suggested resources? Particularly on the subjects of spectrum usage, DFS, and channel selection? I'm not in an apartment but still of the opinion that neighboring network boxes are causing congestion on my local system. We're all on Google Fiber with the provided network boxes, which seem to automatically select the same channel. Simply selecting a different channel hasn't seem to improve the situation (and has potentially made things worse).
The /r/homenetworking subreddit will be happy to answer and walk you through your deployment, plan, etc. in whatever level of detail. They basically spend most of their time telling people which Ubiquiti gear to get, since that's the #1 solution to most people's problems (buy good, purpose-built hardware), why to get each peice, and how to arrange it, so basically exactly the sort of thing you're asking.
Today most, if not all, enterprise grade AP have settings for minimum RSSI values. Think of it this way - having one client on your WLAN that has a weak connection will introduce errors and retransmission impacting every client to a certain extent (it's a shared medium). In a deployment wherin you have multiple AP working together (on different channels) there's going to be overlap so you have a continuation of service. You may move around and be connected to WAP-B with an RSSI of -70 but be closer to WAP-A with an RSSI of -50. Your OS will try to hang on to that connection as long as it can by default since it's not scanning in the background for something better on a differing BSSID (the BSSID is the MAC, generally in a multi-AP environment you'll have a singular SSID and each AP has a unique BSSID).
With minimum RSSI implementations the AP will kick (deauth) clients that no longer meet the minimum RSSI level. This will force them to reconnect to and will go with the stronger BSSID being advertised with the same SSID. Still rudimentary but works rather well. I don't even notice roaming in my home anymore after tuning. It's very evident when you're on a network that has defaulted to auto and all of the channel selection and power output is up for grabs.
If you're looking at doing this with Ubiquiti they have docu and even point out the warts with simple RSSI tuning. Trolling the forums before doing a deployment is something you should do as this equipment isn't really something that will autoconfigure itself very well. I mean, it works - but clearly you can see in this thread that people who just expect it to work have bad things to say about it's effectiveness. What they don't understand is that a lot of those problems are self-inflicted.