本ブログではArmadilloが3G回線とLTE回線どちらに接続しているのか確認する方法を紹介します。
※Armadillo-IoT G3/G4のLTE搭載モデルが対象です
3G停波について
3G回線は下記日程で停波する事が決まっております。(2023年5月時点)
・NTTドコモ :2026年3月31日
・ソフトバンク:2024年1月31日
・KDDI :2022年3月31日(既に終了)
この3G停波に伴い、停波の期間までに旧バージョンのModemManagerをご使用の場合はアップデート
して頂く必要があります。アップデートが必要な理由は3G/LTEとLTEのみではコネクションシーケンスに
違いがあり、旧バージョンのModemManagerでは3G停波後にはLTEでも通信が出来なくなります。
■ModemManagerのバージョン情報は下記のアップデート通知を参照下さい。
※既に下記通知のバージョン以降であれば本件は問題有りません
アップデート通知:https://armadillo.atmark-techno.com/news/announce/g4g3/20230529
ModemManagerをアップデートする際、事前にLTE回線で通信している事を確認頂く事を推奨致します。
その理由は、仮にLTE回線の電波が著しく弱く接続できない場合、アップデート後に公衆網を使った通信が
一切出来なくなる可能性があります。
そこで、例として下記の様な方法でアップデート前にLTE回線に接続出来ている事を確認しておくと
安全に進める事が出来ると思います。
※アップデートはお客様にて十分にご評価の上、実施願います。
※必ずしも「3G回線でしか接続していない=LTE回線が接続できない」という訳ではありませんが、
その様な環境下にある機器の場合はアップデートの際にはご注意頂ければと思います。
公衆網の接続先(3G/LTE)の確認
mmcliコマンドで現在の接続先を確認する事が出来ます。
下記コマンドでで出力される”access tech”がLTEかUTMS(3G)で判断する事が出来ます。
現在のキャリアモジュールの接続先確認 # mmcli -m 0 | grep -i 'access tech'
また、現状は3Gであってもその後LTEで接続する可能性もある為、例えば下記の様なスクリプトを
一定期間crontabで実行する事で、3G回線にのみ接続しているのか、LTE回線でも接続しているのか
判断する材料として頂ければと思います。
以下はArmadillo-IoT G4で実施する例です。
※ここではmmcliコマンドを使用する為にArmadillo Base OS上で実行していますが、通常のアプリでは
crondはコンテナ内で実行する事を推奨します。
crondを有効化 # rc-update add crond # persist_file -p /etc/runlevels/default/crond スクリプト作成(以下は例) # cat check_wwan.sh #!/bin/sh lte=`mmcli -m 0 | grep -i 'access tech' | grep -i lte` utms=`mmcli -m 0 | grep -i 'access tech' | grep -i utms` date=`date "+%Y/%m/%d %H:%M:%S"` if [ -n "$lte" ]; then echo "$date :LTE" >> /var/app/volumes/wwan.txt elif [ -n "$utms" ]; then echo "$date :3G" >> /var/app/volumes/wwan.txt else echo "error" >> /var/app/volumes/wwan.txt fi 実行権限付与・動作確認 # chmod +x check_wwan.sh # persist_file check_wwan.sh # ./check_wwan.sh
《補足》
データを保存している/var/app/volumes/ディレクトリはeMMCに保存可能な領域です。
上記で作成した check_wwan.sh を 下記の様に crontab に登録します。
ここでは /root/check_wwan.sh を1時間毎に実行する様にしています。
# cat /etc/crontabs/root # do daily/weekly/monthly maintenance # min hour day month weekday command */15 * * * * run-parts /etc/periodic/hourly 0 * * * * /root/check_wwan.sh 0 2 * * * run-parts /etc/periodic/daily 0 3 * * 6 run-parts /etc/periodic/weekly 0 5 1 * * run-parts /etc/periodic/monthly crontabの設定をeMMCに保存 # persist_file /etc/crontabs/root crondを再起動 # rc-service crond restart
上記でLTEで通信可能であることが確認出来れば、アップデート後もLTE回線で通信出来ると思います。