wifi関連のトラブルシューティング

ラズパイでwifiの国設定が異なる場合

wifiアクセスポイントを検索してもなぜかチャンネル1の他人の家のアクセスポイントしか見つからない。 スマホなどからの接続には問題がない。 またアクセスポイントの検索自体は(他人の家のアクセスポイントが見えているので)問題がない。

私の場合はwifiアダプタの国設定ができていないためだった。 iw reg get で国の設定が確認できる。 下記はイギリスになっていた。

$ iw reg get
global
country GB: DFS-ETSI
        (2400 - 2483 @ 40), (N/A, 20), (N/A)
        (5150 - 5250 @ 80), (N/A, 23), (N/A), NO-OUTDOOR, AUTO-BW
        (5250 - 5350 @ 80), (N/A, 20), (0 ms), NO-OUTDOOR, DFS, AUTO-BW
        (5470 - 5730 @ 160), (N/A, 26), (0 ms), DFS
        (5725 - 5850 @ 80), (N/A, 23), (N/A), NO-OUTDOOR
        (5925 - 6425 @ 160), (N/A, 23), (N/A), NO-OUTDOOR
        (57000 - 71000 @ 2160), (N/A, 40), (N/A)

phy#0
country 99: DFS-UNSET
        (2402 - 2482 @ 40), (6, 20), (N/A)
        (2474 - 2494 @ 20), (6, 20), (N/A)
        (5140 - 5360 @ 160), (6, 20), (N/A)
        (5460 - 5860 @ 160), (6, 20), (N/A)

wifiの国設定は sudo iw reg set JP などとすると設定できるようだが、ラズパイの場合、うまく行かない。

sudo iw reg set JP

一見、うまく設定できているように見えるがアクセスポイントは見つからず。

$ iw reg get
global
country JP: DFS-JP
        (2402 - 2482 @ 40), (N/A, 20), (N/A)
        (2474 - 2494 @ 20), (N/A, 20), (N/A), NO-OFDM
        (4910 - 4990 @ 40), (N/A, 23), (N/A)
        (5170 - 5250 @ 80), (N/A, 20), (N/A), AUTO-BW
        (5250 - 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW
        (5490 - 5710 @ 160), (N/A, 23), (0 ms), DFS
        (57000 - 66000 @ 2160), (N/A, 10), (N/A)

phy#0
country 99: DFS-UNSET
        (2402 - 2482 @ 40), (6, 20), (N/A)
        (2474 - 2494 @ 20), (6, 20), (N/A)
        (5140 - 5360 @ 160), (6, 20), (N/A)
        (5460 - 5860 @ 160), (6, 20), (N/A)

ラズパイの場合、

  1. sudo raspi-config
  2. ここで、Localisation Options > Change Wi-Fi Countryを選択して、必要な国を選ぶ。
  3. 再起動

この設定はSDカードではなく、筐体側に記録される。 例えば、既に設定済みの筐体であれば、SDカード指し直しただけでアクセスポイントが見つかるようになった。