ブログ

Armadillo-IoTゲートウェイG3/G3L:LTE接続設定済みのイメージファイルを作成する

at_takuma.fukuda
2020年11月20日 16時16分

この記事は、開発用のArmadillo-IoTゲートウェイG3/G3Lを1台以上お持ちであることが前提です。

はじめに

Armadillo-IoTゲートウェイG3/G3Lで開発した製品を量産する際に、
各個体のLTE接続設定をいかに効率よく行うかが課題となるかと思います。
それぞれ異なるSIMを使用する可能性がある場合は、1台1台設定を行う方が確実ですが、
全ての個体で設定情報が同一のSIMを使用する場合は、イメージファイルに設定情報を反映させて、
一括で書き込むことが出来れば、設定作業が不要になります。
この記事では、開発用の実機でLTEの接続設定を行い、
その設定情報をコピーしてイメージファイルに反映する方法をご案内します。

LTE接続設定の保存先

製品マニュアルに従ってNetworkManagerでLTE接続の設定を行うと、
以下に設定ファイルが保存されます。

/etc/NetworkManager/system-connections/

この時、気を付けなければならない事があります。
以下のように、設定ファイルにはUUIDが含まれています。

[armadillo ~]#vi /etc/NetworkManager/system-connections/gsm-ttyCommModem
[connection]
id=gsm-ttyCommModem
(中略)
UUID=xxxxxxxxxxxx
(後略)

このUUIDを含んだ状態で設定をコピーしても正常に動作しないので、
予め「UUID=」の行は削除しておいてください。

設定のコピー

この設定ファイルをコピーしてイメージファイルに反映させます。
イメージファイルに反映させるための方法としては、
dump_rootfsによってルートファイルシステムを丸ごとコピーする方法と、
x1-debian-builderを使って、コピーしたファイルを反映したルートファイルシステムをビルドする方法とがあります。
x1-debian-builderを使用する場合は、以下の2点に注意してください。
・アクセス権限を変更しておくこと
・ファイルコピー→NetworkManagerのインストールの順だと操作を誤るとファイルが上書きされてしまうので、
 fixupを編集して、パッケージのインストール実行後にファイルがコピーされるようにしておくこと

上記を踏まえて、以下のような手順でファイルのコピーとx1-debian-builderの設定を行います。
①ファイルをx1-debian-builderの「resources」フォルダにコピー

Armadillo-IoTゲートウェイG3の場合
x1-debian-builder-v2.2.0/aiotg3_resources/resources/gsm-ttyCommModem

②コピーしたファイルの権限を変更する

[ATDE ~]$ chmod 600 x1-debian-builder-v2.2.0/aiotg3_resources/resources/gsm-ttyCommModem

③resources/fixupを編集し、末尾に以下を追記する

cp /resources/gsm-ttyCommModem /etc/NetworkManager/system-connections/

後はマニュアルの手順通りにビルドを実行すると、LTE接続設定を反映したイメージファイルが作成されます。
イメージファイルの書き込み方法については、マニュアルをご参考ください。