OpenWrt WiFi 6 WiFi 7

OpenWrt WiFi 6 WiFi 7 Setup Guide

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, sometimes EHT320 depending 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-FCC
  • country 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-IR
    • Primary 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 GHz
  • radio1 → 5 GHz
  • radio2 → 6 GHz

Step A — Set Country on every radio

For each radio:

  1. Click Edit on the radio (not the SSID).
  2. Set Country Code (example shown: CA or US).
  3. 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 1 with SSID WiFi-OW
  • 5 GHz channel 149 with SSID WiFi-OW
  • 6 GHz channel 37 (6135 MHz) with SSID WiFi-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 enabled
  • ieee80211be=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-IR
  • Primary 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:


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

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.