Armadillo-IoT G3LでLTE通信を行っていると、電波状態や基地局、キャリアのサーバーなどの状態によってLTE回線が切断することがあります。
切断されたLTE回線を復帰する機能として、Armadillo-IoT G3Lにはデフォルトで、7.2.6.8. LTE再接続サービスがあります。
LTE再接続サービスは、数分単位で回線の接続状態を確認し、切断を検知すると再接続を試みるように動作します。
ただし、再接続時の電波状態や基地局、キャリアのサーバーの状態により、必ずしも数分で接続できるとは限りません。
もし、数時間レベルで回線が再接続できない場合、運用上の支障をきたします。
この場合、Armadillo再起動による、LTE接続の復帰が有効な場合があります。
具体的には、connection-recoverに記述されているパラメータを変更します。
・ファイルの場所: /etc/connection-recover/
・ファイル名: gsm-ttyACM0_connection-recover.conf
・変更パラメータ: FORCE_REBOOT
■ 変更前
#!/bin/bash PRODUCT_NAME="Armadillo-X1L","Armadillo-IoT Gateway G3 D2 Board","Atmark-Techno Armadillo-IoT Gateway G3 D2(AGX3031-E00Z) Board" PING_DEST_IP=8.8.8.8 DEVICE=ttyACM0 TYPE=gsm NETWORK_IF=usb1 FORCE_REBOOT=FALSE
■ 変更後
#!/bin/bash PRODUCT_NAME="Armadillo-X1L","Armadillo-IoT Gateway G3 D2 Board","Atmark-Techno Armadillo-IoT Gateway G3 D2(AGX3031-E00Z) Board" PING_DEST_IP=8.8.8.8 DEVICE=ttyACM0 TYPE=gsm NETWORK_IF=usb1 FORCE_REBOOT=TRUE
FORCE_REBOOT=FALSEをFORCE_REBOOT=TRUEに変更します。
これにより、LTE再接続サービスからArmadilloの再起動が可能となります。
■ 補足
接続状態の確認と、再接続、再起動の条件は、/usr/bin/connection-recoverdに記述されている以下のパラメータで設定できます。
・CHECK_INTERVAL_SEC: 接続状態(ping)の確認間隔
・FORCE_RECONNECT_PING_NG_COUNT: コネクション再接続間隔
・FORCE_REBOOT_PING_NG_COUNT: Armadillo再起動間隔
設定例
・CHECK_INTERVAL_SEC=120 ・FORCE_RECONNECT_PING_NG_COUNT=2 ・FORCE_REBOOT_PING_NG_COUNT=$(( $FORCE_RECONNECT_PING_NG_COUNT+2 ))
・接続状態(ping)の確認間隔を120秒に設定
・コネクション再接続間隔を120秒x2回に設定
・Armadillo再起動間隔を120秒x(2+2)回に設定
■ 注意
上記設定を行うと、Armadilloは設定した間隔で再起動しますので、製品開発時にはご注意下さい。