I have a network setup with 3 x Peplink AP One AC Minis.
I also have some IOT devices that use WiFi. I’ve noticed that several of the devices seem to have locked onto a WiFi access point that gives a very weak signal, in spite of a different AP being much closer and in line-of-sight.
I’m sure I could go power cycle the IOT devices and hope they pick up a more sensible AP, but I’m wondering…
Is there any way, from the Peplink AP web UI, to force a device to roam to a different AP?
I have B One with a built in access point and two AX One Lite
most IoT seem to connect to the B One, even though at least some should get a better signal from the closer AX One
I attempted to exclude/ban the IoT device on the B One, but that seem to have excluded it from the entire network, and when I allowed it again, it again established a connection to the further/weaker B One signal.
but signal is good enough, so I let it be
I did some research and it seems that WiFi use some sort of beacon for announcing itself, and whichever beacon with a “good enough” signal shows up first, the IoT will connect to it. i.e. it connects to the first signal that is good enough, not to the strongest signal.
I recall that I saw the beacon rate somewhere in the config, and thought that if I make the APs beacon more frequently the IoT devices might connect to the AP first. but since I have both AP controlled by the B One, changing the beacon rate will change all of them.
I also recall that I saw a min signal strength in the radio config, but did not occur to me till now to try it out.
gotta run, so I have not yet tested the new config:
Yes, there are times when you really want to force a disassociation, if for no reason other than testing purposes. But meanwhile, two parameters you may wish to adjust are output power and Client Strength Signal Threshold. In the example which follows, power is set to medium (higher is not always better) and the 2.4 and 5GHz minimal signal levels are set very differently. This user has IOT devices on 2.4GHz which should be allowed with poor signals (sometimes poor throughput is better than none) but 5GHz is used primarily by phones and computers. The latter is markedly faster and they want to keep it that way by disallowing weak clients.
Test 1: I enabled Assisted Roaming set to Aggressive, and waited 30 minutes. Nothing seemed to change.
Test 2: I set the Client signal strength threshold to -74dBm, which should kick off any client at -80 or below (the instructions suggest the actual threshold is 6dBm below what’s indicated)
On the positive side, many Clients at -80 or below were disconnected within about one minute, and some of them reconnected to a better AP, which was exactly what I wanted.
On the negative side, some of the clients at -80 or below still picked a weak AP - I have one IOT device about 5 feet from an AP, and it still chose to associate with an AP which is about 50 feet away, and is now sitting at a signal of -79dBm.
Followup: I think there’s a bug with the Client Signal Strength settings, at least with some devices?
Here’s what happened:
set to -74dBm indicated (-80dB actual) and all devices below 80 are kicked off (as expected).
those that could not find an AP at less than -80 were unable to reconnect (also as expected)
I turned off the feature (by un-checking the Disconnect Clients button) and applied changes, and waited a while. The AP log indicated the settings had been applied to all APs.
However, one particular client (a WiFi thermostat) was unable to reconnect, even after multiple tries and rebooting the thermostat several times.
Out of frustration, I decided to reboot all my APs, and within a few minutes, the thermostat was reconnected.
It seems that even after I turned off the “Disconnect Clients” settings, the APs were still using it, and only stopped after they were rebooted.
I tried a new approach to get my IOT devices locked onto the correct channel.
Start with a very strict Signal Strength threshold (60dBm) and gradually increase… 60, 70, 80, 90…
At each step, wait about 10 minutes for the devices to stabilize.
Did it work?
Yes and no.
Many of my devices found a better AP and stuck with it.
But some did not. I think some IOT devices are simply stupid, and will choose a weak AP vs. a strong one, for some reason I’m not able to determine.
An additional problem: Whenever you change the Client Signal Strength setting, ALL devices are kicked off the network.
This means that an IOT device which had locked onto an AP at a stronger signal may migrate to a weaker one
I think it would be better if, when changing the signal strength threshold, the AP did not kick all devices off WiFi, but rather only kicked off those devices below the new threshold.
With WIFI, clients are the primary decision maker for what ap they will associate with, so it is hard to properly/accurately control this from the AP side, its just not how the protocol works