Skip to content

config: default duration to 150, not 0 - #273

Merged
PolynomialDivision merged 1 commit into
berlin-open-wireless-lab:masterfrom
SirLouen:patch/272
Jul 29, 2026
Merged

config: default duration to 150, not 0#273
PolynomialDivision merged 1 commit into
berlin-open-wireless-lab:masterfrom
SirLouen:patch/272

Conversation

@SirLouen

Copy link
Copy Markdown
Contributor

Closes #272

The shipped dawn-config sets option duration '0' but the compiled-in default in uci_get_dawn_metric() is at 150 so a stock install runs with 0. That value is passed straight through as the 802.11k beacon-request measurement duration, and some client firmware refuses a 0-TU measurement window, returning an empty report with the Refused bit set:

`BEACON-RESP-RX e4:bc:aa:bb:db:99 137 04 000000...`. 

DAWN's hearing map then only ever contains the AP the client is already on, so better_ap_available() has nothing to compare and steering silently never fires. On my cluster, the phone was sitting at -80 dBm for >10 min with another AP of the same ESS 1 m away with more than -40 dBm.

Setting duration=150 immediately flipped the reports to mode 00 and steering worked. It's client-dependent (one Xiaomi phone refused, another tolerated 0), so it looks like a per-device quirk rather than a default.

Also, I would consider adding in src/utils/dawn_uci.c

if (ret.duration <= 0) {
    dawnlog_warning("duration=%d is invalid (0 disables 802.11k BEACON reports); using %d\n",
                    ret.duration, 150);
    ret.duration = 150;
}

To avoid duration to 0. Looking to hear the opinion

@PolynomialDivision
PolynomialDivision merged commit 0d1ed7f into berlin-open-wireless-lab:master Jul 29, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

dawn-config ships default duration 0, which can disable 802.11k beacon reports and blocks steering

2 participants