Drop clients when signal is weak

A customer has 3 wAP ac running ROS 6.39.1. All setup with same SSID / wpa2 key so that clients can move around the area and connect to the AP with strongest signal. Problem is that they have 6 sonos devices, and these seems to frequently connect to the first AP they see, not the one with the strongest signal at their location. In the status of the wAP ac’s I frequently see sonos devices with a signal strength of -90 or worse.

I want to automatically disconnect devices with weak signals. The wiki has an example of such using access lists.
https://wiki.mikrotik.com/wiki/Manual:Interface/Wireless#Access_List

So, I run the commands from the wiki on all the wAP ac’s:

/interface wireless access-list
add interface=wlan1 signal-range=-75
add authentication=no forwarding=no interface=wlan2 signal-range=-120..-76

When the commands run, the AP disconnects all clients. Within seconds the devices reconnects, and I still see devices with signal strength of -92 or worse. If I kick them out manually, they connect to another AP, and things are fine, for a while. But within hours the devices again has reconnected to the AP with weak signal. So the code quoted seems to not work as intended.

Does anyone know how to make this work?

And WHy you dont use Capsman?

Does capsman tell clients which AP to connect to?

in capsman u can set signal limit if its gets too low that ap automatically kicks out that device and eventually device will connect to another ap with a better signal

You could set up an access list to disallow the songs devices on each so except for the one you want. You could open this out in general to use as a minimum rssi rule.

The access rule in the OP is incorrect, one applies to wlan1 and one applies to wlan2. I recommend using one that applies to all wireless interfaces.

/interface wireless access-list
add signal-range=-75..120
add authentication=no forwarding=no signal-range=-120..-76

The downside is , on the area edge APs, clients kicked out but with no better AP to choose , are kicked out until they come back to nearest Ap coverage area level.

Where do I set this signal limit in Capsman?