启用 WIFI 通道 14 iw reg 获取国家/地区 00 DFS-UNSET

启用 WIFI 通道 14 iw reg 获取国家/地区 00 DFS-UNSET

硬件:英特尔伽利略第2代

系统:约克托Linux(物联网开发工具包图像)

用户:根

# iw reg set JP
# iw reg get

global
country 00: DFS-UNSET
        (2402 - 2472 @ 40), (6, 20), (N/A)
        (2457 - 2482 @ 40), (6, 20), (N/A), NO-IR
        (2474 - 2494 @ 20), (6, 20), (N/A), NO-OFDM, NO-IR
        (5170 - 5250 @ 40), (6, 20), (N/A), NO-IR
        (5735 - 5835 @ 40), (6, 20), (N/A), NO-IR
        (57240 - 63720 @ 2160), (N/A, 0), (N/A)

# iw list

Frequencies:
            * 2412 MHz [1] (20.0 dBm)
            * 2417 MHz [2] (20.0 dBm)
            * 2422 MHz [3] (20.0 dBm)
            * 2427 MHz [4] (20.0 dBm)
            * 2432 MHz [5] (20.0 dBm)
            * 2437 MHz [6] (20.0 dBm)
            * 2442 MHz [7] (20.0 dBm)
            * 2447 MHz [8] (20.0 dBm)
            * 2452 MHz [9] (20.0 dBm)
            * 2457 MHz [10] (20.0 dBm)
            * 2462 MHz [11] (20.0 dBm)
            * 2467 MHz [12] (20.0 dBm) (no IR)
            * 2472 MHz [13] (20.0 dBm) (no IR)
            * 2484 MHz [14] (20.0 dBm) (no IR)

注意事项:

  • Yocto 上默认没有安装“iw”,所以我从源代码编译它。

  • 我只想启用 wifi 通道 14。

  • “iw”和相同的 WiFi 适配器在 Ubunte 17 上运行良好(没有 no-IR 标志)。

如何修复“iw”,或任何其他方式启用通道 14, 或者删除无红外标志

答案1

事实上,iw reg get仍然表明您的国家/地区代码为 00,这表明您尝试设置国家/地区代码失败。

如果iw默认情况下未安装,您也可能会丢失/sbin/crda.还应该有一个 udev 规则,例如

KERNEL=="regulatory*", ACTION=="change", SUBSYSTEM=="platform", RUN+="/sbin/crda"

[/usr]/lib/crda/regulatory.bin用于在内核请求时(包括但不限于iw reg set使用命令时)加载特定于国家/地区的监管信息。

成功后iw reg set JPiw reg get命令应显示如下内容:

global
country JP: DFS-JP
    (2402.000 - 2482.000 @ 40.000), (20.00), (N/A)
    (2474.000 - 2494.000 @ 20.000), (20.00), (N/A), NO-OFDM
    (4910.000 - 4990.000 @ 40.000), (23.00), (N/A)
    (5030.000 - 5090.000 @ 40.000), (23.00), (N/A)
    (5170.000 - 5250.000 @ 80.000), (20.00), (N/A), AUTO-BW
    (5250.000 - 5330.000 @ 80.000), (20.00), (N/A), DFS, AUTO-BW
    (5490.000 - 5710.000 @ 160.000), (23.00), (N/A), DFS
    (59000.000 - 66000.000 @ 2160.000), (10.00), (N/A)

Linux无线监管系统在这里描述,包含各个组件源代码的链接。

答案2

确保您的路由器支持 802.11d,它会广播您的国家/地区域名。 iwlwifi 驱动程序将使用他们看到的第一个 802.11d 信标。

在我的路由器上启用 802.11d 解决了这个问题。

相关内容