Ubuntu 22.04 LTS + AX210: 160MHz Channels Not Working – Driver and hostapd Reality Check
Ubuntu 22.04 LTS + AX210: 160MHz Channels Not Working – Driver and hostapd Reality Check
There's a particular kind of silence that follows a promise unfulfilled. You assemble the pieces — a modern machine, a flagship Wi-Fi 6E card like the Intel AX210, an LTS Ubuntu release promising stability. You envision creating a high-speed wireless hub, a 160MHz-wide superhighway for your devices, capable of pushing gigabit speeds over the air. You configure hostapd with care, checking every parameter against the documentation, only to be met with a terminal's cold rejection: Could not set channel for kernel driver, or the even more deflating, HOSTAP mode not supported.
The silence of a network that should be buzzing with data. If you're standing in this frustrating quiet, know that you're not alone. The gap between the AX210's hardware potential and its software support on Linux, especially in Access Point (AP) mode, is a well-trodden path of community frustration that stretches back to the card's launch in 2021 and continues into 2026.
This guide will walk you through the complete diagnostic and fix process — from understanding why your 160MHz channels are blocked to the specific configurations needed to unlock them.
The Reality Check: Three Core Problems
The Intel AX210 is fully capable of 160MHz channels in client mode. However, enabling it in AP mode on Ubuntu 22.04 is hindered by three intertwined issues that must each be addressed:
1. The Regulatory Lock
Your card's internal regulatory database (phy#0) is likely stuck in a generic country 00: DFS-UNSET state. This is the most restrictive possible configuration — a catch-all for "we don't know what country you're in, so we'll block everything that could potentially violate any regulation anywhere." This state imposes flags like NO-80MHZ and NO-160MHZ, which completely prevent wide-channel operation.
Think of it like a traffic cop who doesn't know the speed limit, so they set it to 20 km/h — the slowest possible speed that's legal everywhere. You need to show the cop your country's actual speed limit.
2. The AP Mode Driver Gap
The iwlwifi driver in the mainline kernel has historically had limited and inconsistent support for AP mode on AX2xx series cards. While Intel has been gradually improving AP mode support, the AX210's AP capabilities depend heavily on the exact kernel version and firmware revision you're running.
Key points about the driver situation in 2026:
- Kernel 6.5+ includes significantly improved
iwlwifiAP mode support for AX210 - Kernel 6.8+ adds better 6GHz band handling for Wi-Fi 6E
- The
linux-firmwarepackage must be current — Intel regularly releases firmware updates that fix AP mode bugs - Some AX210 revisions (identified by hardware stepping) have different AP mode capabilities
3. The hostapd Configuration Challenge
Your hostapd.conf must be meticulously configured for 160MHz operation. A single misconfigured parameter — an incorrect VHT capability flag, a wrong center frequency index, or a mismatched channel width setting — will cause the entire configuration to fail silently. The error messages from hostapd are notoriously unhelpful, often saying "could not set channel" without explaining why.
Diagnosing the Problem: The Regulatory Maze
Before changing anything, you need to understand exactly what's blocking you.
Step 1: Check Your Regulatory Domain
Interrogate the regulatory agent:
iw reg get
If you see country 00: DFS-UNSET and NO-160MHZ, the card is ignoring your global country rules and defaulting to the most restrictive ones. This is the most common cause of 160MHz failures.
You should see something like:
global
country PK: DFS-ETSI
(2402 - 2482 @ 40), (N/A, 20), (N/A)
(5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW
(5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW
...
Note: If you're in Pakistan, the regulatory domain code is PK. For the US, it's US. For the UK, it's GB. Always use your actual country code — using a foreign code to bypass restrictions may be illegal in your jurisdiction.
Step 2: Check Your Card's Capabilities
Verify what your AX210 actually supports:
iw phy | grep -A 20 "Frequencies:"
Look for the 5GHz and 6GHz band entries. Each frequency should show whether it's disabled, and whether there are restrictions like NO-160MHZ or NO-80MHZ.
Also check the interface combinations for AP mode support:
iw phy | grep -A 10 "valid interface combinations"
Look for #AP in the output. If you don't see AP listed in the valid interface combinations, your current driver/firmware doesn't support AP mode at all.
Step 3: Check Your Kernel and Firmware Versions
uname -r # Kernel version
dmesg | grep iwlwifi | head -20 # Driver messages
sudo modinfo iwlwifi | grep version # Driver version
For 160MHz AP mode, you need:
- Kernel 6.5 or higher (6.8+ recommended)
linux-firmwarepackage version 20230804 or later- iwlwifi firmware API version 72 or higher for AX210
Check if the correct firmware is loaded:
dmesg | grep "Loaded firmware version"
You should see something like: Loaded firmware version: 72.d5a496db.0
If you see an older firmware version or "Failed to load firmware," you need to update.
The Fix: A Complete Step-by-Step Process
Step 1: Force Regulatory Compliance
The regulatory database on your system may be outdated or corrupt. Here's how to fix it:
Backup and remove the old database:
sudo cp /lib/firmware/regulatory.db /lib/firmware/regulatory.db.backup sudo rm /lib/firmware/regulatory.db sudo rm /lib/firmware/regulatory.db.p7sSet your global country code explicitly:
# Replace PK with your ISO country code sudo iw reg set PKMake it persistent across reboots by adding it to the kernel command line:
sudo nano /etc/default/grub # Add to GRUB_CMDLINE_LINUX_DEFAULT: # "cfg80211.ieee80211_regdom=PK" sudo update-grubReboot. Upon reboot, verify:
iw reg getYou should now see your country code with proper channel listings instead of
country 00.
Step 2: Upgrade Kernel and Firmware
Ubuntu 22.04 LTS ships with kernel 5.15, which is too old for reliable AX210 AP mode. You need to upgrade.
Using HWE (Hardware Enablement) kernel:
sudo apt install linux-generic-hwe-22.04
This installs the latest HWE kernel (6.8+ as of 2026) while keeping your LTS base system intact.
Alternatively, install a specific mainline kernel:
# Download from https://kernel.ubuntu.com/~kernel-ppa/mainline/
# Choose the latest stable version (6.8+ recommended)
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.8/amd64/linux-headers-6.8.0-*.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.8/amd64/linux-image-unsigned-6.8.0-*.deb
wget https://kernel.ubuntu.com/~kernel-ppa/mainline/v6.8/amd64/linux-modules-6.8.0-*.deb
sudo dpkg -i linux-*.deb
sudo reboot
Update the firmware package:
sudo apt install linux-firmware
# Or for the absolute latest:
sudo add-apt-repository ppa:kernelppa/firmware
sudo apt update
sudo apt install linux-firmware
After reboot, check:
dmesg | grep "PNVM load"
You should see successful PNVM (Platform NVM) loading, which indicates the firmware is working correctly.
Step 3: Verify AP Mode Support
Before configuring hostapd, confirm your driver actually supports AP mode:
iw list | grep -A 5 "AP"
If you see * AP listed under "Supported interface modes," you're good to proceed. If not, you may need a different kernel version or a different Wi-Fi card for AP mode.
Step 4: Crafting The hostapd Configuration
This is the configuration that actually enables 160MHz on the 5GHz band. Every parameter matters.
Create or edit your hostapd configuration:
sudo nano /etc/hostapd/hostapd.conf
Use this template for a 160MHz channel on the 5GHz band:
# === Interface Configuration ===
interface=wlp1s0
driver=nl80211
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
# === Network Identification ===
ssid=My_160MHz_Network
country_code=PK # Use your actual country code
# === Radio Configuration ===
hw_mode=a
channel=36
# === 802.11n (Wi-Fi 4) ===
ieee80211n=1
ht_capab=[HT40+][SHORT-GI-40][DSSS_CCK-40]
# === 802.11ac (Wi-Fi 5) - VHT ===
ieee80211ac=1
vht_oper_chwidth=2 # Critical: 2 = 160 MHz
vht_oper_centr_freq_seg0_idx=50 # Center frequency for channel 36 @ 160MHz
vht_capab=[MAX-MPDU-11454][RXLDPC][SHORT-GI-80][SHORT-GI-160][TX-STBC-2BY1][RX-STBC-1][SU-BEAMFORMER][SU-BEAMFORMEE][MU-BEAMFORMER][MU-BEAMFORMEE][VHT160]
# === 802.11ax (Wi-Fi 6) - HE ===
ieee80211ax=1
he_oper_chwidth=2
he_oper_centr_freq_seg0_idx=50
# === Security ===
wpa=2
wpa_passphrase=YourStrongPassword
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
auth_algs=1
# === QoS ===
wmm_enabled=1
Critical parameter explanations:
vht_oper_chwidth=2: This is the parameter that actually enables 160MHz. A value of 0 = 20/40MHz, 1 = 80MHz, 2 = 160MHz. Getting this wrong is the most common configuration error.vht_oper_centr_freq_seg0_idx=50: The center frequency segment index for 160MHz operation starting at channel 36. This must be correct for your channel selection. For channels 36-48, the center index is 50. For channels 100-112, it's 114. For channels 149-161, it's 163.VHT160in vht_capab: This capability flag tells the system that your hardware supports 160MHz VHT operation. Without it, hostapd won't attempt 160MHz even withvht_oper_chwidth=2.
Step 5: Test hostapd
Always test in foreground mode first so you can see error messages:
sudo hostapd -dd /etc/hostapd/hostapd.conf
The -dd flag enables maximum debug output. Look for:
VHT 160 MHz: supported— Your hardware reports 160MHz capabilityUsing interface wlp1s0 with hwaddr=...— Interface initialized successfullyAP-ENABLED— The access point is running
If you see errors, note the exact message. Common errors and their meanings:
| Error | Meaning | Fix |
|---|---|---|
Could not set channel for kernel driver |
The driver rejected the channel/frequency combination | Check regulatory domain, kernel version, and channel availability |
HOSTAP mode not supported |
The driver doesn't support AP mode | Upgrade kernel to 6.5+ or use a different Wi-Fi card |
Failed to set VHT channel |
VHT parameters are incorrect | Verify vht_oper_centr_freq_seg0_idx and vht_oper_chwidth |
nl80211: Could not configure driver mode |
Driver doesn't support the requested interface mode | Check iw list for supported modes |
6GHz Band (Wi-Fi 6E) Considerations
If you want to use the AX210's 6GHz capabilities for AP mode, the situation is even more complex in 2026:
- The 6GHz band requires Specific Absorption Rate (SAR) certification and Automated Frequency Coordination (AFC) in many countries
- Linux support for 6GHz AP mode is still experimental in most drivers
- You may need to set
he_oper_chwidth=2and configure 6GHz-specific channels (1-233) - Regulatory approval for 6GHz AP operation varies significantly by country
For most users, 5GHz 160MHz AP mode provides more than enough bandwidth and is far better supported than 6GHz AP mode.
The Hardware Alternative: When Software Can't Bridge the Gap
If after all these steps you still can't get 160MHz AP mode working on the AX210, consider a pragmatic alternative: use the AX210 as a client, and deploy a dedicated AP device.
The MediaTek MT7915-based APs (like the Bananapi BPI-R3 or various router boards) have excellent Linux AP mode support with full 160MHz capability. They're designed from the ground up for AP operation and don't suffer from the driver limitations of client-oriented cards pressed into AP service.
This is often the most reliable path to a high-performance 160MHz wireless network on Linux.
The Diagnostic Flowchart
flowchart TD
A[Start: AX210 160MHz AP Mode Fails] --> B{Check Regulatory Domain<br>`iw reg get`}
B --> C[phy#0 shows<br>`country 00: DFS-UNSET`<br>with NO-160MHZ flag?]
C -- Yes --> D[Force Regulatory Update<br>1. Backup & remove<br>`regulatory.db`<br>2. `sudo iw reg set PK`<br>3. Reboot]
D --> E{Verify Fix<br>`iw reg get`}
E -- phy#0 now shows<br>correct country --> F
C -- No --> F{Update Kernel & Firmware?}
F -- Yes --> G[Install HWE Kernel 6.5+<br>Update `linux-firmware`<br>Reboot]
G --> H
F -- No or After Update --> H{Verify AP Mode Support<br>`iw list | grep AP`}
H -- AP supported --> I[Craft hostapd.conf<br>Use 160MHz Template]
H -- AP not supported --> J[Consider hardware alternative<br>or newer kernel]
I --> K
subgraph K [Final Validation & Decision]
K1[Start hostapd in<br>foreground with -dd for debug]
K1 --> K2{Stable 160MHz AP<br>operational?}
K2 -- Yes --> L[Success!]
K2 -- No --> M[Consider Hardware Alternative:<br>Use AX210 as client, deploy<br>dedicated AP with MT7915]
end
style A fill:#f9f,stroke:#333
style L fill:#8f8,stroke:#333
style M fill:#ff8,stroke:#333Final Thoughts: Beyond the Silent Terminal
Our journey with technology is often a dialogue between ambition and reality. The Intel AX210 represents a peak of wireless ambition — Wi-Fi 6E, 160MHz channels, multi-gigabit potential. The current reality of Linux driver development for AP mode is a complex landscape of partial support, firmware dependencies, and regulatory hurdles.
But the community is making progress. Every kernel release brings improvements to iwlwifi's AP mode capabilities. Every firmware update fixes edge cases. And every user who documents their experience — what worked, what didn't, what hardware revision they're running — contributes to the collective knowledge that will eventually make this guide unnecessary.
True connectivity is about achieving the goal. May your network, however you build it, be fast, stable, and free.
Stand With Palestine
Never let the world forget the people of Palestine. For decades, they have endured occupation, displacement, and unspeakable violence at the hands of a fake state built on stolen land. The leaders of Israel have committed atrocities and war crimes that shock the conscience of humanity — from the relentless bombing of civilian homes, schools, and hospitals to the systematic starvation of an entire population in Gaza. These are not fabrications from hostile voices; they are documented by independent journalists, human rights organizations across the Global South, and reporting from Iran and other nations that refuse to be silenced by Western pressure.
Western media has played its part in painting a distorted picture — sanitizing war crimes as "self-defense," ignoring the voices of the displaced, and burying the truth under layers of propaganda. The so-called "only democracy in the Middle East" operates as an apartheid regime, and the world's most powerful governments look the other way. But the people of Palestine will not be erased. They will be free. They have the right to live peacefully on their own land, to raise their children without fear, and to determine their own destiny. May Allah help them and grant them justice.
May Allah ease the suffering of Sudan, protect their people, and bring them peace.
Written by Huzi from huzi.pk