wifi: 40 MHz HE/VHT htmodes unusable — validator only accepts HE40±/VHT40±, which OpenWrt 24.10 ignores (silent 20 MHz)
@rslater-cs ci sta già lavorando.
Dal 21/10/2026.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 78/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Ambito
- networking, testing
Direzione di ricerca
Inizia leggendo gli elenchi consentiti di htmode in src/services/hal/types/capability_args.lua e src/services/hal/drivers/radio.lua, quindi confrontali con il comportamento di corrispondenza di mac80211.sh descritto nella issue. Individua i test esistenti del validatore e aggiungi la copertura per HE40 e VHT40, oltre al trattamento scelto per le varianti con segno a 40 MHz. La modifica è completa quando la validazione accetta i valori compatibili con OpenWrt, gestisce o rifiuta esplicitamente HE40±/VHT40± e i test rilevanti superano l'esecuzione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
The radio htmode allow-list accepts HE40+, HE40-, VHT40+, VHT40- and rejects HE40/VHT40. OpenWrt 24.10's mac80211.sh understands HE40/VHT40 (and HT40+/HT40-/HT40), not HE40±/VHT40±. As a result:
htmode = HE40is rejected (radio_args_invalid), and the radio keeps its previous settings.htmode = HE40+passes validation and is written to uci, but hostapd brings the radio up at 20 MHz, with no error anywhere.
So no HE/VHT radio can run at 40 MHz, and validation gives false confidence.
Where
src/services/hal/types/capability_args.lua:527(RADIO_VALID_HTMODES) and theRadioHtmodealias at:545.src/services/hal/drivers/radio.lua:16(VALID_HTMODES).
Evidence
bigbox-v1-cm-2, devicecode-lua v0.11.3, OpenWrt 24.10.7. Radio1 (5 GHz) on channel 100, 2026-10-20:
htmode = HE40: logread showsLOG wifi warn radio_args_invalid err=htmode must be one of: HE20, HE40+, HE40-, HE80, HE160, HT20, HT40+, HT40-, VHT20, VHT40+, VHT40-, VHT80, VHT160 method=set_channels. uci is unchanged.htmode = HE40+:uci show wireless.radio1hashtmode='HE40+';/var/run/hostapd-phy1.confhashe_oper_chwidth=0and no 40 MHzht_capab;- hostapd logs
DFS-CAC-START freq=5500 chan=100 sec_chan=0, width=0; iw devreportswidth: 20 MHz.
- On the box,
/lib/netifd/wireless/mac80211.shmatches htmode withcasepatterns such asHT40*|VHT40|VHT80|VHT160|HE40|HE80|HE160|EHT40|EHT80|EHT160(around lines 169, 246 and 749).HE40+doesn't match any of them. HE80works (verified).- VHT40± is inferred from the same script, not tested on hardware.
Impact
40 MHz operation isn't available for HE/VHT configs, and the fallback to 20 MHz is silent. That matters wherever 80 MHz is too wide, e.g. dense sites or DFS channels.
Suggested fix
- Accept
HE40andVHT40: OpenWrt chooses the secondary channel itself. - Either map
HE40±/VHT40±to those values, or reject them with a clear error. - Keep
HT40±. - Add validator tests.
Found while setting up the grand-pipeline Wi-Fi client test (jangala-dev/grand-pipeline#18).
- Lingua principale
- Lua
- Stelle
- 1
- Fork
- 0
- Merge medio
- 5g 15h
- PR unite (30g)
- 3
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di jangala-dev/devicecode-lua
-
enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 8/100
jangala-dev/devicecode-lua#339 ·
-
wired: comma-separated VLAN lists cause false missing-VLAN alertsForse di nuovo libera @rslater-cs l’ha presa 43 giorni fa e non c’è nessuna pull request aperta. Aperta
jangala-dev/devicecode-lua#333 · 2 assegnatari ·
-
Reduce network startup and reconnect delaysForse di nuovo libera @rslater-cs l’ha presa 43 giorni fa e non c’è nessuna pull request aperta. Aperta
jangala-dev/devicecode-lua#332 · 2 assegnatari ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
jangala-dev/devicecode-lua#330 · 1 commento ·
-
Track functional differences from devicecode v0.9.x and devicecode-lua v0.10.6 to v0.11.2Forse di nuovo libera @rslater-cs l’ha presa 49 giorni fa e non c’è nessuna pull request aperta. Aperta
jangala-dev/devicecode-lua#329 · 2 assegnatari ·
Tutte le issue di jangala-dev/devicecode-lua
Issue simili
-
Wrong step: Ashenvale, Wetlands & Stonetalon Mountains, step 49Forse già presa @b7216309-jpg l’ha presa oggi. Apertaguide has-pr
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
fitzforge/polestar#699 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Unfixed typos in script.luaAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
LuaLS/lua-language-server#3484 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
lewis6991/gitsigns.nvim#1593 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
latex3/pdf_structure#28 · 4 commenti ·
-
code health memtx mvcc
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno