If you want a clean tri-band setup on OpenWrt (2.4 GHz + 5 GHz + 6 GHz), this guide walks through a practical, beginner-friendly configuration for Wi‑Fi 6 and Wi‑Fi 7 on modern MediaTek hardware (e.g., MT7996). 🛜
You will end up with:
- 2.4 GHz (Wi‑Fi 6 / 802.11ax) SSID:
WiFi-OW - 5 GHz (Wi‑Fi 6 or Wi‑Fi 7 / 802.11ax/802.11be) SSID:
WiFi-OW - 6 GHz (Wi‑Fi 6E / Wi‑Fi 7 / 802.11ax/802.11be) SSID:
WiFi-OW-6G
Example password (change to your own): mF7q9Vt2rK6pX4nS 🔐
1) What “Wi‑Fi 6” vs “Wi‑Fi 7” means in OpenWrt
- Wi‑Fi 6 = 802.11ax (OpenWrt usually shows this as HE modes:
HE20,HE40,HE80,HE160). 📶 - Wi‑Fi 7 = 802.11be (OpenWrt shows this as EHT modes:
EHT80,EHT160, sometimesEHT320depending on driver + region + hardware). 🚀 - 6 GHz band is special: it has stricter regulatory requirements and, in many regions, additional rules for AP mode.
2) The most important prerequisite: correct country / regulatory domain
OpenWrt uses the regulatory domain (“country”) to decide which channels are legal and whether an AP is allowed to transmit.
How to check current regdomain
Run:
iw reg get
Look for lines like:
country US: DFS-FCCcountry CA: DFS-FCC
Why 6 GHz can show as “no IR” (NO-IR)
In Linux wireless/regulatory terms:
- NO-IR / no IR means no “Initiate Radiation” → the device is not allowed to start transmitting as an AP on that channel.
- When this happens on 6 GHz, hostapd logs often show:
Frequency .... not allowed for AP mode, flags: ... NO-IRPrimary frequency not allowed
That is the classic signature of “6 GHz exists, but AP mode is blocked by regulatory rules for this configuration.” 🧩
The “US vs CA” 6 GHz behavior (real-world pattern)
A configuration pattern that can occur on some OpenWrt + MT7996 builds is:
- With country=US, 6 GHz channels may appear as (no IR) and hostapd refuses AP mode on 6 GHz.
- With country=CA, the same hardware and channel plan may allow the 6 GHz AP to start successfully (e.g., channel 37 / 6135 MHz becomes usable).
This can happen due to differences in the regulatory database, driver assumptions, or which 6 GHz AP power mode is permitted/implemented.
Important note ⚠️: you should always set the country to your actual location to stay compliant. If changing from US to CA makes 6 GHz start, treat that as a troubleshooting signal (regdb/driver/AFC behavior) rather than a “final correct” configuration.
3) Configure all three radios in LuCI (GUI)
Open LuCI → Network → Wireless.
You should see three radios:
radio0→ 2.4 GHzradio1→ 5 GHzradio2→ 6 GHz
Step A — Set Country on every radio
For each radio:
- Click Edit on the radio (not the SSID).
- Set Country Code (example shown:
CAorUS). - Save.
Do this for radio0, radio1, and radio2. 🌍
Step B — Configure SSIDs
2.4 GHz (radio0)
- SSID:
WiFi-OW - Mode: Access Point
- Encryption: WPA2/WPA3 mixed (often shown as “WPA2-PSK/WPA3-SAE mixed”) ✅
- Password:
mF7q9Vt2rK6pX4nS
5 GHz (radio1)
- SSID:
WiFi-OW - Mode: Access Point
- Encryption: WPA2/WPA3 mixed ✅
- Password:
mF7q9Vt2rK6pX4nS
6 GHz (radio2)
- SSID:
WiFi-OW-6G - Mode: Access Point
- Encryption: WPA3-SAE only ✅ (6 GHz typically requires WPA3 + PMF)
- Password:
mF7q9Vt2rK6pX4nS - 802.11w / PMF: Required
Step C — Channel + Width recommendations
2.4 GHz
- Channel: 1 / 6 / 11 (choose a clean one)
- Width: 20 MHz
5 GHz
- Start with a “simple” non-DFS channel: 36–48 or 149–161
- Width: 80 MHz is a safe default
6 GHz
- Start with 80 or 160 MHz depending on stability
- Choose a channel you know is allowed for your regdomain
Save & Apply, then reload Wi‑Fi.
4) Configure via CLI (UCI) — copy/paste baseline
If you prefer CLI or want a reproducible config, this is a clean baseline that matches the SSIDs and security above.
# Country (set the same for all radios)
uci set wireless.radio0.country='CA'
uci set wireless.radio1.country='CA'
uci set wireless.radio2.country='CA'
# 2.4 GHz
uci set wireless.radio0.band='2g'
uci set wireless.radio0.channel='1'
uci set wireless.radio0.htmode='HE20'
uci set wireless.default_radio0.ssid='WiFi-OW'
uci set wireless.default_radio0.encryption='sae-mixed'
uci set wireless.default_radio0.key='mF7q9Vt2rK6pX4nS'
uci set wireless.default_radio0.ieee80211w='1'
# 5 GHz
uci set wireless.radio1.band='5g'
uci set wireless.radio1.channel='149'
uci set wireless.radio1.htmode='EHT80'
uci set wireless.default_radio1.ssid='WiFi-OW'
uci set wireless.default_radio1.encryption='sae-mixed'
uci set wireless.default_radio1.key='mF7q9Vt2rK6pX4nS'
uci set wireless.default_radio1.ieee80211w='1'
# 6 GHz
uci set wireless.radio2.band='6g'
uci set wireless.radio2.channel='37'
uci set wireless.radio2.htmode='EHT160'
uci set wireless.default_radio2.ssid='WiFi-OW-6G'
uci set wireless.default_radio2.encryption='sae'
uci set wireless.default_radio2.key='mF7q9Vt2rK6pX4nS'
uci set wireless.default_radio2.ieee80211w='2'
uci commit wireless
wifi reload
If the 6 GHz AP fails, do not guess—go straight to troubleshooting (next section). 🔎
5) Validate: confirm Wi‑Fi 6 / Wi‑Fi 7 is actually enabled
Check interfaces + channels
iw dev
You should see:
- 2.4 GHz
channel 1with SSIDWiFi-OW - 5 GHz
channel 149with SSIDWiFi-OW - 6 GHz
channel 37 (6135 MHz)with SSIDWiFi-OW-6G
Confirm hostapd generated EHT (Wi‑Fi 7) parameters
grep -E "ieee80211ax=|ieee80211be=|he_oper|eht_oper|he_6ghz_reg_pwr_type|op_class|channel=" /var/run/hostapd-phy0.2.conf
If you see:
ieee80211ax=1→ Wi‑Fi 6 enabledieee80211be=1→ Wi‑Fi 7 enabled
That means OpenWrt is attempting HE/EHT modes for that interface. ✅
6) Troubleshooting 6 GHz: “NO-IR”, “Primary frequency not allowed”, “Could not determine operating frequency”
When 6 GHz does not start, focus on these checks:
A) Confirm channels are not “no IR” on your build
iw phy phy0 info | grep -nE "5955|6115|6135|no IR|NO-IR|disabled"
If your 6 GHz channels show (no IR), AP mode may be blocked under the current regulatory domain.
B) Read hostapd logs for the exact reason
logread -e hostapd | tail -n 200
Typical failure lines:
Frequency ... not allowed for AP mode, flags: ... NO-IRPrimary frequency not allowed
C) Reduce complexity first
If you set 6 GHz to EHT160 and it fails, try:
- Channel width →
EHT80 - Or even
HE80(Wi‑Fi 6E) as a stability step
Then re-test.
D) Keep 6 GHz security strict
For 6 GHz:
- Use WPA3-SAE only
- PMF (802.11w) should be Required
Mixed WPA2/WPA3 on 6 GHz is often not valid.
7) Official OpenWrt documentation links (for deeper reading)
These are official OpenWrt docs pages that complement this OpenWrt WiFi 6 WiFi 7 Setup guide:
- Wi‑Fi basics (general concepts + LuCI): https://openwrt.org/docs/guide-user/network/wifi/basic 📘
- Wireless encryption / security concepts: https://openwrt.org/docs/guide-user/network/wifi/encryption 🔐
- UCI basics (how
/etc/config/*works): https://openwrt.org/docs/guide-user/base-system/uci ⚙️ - LuCI overview (web interface fundamentals): https://openwrt.org/docs/guide-user/luci/luci.essentials 🖥️
8) Practical recommendations for a “daily driver” setup
- Keep 2.4 GHz at 20 MHz width for stability. 🧱
- Keep 5 GHz on a non-DFS channel initially (149–161 is often easy if allowed). 📡
- Use 6 GHz as your high-performance SSID (
WiFi-OW-6G) for devices that truly support 6E/7. 🚀 - If you see “no IR” on 6 GHz, treat it as a regulatory/driver behavior issue: inspect
iw reg get,iw phy, and hostapd logs before changing anything else. 🔎
Closing
This OpenWrt WiFi 6 WiFi 7 Setup is intentionally minimal and reproducible. Once you confirm stability, you can optionally add:
- guest Wi‑Fi
- VLANs
- separate SSIDs per band
…but get the 3 radios stable first. ✅


Leave a Reply