You have a mesh Wi-Fi network with several nodes. You bought a smart bulb for the bedroom. The bulb connects to the kitchen node instead of the bedroom node. Signal is weak, response is slow. You unplug the bulb, plug it back in, hoping it will pick the closer node. It picks the kitchen node again. This is the roaming reluctance problem, common with IoT devices.
How roaming should work
In an ideal mesh, each client connects to the nearest node with the strongest signal. As the client moves, it disassociates from the old node and associates with the new one. For mobile clients (phones), this works.
For stationary IoT devices, the device picks a node at install time and sticks with it. The picked node is often whichever responded first to its connection request, which is not necessarily the closest.
Why IoT clings
IoT devices use simpler Wi-Fi chipsets without aggressive roaming algorithms. Once associated, they hold onto that node unless the signal drops below a hardcoded threshold (often very low, like -80 dBm).
Even if a closer node has -50 dBm signal, the device sees the -75 dBm of the original node as “good enough” and does not switch.
Identify which node a device is on
Most mesh router apps show which node each client is connected to. Verify your bedroom bulb is actually on the kitchen node.
- Eero: client details show node assignment.
- Nest Wifi: device details under each access point.
- TP-Link Deco: connected devices list per node.
- Unifi: client view with AP column.
If the device is on the expected node, you have a signal strength issue, not a roaming issue. If it is on the far node, you have roaming reluctance.
Force roaming with a power cycle
The simplest fix: turn off the far node, wait 30 seconds, then turn it back on. The device disconnects, looks for any available node, and reconnects to whichever node responds. Often this is the nearest one.
Disruptive but effective. Schedule this during off-hours if you have other clients on the far node that should not be disrupted.
Disable the far node temporarily
Better than power cycling: temporarily disable the far node’s Wi-Fi while leaving its routing function intact. Smart devices that were associated drop and re-associate to the next-best node.
This requires a router that lets you disable individual nodes’ Wi-Fi without turning them off entirely. Unifi and Mikrotik support this. Many consumer mesh systems do not.
Reduce the far node’s signal strength
If the far node’s signal reaches your bedroom strongly (because it is in a hallway between rooms), reduce its transmit power. The bedroom now sees a weaker far-node signal and a stronger bedroom-node signal.
Transmit power is adjustable on some routers, fixed on others. If adjustable, lower the far node’s power until the bedroom node is clearly stronger from the bedroom.
Per-band SSID for IoT
Most IoT devices are 2.4 GHz only. If your mesh broadcasts both 2.4 and 5 GHz on the same SSID, the device picks one band per node based on signal. Sometimes it picks 5 GHz on the kitchen node over 2.4 GHz on the bedroom node, especially if the kitchen 5 GHz is strong nearby.
Separate the SSIDs: “HomeMain” for 5 GHz, “HomeIoT” for 2.4 GHz only. IoT devices on the 2.4 GHz SSID only see 2.4 GHz options across all nodes.
The 802.11k, 802.11r, 802.11v support
Modern Wi-Fi has roaming-assist standards:
- 802.11k: clients learn about neighboring APs from their current AP
- 802.11r: fast handoff between APs without re-authentication
- 802.11v: APs suggest to clients that they should roam
Enable these on your mesh router. Many IoT devices ignore them, but newer devices respect them and roam better.
Disable band steering for IoT
Band steering directs clients between 2.4 and 5 GHz. For IoT-only clients (2.4 GHz only), band steering can confuse them: the router tries to push them to 5 GHz, they fail, the router pushes them back to 2.4 GHz. The thrashing causes connection issues.
Either disable band steering globally or per-device for IoT clients.
Static IP and DHCP reservation
Set DHCP reservations for IoT devices. This ensures their IP does not change between roams, which some IoT devices handle poorly.
This does not directly cause roaming, but it makes the rest of your setup more predictable around roaming events.
The minimum RSSI feature
Some routers let you set a minimum RSSI for client association. Clients with weaker signals are disconnected, encouraging them to find a stronger node.
Setting minimum RSSI to -75 dBm typically forces clients to use the nearest node. Lower (-85 dBm) is too permissive; higher (-65 dBm) may disconnect clients with no closer node available.
Verify after each change
After making roaming changes, verify by checking the device’s node assignment in the router app. The change should be visible immediately for newly-connecting devices and within minutes for already-connected ones.
The IoT-friendly mesh layout
If you have control over node placement, place a node in or near every room with IoT devices. This eliminates the cling problem because every IoT device has a strong nearby node.
For homes with many IoT devices, this is the cleanest solution. Mesh node hardware is inexpensive enough that adding a node per room is reasonable for a smart home.
The IoT device that simply will not roam
Some IoT devices have firmware that does not roam under any conditions. They pick a node at first connection and stay there forever until the node is unreachable.
For these, the workaround is to install the device in close proximity to the desired node and trust it will stick there. If you move the device later, factory reset and re-pair it from the new location.
What if the device is in the right place but still slow
If your device is connected to the correct node but still slow, the issue is not roaming. Likely a different problem: signal strength, interference, congestion, or device firmware. Investigate those separately.
The patient handoff approach
Some IoT devices simply will not roam, no matter what you do. Accept this and work around it: place the device near its preferred mesh node and leave it there. Trying to force roaming on a device that does not support it well leads to chronic instability.
This is more about choosing physical placement than tuning network settings. Devices that genuinely roam well (phones, laptops) handle the mesh fine; the ones that do not need to be placed accordingly. The wider topic of mesh tuning is in our mesh maintenance guide.