✈️
Jetson Orin Nanoで起動時にwifi接続
背景
Jetson Orin Nanoの環境構築をする際、起動時にステルスSSIDに接続する様にしてみました
環境
項目 | バージョン |
---|---|
OS | Ubuntu 20.04(Jetpack5.1.3) |
手順
1. Wi-Fiの利用設定
まずはwifiをONにします
# Wi-Fiの状況確認 利用可能な場合、`enabled`が表示される
sudo nmcli radio wifi
# Wi-FiのON
sudo nmcli radio wifi on
nmcliを使って、wifiの接続情報を作成します
# <接続名>(任意)、wifiルータの<ssid>・<接続方式>(wpa-psk 等)・<password> を事前に確認
sudo nmcli c add type wifi con-name '<接続名>' ifname 'wlan0' ssid '<ssid>'
sudo nmcli con modify '<接続名>' wifi-sec.key-mgmt <接続方式>
sudo nmcli con modify '<接続名>' wifi-sec.psk '<password>'
sudo nmcli con modify '<接続名>' connection.autoconnect yes
IPを固定化したかったので、追加で設定します
sudo nmcli con modify '<接続名>' ipv4.addresses 192.168.xxx.xxx/24
sudo nmcli con modify '<接続名>' ipv4.gateway 192.168.xxx.1
sudo nmcli con modify '<接続名>' ipv4.method manual
ここまででwifiの接続設定は完了です
設定内容は、以下のコマンドで確認する事が出来ます
sudo cat /etc/NetworkManager/system-connections/<接続名>.nmconnection
以下のコマンドでwifiに接続します
sudo nmcli con up '<接続名>'
接続が出来ていることを ip コマンドで確認します
ip a
> 4: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group
> default qlen 1000
> link/ether
> altname wlP1p1s0
> inet 192.168.xxx.xx/24 brd 192.168.xxx.255 scope global wlan0
2. 起動時のwifi再接続サービスを作成
シークレットSSIDの場合、自動的にwifiに接続してくれません
wifiに接続するコマンドを起動時に実行するサービスを作成します
/etc/systemd/system/nmcli-up.service
ファイルを以下の内容で作成します
/etc/systemd/system/nmcli-up.service
[Unit]
Description=Run nmcli connection up at startup
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
ExecStart=nmcli connection up '<接続名>'
[Install]
WantedBy=multi-user.target
サービスの有効化と起動をすると、Jetsonが再起動した場合に自動でシークレットSSIDに接続する様になります
sudo systemctl enable nmcli-up.service
sudo systemctl start nmcli-up.service
Discussion