Usteer (Band Steering)

Automatic client roaming using the OpenWRT usteer daemon.

Overview

Usteer is an OpenWRT daemon that steers Wi-Fi clients toward the best available access point. When enabled, OpenSOHO generates /etc/config/usteer on the device with sensible defaults for roaming behaviour.

Prerequisites

Usteer requires the full wpad package (not wpad-basic) and the usteer package:

# OpenWRT 24.10
opkg remove wpad-basic-mbedtls && opkg install wpad-mbedtls usteer && service wpad restart

# OpenWRT 25.12+
apk del wpad-basic-mbedtls && apk add wpad-mbedtls usteer && service wpad restart

Enabling usteer for an SSID

Open the Wifi SSIDs configuration and enable the following fields on the SSID(s) you want usteer:

FieldRequiredPurpose
ieee80211v_bss_transitionYesBSS Transition frames — the mechanism usteer uses to steer clients
ieee80211kYesNeighbor reports — lets clients discover better APs
usteerYesTells OpenSOHO to enable usteer on this SSID
ieee80211rRecommendedAllows faster roaming between APs

Generated configuration

OpenSOHO creates a hardcoded config /etc/config/usteer with these settings:

config usteer 'usteer'
        option enabled '1'
        option network 'lan'
        option roam_trigger '-70'
        option min_signal '-78'
        option probe_steering '1'
        option deny_assoc '1'
        option band_steering '1'

The OpenWRT wiki explains these values

The thresholds below are also visualised on the dashboard.

OptionValueMeaning
roam_trigger−70 dBmSignal below this triggers a steering attempt
min_signal−78 dBmSignal below this may be denied new associations

Difference from the client_steering collection

Usteer and client_steering are two independent mechanisms and can be used together. You should use usteer for your client steering.

Last modified April 21, 2026: Add usteer doc (d2a30b8)