Armadillo-IoT ゲートウェイ G3L
製品マニュアル

Debian GNU/Linux 12(bookworm)対応


目次

1. はじめに
1.1. 本書で扱うこと扱わないこと
1.1.1. 扱うこと
1.1.2. 扱わないこと
1.2. 本書で必要となる知識と想定する読者
1.3. ユーザー限定コンテンツ
1.4. 本書および関連ファイルのバージョンについて
1.5. 本書の構成
1.6. 表記について
1.6.1. フォント
1.6.2. コマンド入力例
1.6.3. アイコン
1.7. 謝辞
2. 注意事項
2.1. 安全に関する注意事項
2.2. 取扱い上の注意事項
2.3. 製品の保管について
2.4. ソフトウェア使用に関しての注意事項
2.5. 書込み禁止領域について
2.6. 電波障害について
2.7. 保証について
2.8. 輸出について
2.9. 商標について
2.10. 無線モジュールの安全規制について
3. 製品概要
3.1. 製品の特長
3.1.1. Armadilloとは
3.1.2. Armadillo-IoTゲートウェイG3Lとは
3.2. 製品ラインアップ
3.2.1. Armadillo-IoTゲートウェイG3L開発セット
3.2.2. Armadillo-IoTゲートウェイG3L量産用
3.3. 仕様
3.4. Armadillo-IoTゲートウェイG3Lの外観
3.5. ブロック図
3.6. ソフトウェア構成
4. Armadilloの電源を入れる前に
4.1. 準備するもの
4.2. 組み立て手順
4.2.1. 概要
4.2.2. 筐体の組み立て手順
4.2.3. 各種取付
4.3. 開発/動作確認環境の構築
4.3.1. ATDEセットアップ
4.3.1.1. VirtualBox のインストール
4.3.1.2. ATDEアーカイブの取得
4.3.1.3. ATDE のインポート
4.3.1.4. ATDE の起動
4.3.2. 取り外し可能デバイスの使用
4.3.3. コマンドライン端末(GNOME端末)の起動
4.3.4. VirtualBox Guest Additions の再インストール
4.3.5. 共有フォルダーの作成
4.3.6. シリアル通信ソフトウェア(minicom)の使用
4.4. インターフェースレイアウト
4.5. 接続方法
4.6. スライドスイッチの設定について
4.7. viエディタの使用方法
4.7.1. viの起動
4.7.2. 文字の入力
4.7.3. カーソルの移動
4.7.4. 文字の削除
4.7.5. 保存と終了
5. 起動と終了
5.1. 起動
5.2. ログイン
5.2.1. 新しいパスワードの準備
5.2.2. 初回ログインと新しいパスワードの設定
5.3. 時刻の設定
5.4. debianのユーザーを管理する
5.5. 終了方法
6. ソフトウェアの更新と初期化
6.1. ソフトウェアを最新の状態に更新する
6.1.1. ブートローダーイメージの更新
6.1.2. Linuxカーネルイメージの更新
6.1.3. DTBの更新
6.1.4. Debian GNU/Linux ルートファイルシステムの更新
6.1.4.1. Debian パッケージのアップデート
6.1.4.2. ルートファイルシステムの書き換え
6.2. ソフトウェアを初期化する
6.2.1. インストールディスクイメージの作成
6.2.2. インストールディスクの作成
6.2.3. インストールの実行
7. 動作確認方法
7.1. 動作確認を行う前に
7.2. ネットワーク
7.2.1. 接続可能なネットワーク
7.2.2. ネットワークの設定方法
7.2.2.1. nmcli について
7.2.3. nmcliの基本的な使い方
7.2.3.1. コネクションの一覧
7.2.3.2. コネクションの有効化・無効化
7.2.3.3. コネクションの作成
7.2.3.4. コネクションの削除
7.2.3.5. コネクションを修正する
7.2.3.6. 固定IPアドレスに設定する
7.2.3.7. DNSサーバーを指定する
7.2.3.8. DHCPに設定する
7.2.3.9. コネクションの修正を反映する
7.2.3.10. デバイスの一覧
7.2.3.11. デバイスの接続
7.2.3.12. デバイスの切断
7.2.4. 有線LAN
7.2.4.1. 有線LANインターフェース(eth0)のコネクションの作成
7.2.4.2. 有線LANのネットワーク設定を変更する
7.2.4.3. 有線LANの接続を確認する
7.2.5. 無線LAN
7.2.5.1. 無線LANアクセスポイントに接続する
7.2.5.2. 無線LANのネットワーク設定を変更する
7.2.5.3. 無線LANの接続を確認する
7.2.6. LTE
7.2.6.1. LTE データ通信設定を行う前に
7.2.6.2. LTEのコネクションを作成する
7.2.6.3. データ接続状態の確認
7.2.6.4. LTEで通信確認をする
7.2.6.5. LTEのデータ通信を終了する
7.2.6.6. LTEのデータ接続を再開する
7.2.6.7. LTEのコネクション設定を編集する場合の注意事項
7.2.6.8. LTE再接続サービス
7.2.6.9. LTEでデータ通信をする場合のネットワーク構成について
7.2.6.10. ModemManager について
7.2.7. NetworkManagerによる設定例
7.2.7.1. ネットワーク設定手順
7.2.8. ファイアーウォール
7.2.9. ネットワークアプリケーション
7.2.9.1. HTTPサーバー
7.2.10. Armadilloにファイルを転送する
7.2.10.1. scp コマンドを使って転送する
7.2.11. Wi-SUN
7.2.11.1. 設定情報を取得する
7.3. ストレージ
7.3.1. ストレージの使用方法
7.3.2. ストレージのパーティション変更とフォーマット
7.4. LED
7.4.1. 初期出荷状態のLEDの動作
7.4.2. LEDを点灯/消灯する
7.4.3. トリガを使用する
7.5. RTC
7.5.1. RTCに時刻を設定する
7.6. ユーザースイッチ
7.6.1. イベントを確認する
7.7. ADコンバーター
7.7.1. 電圧を取得する
7.7.2. 電源電圧を監視する
7.8. RS422/RS485
7.8.1. RS422/RS485の通信設定を変更する
8. Linuxカーネル仕様
8.1. デフォルトコンフィギュレーション
8.2. デフォルト起動オプション
8.3. Linuxドライバ一覧
8.3.1. Armadillo-IoT ゲートウェイG3L
8.3.2. SPIフラッシュメモリ
8.3.3. UART
8.3.4. Ethernet
8.3.5. LTE
8.3.6. WLAN
8.3.7. BT
8.3.8. SDホスト
8.3.9. USBホスト
8.3.10. リアルタイムクロック
8.3.11. 温度センサー
8.3.12. ADコンバーター
8.3.13. LED
8.3.14. ユーザースイッチ
8.3.15. I2C
8.3.16. SPI
8.3.17. ウォッチドッグタイマー
8.3.18. パワーマネジメント
9. Debian ユーザーランド仕様
9.1. Debian ユーザーランド
9.2. パッケージ管理
10. ブートローダー仕様
10.1. ブートローダー起動モード
10.2. ブートローダーの機能
10.2.1. Linuxカーネルイメージとdevice tree blobの指定方法
10.2.2. ルートファイルシステムの指定方法
10.2.3. 環境変数の保存
10.2.4. Linuxカーネルの起動オプション
10.2.4.1. 代表的なLinuxカーネル起動オプション
10.2.4.2. Linuxカーネル起動オプションの設定方法
11. ビルド手順
11.1. ブートローダーをビルドする
11.2. Linuxカーネルをビルドする
11.3. Debian GNU/Linux ルートファイルシステムをビルドする
11.3.1. 出荷状態のルートファイルシステムアーカイブを構築する
11.3.2. カスタマイズされたルートファイルシステムアーカイブを構築する
11.3.2.1. ファイル/ディレクトリを追加する
11.3.2.2. パッケージを変更する
12. 開発の基本的な流れ
12.1. 軽量スクリプト言語によるセンサーデータの送信例(Ruby)
12.1.1. テスト用サーバーの実装
12.1.2. テスト用サーバーの動作確認
12.2. クライアントの実装
12.3. Armadillo-IoT G3Lへのファイルの転送
12.4. クライアントの実行
12.5. C言語による開発環境
12.5.1. 開発環境の準備
13. SMSを利用する
13.1. 初期設定
13.2. SMSを送信する
13.3. SMSを受信する
13.4. SMSリストを表示する
13.5. SMSの内容を表示する
13.6. SMSを削除する
13.7. SMSを他のストレージに移動する
14. i.MX 7Dualの電源制御
14.1. i.MX 7Dual 自身による制御
14.2. ユーザースイッチ(SW2)の操作による制御
15. SDブートの活用
15.1. ブートディスクの作成
15.2. ルートファイルシステムの構築
15.2.1. Debian GNU/Linuxのルートファイルシステムを構築する
15.3. LinuxカーネルイメージとDTBの配置
15.4. SDブートの実行
16. 電気的仕様
16.1. 絶対最大定格
16.2. 推奨動作条件
16.3. 入出力インターフェースの電気的仕様
17. インターフェース仕様
17.1. インターフェースレイアウト
17.2. メインユニットCON2 LANインターフェース
17.3. メインユニットCON4 シリアルインターフェース
17.4. メインユニットCON5 デバッグシリアルインターフェース
17.5. メインユニットCON8 電源入力インターフェース1
17.6. メインユニットCON9 RTCバックアップインターフェース
17.7. メインユニットCON10 電源入力インターフェース2
17.8. メインユニットCON11 USBインターフェース
17.9. メインユニットCON12 microSDインターフェース
17.10. メインユニットCON13 アンテナインターフェース3
17.11. メインユニットCON14 アンテナインターフェース4
17.12. メインユニットCON15 アンテナインターフェース1
17.13. メインユニットCON16 アンテナインターフェース2
17.14. メインユニットSW2 ユーザースイッチ
17.15. メインユニットJP1 起動デバイス設定ジャンパ
17.16. サブユニットCON2 Wi-SUNモジュールインターフェース
17.17. サブユニットCON4 LTEアンテナインターフェース1
17.18. サブユニットCON5 LTEアンテナインターフェース2
17.19. サブユニットCON6 microSIMインターフェース
17.20. サブユニットCON8 WLANアンテナインターフェース1
17.21. サブユニットCON9 WLANアンテナインターフェース2
17.22. サブユニットLED3 ユーザーLED3
17.23. サブユニットLED4 ユーザーLED4
17.24. サブユニットLED5 ユーザーLED5
17.25. サブユニットSP1 Wi-SUNモジュールスタッド
17.26. サブユニットSP2 Wi-SUNモジュールスタッド
18. 筐体形状/寸法図
19. オプション品
19.1. USBシリアル変換アダプタ
19.2. 3G/LTE用 外付けアンテナセット 03
19.2.1. 概要
19.2.2. 組み立て
19.2.3. 形状図
19.3. 無線LAN用 基板アンテナ 06
19.3.1. 概要
19.3.2. 組み立て
19.3.3. 形状図
19.4. Wi-SUNモジュール BP35A1
19.4.1. 概要
19.4.2. 組み立て
19.5. 920MHz帯 基板アンテナ 03
19.5.1. 概要
19.5.2. 組み立て
19.5.3. 形状図
19.6. 920MHz帯 外付けアンテナセット 04
19.6.1. 概要
19.6.2. 組み立て
19.6.3. 形状図
20. Howto
20.1. イメージをカスタマイズする
20.2. dumprootfs を用いた Debian GNU/Linux ルートファイルシステムアーカイブの構築
20.3. ルートファイルシステムへの書き込みと電源断からの保護機能
20.3.1. 保護機能の使用方法
20.3.2. 保護機能の無効化方法
20.3.3. 保護機能を使用する上での注意事項
20.4. RS422/RS485 シリアルポートで通信を行なう
20.5. WL1837MODモジュールを使って2.4GHz帯で通信する使用例
20.5.1. 「BVMCN1101AA」の信号を受信する
20.5.2. 「CC2650」を操作する
20.6. sshでArmadillo-IoT G3Lに接続する
20.7. RTCのデバイスファイル名を変更する
20.8. LTE のネットワークデバイス名に ttyACM0 を利用する
21. ユーザー登録
21.1. 購入製品登録
21.1.1. 正規認証ファイルを取り出す手順

図目次

2.1. LTEモジュール: ELS31-J 認証マーク
2.2. WLAN+BTコンボモジュール: WL1837MOD 認証マーク
2.3. Wi-SUNモジュール: BP35A1 認証マーク
3.1. Armadillo-IoTゲートウェイG3Lの外観
3.2. Armadillo-IoTゲートウェイG3Lの各部名称
3.3. Armadillo-IoT ゲートウェイ G3L ブロック図
4.1. 筐体の構成
4.2. ブラケットの爪とケーストップ内側の突起
4.3. ケーストップ配置
4.4. ケーストップはめ込み
4.5. ケーストップかみ合わせ確認
4.6. ケーストップのネジ止め
4.7. 各種取付
4.8. ATDE にデバイスを接続する
4.9. GNOME端末の起動
4.10. GNOME端末のウィンドウ
4.11. 共有フォルダー設定を開く
4.12. 共有フォルダー設定
4.13. 共有フォルダーの追加
4.14. 「ファイル」に表示される共有フォルダー
4.15. minicom設定方法
4.16. minicom起動方法
4.17. minicom終了確認
4.18. Armadillo-IoT メインユニット インターフェースレイアウト(A面)
4.19. Armadillo-IoT メインユニット インターフェースレイアウト(B面)
4.20. Armadillo-IoT サブユニット インターフェースレイアウト(A面)
4.21. Armadillo-IoT サブユニット インターフェースレイアウト(B面)
4.22. Armadillo-IoTゲートウェイG3Lの接続例
4.23. 挿抜角度
4.24. スライドスイッチの設定
4.25. viの起動
4.26. 入力モードに移行するコマンドの説明
4.27. 文字を削除するコマンドの説明
5.1. 電源投入直後のログ
5.2. 起動ログ
5.3. システムクロックを設定
5.4. 終了方法
6.1. Debian パッケージのアップデート
7.1. nmcli のコマンド書式
7.2. コネクションの一覧
7.3. コネクションの有効化
7.4. コネクションの有効化の例
7.5. コネクションの無効化
7.6. コネクションの作成
7.7. コネクションの削除
7.8. 固定IPアドレス設定
7.9. DNSサーバーの指定
7.10. DHCP設定
7.11. コネクションの修正の反映
7.12. デバイスの一覧
7.13. デバイスの接続
7.14. デバイスの接続例
7.15. デバイスの切断
7.16. 有線LANインターフェース(eth0)のコネクションを作成
7.17. 有線LANのPING確認
7.18. 無線LANアクセスポイントに接続する
7.19. 無線LANのコネクションが作成された状態
7.20. 無線LANのPING確認
7.21. microSIM
7.22. microSIMの取り付け
7.23. LTEのコネクションの作成
7.24. PAP 認証が有効な LTE コネクションの作成
7.25. ユーザー名とパスワードが不要な LTE コネクションの作成
7.26. nmcli device コマンドでの接続状態の確認
7.27. LTEのPING確認
7.28. データ通信の終了
7.29. データ通信の開始
7.30. nmcli connection modifyコマンドでLTEのパスフレーズを設定する
7.31. LTE再接続サービスの状態確認
7.32. LTE再接続サービスの停止
7.33. LTE再接続サービスの開始
7.34. LTEでデータ通信をする場合のネットワーク構成
7.35. 認識されているモデムの一覧の取得
7.36. モデムの情報を取得する
7.37. microSIMの情報を取得する
7.38. 回線情報を取得する
7.39. ネットワーク構成図
7.40. iptables
7.41. lighttpdのトップページをコピー
7.42. Armadilloトップページ
7.43. mountコマンド書式
7.44. ストレージのマウント
7.45. ストレージのアンマウント
7.46. fdiskコマンドによるパーティション変更
7.47. EXT4ファイルシステムの構築
7.48. ユーザーLEDの位置
7.49. LEDを点灯させる
7.50. LEDを消灯させる
7.51. LEDの状態を表示する
7.52. LEDのトリガにtimerを指定する
7.53. LEDのトリガを表示する
7.54. ハードウェアクロックを設定
7.55. ユーザースイッチ: イベントの確認
7.56. ADコンバータへの入力電圧の計算式
7.57. ADコンバーターへの入力電圧を取得する
7.58. 電源電圧の計算式
7.59. vintriggerコマンドのヘルプ
7.60. vintriggerコマンド例
10.1. U-Bootコマンドのヘルプを表示
10.2. eMMCのパーティション1に保存されたLinuxカーネルイメージから起動する
10.3. eMMCのパーティション2に保存されたルートファイルシステムを指定する
10.4. 全ての環境変数をデフォルト値に戻す
10.5. 利用可能なメモリ量を384Mにする
11.1. 出荷状態のルートファイルシステムアーカイブを構築する手順
11.2. 誤ったパッケージ名を指定した場合に起きるエラーメッセージ
12.1. ruby と sinatra のインストール
12.2. テスト用サーバー (server.rb)
12.3. IPアドレスの確認 (ipコマンド)
12.4. curl によるテストデータの送信
12.5. ATDE におけるテストデータの受信表示
12.6. 温度送信クライアント(client.rb)
12.7. Armadillo-IoT G3L へのSSHサーバーのインストール
12.8. ATDE から Armadillo-IoT G3L への client.rb の転送
12.9. クライアントの実行方法
12.10. ATDE における温度データの受信表示
12.11. ツールチェーンのインストール
12.12. 開発用パッケージのインストールの例 (libsslの場合)
13.1. 言語設定
13.2. SMSの作成
13.3. SMS番号の確認
13.4. SMSの送信
13.5. SMSの一覧の表示
13.6. SMSの内容を表示
13.7. SMSの削除
13.8. SIMのストレージにSMSを移動
13.9. LTEモジュールの内蔵ストレージにSMSを移動
14.1. poweroffコマンドによる電源OFF
15.1. 自動マウントされたmicroSDカードのアンマウント
15.2. SDブート時の起動ログ
15.3. ログイン後のdfコマンド実行結果
17.1. Armadillo-IoT メインユニット インターフェースレイアウト(A面)
17.2. Armadillo-IoT メインユニット インターフェースレイアウト(B面)
17.3. Armadillo-IoT サブユニット インターフェースレイアウト(A面)
17.4. Armadillo-IoT サブユニット インターフェースレイアウト(B面)
17.5. LANコネクタLED配置
17.6. 電線の先端加工
17.7. 棒端子のサイズ
17.8. 挿抜角度
17.9. ACアダプタの極性マーク
17.10. カード検出スイッチ
18.1. 筐体形状図
19.1. USBシリアル変換アダプタの配線
19.2. LTE用外付けアンテナ形状
19.3. 無線LAN用基板アンテナ形状
19.4. ケーストップ取り外し
19.5. サブユニット取り外し
19.6. Wi-SUNモジュール取り付け
19.7. Wi-SUNモジュールネジ止め
19.8. アンテナパネル取り付け
19.9. 基板アンテナ取り付け
19.10. アンテナケーブルの引き抜き方法
19.11. アンテナ形状
19.12. メインユニットへアンテナケーブル取り付け
19.13. Wi-SUNモジュールへアンテナケーブル取り付け
19.14. アンテナケーブルの引き抜き方法
19.15. アンテナ形状
19.16. アンテナケーブル形状

表目次

1.1. 使用しているフォント
1.2. 表示プロンプトと実行環境の関係
1.3. コマンド入力例での省略表記
2.1. 推奨温湿度環境について
2.2. LTEモジュール: ELS31-J 適合証明情報
2.3. WLAN+BTコンボモジュール: WL1837MOD 適合証明情報
2.4. Wi-SUNモジュール: BP35A1 適合証明情報
2.5. WL1837MOD 各国電波法規制への対応情報
3.1. Armadillo-IoT ゲートウェイ G3L ラインアップ
3.2. Armadillo-IoTゲートウェイG3L開発セットのセット内容
3.3. 仕様
3.4. 各部名称と機能
3.5. Armadillo-IoTで利用可能なソフトウェア
3.6. eMMC メモリマップ
4.1. ユーザー名とパスワード
4.2. 動作確認に使用する取り外し可能デバイス
4.3. シリアル通信設定
4.4. Armadillo-IoT メインユニット インターフェース内容
4.5. Armadillo-IoT サブユニット インターフェース内容
4.6. 入力モードに移行するコマンド
4.7. カーソルの移動コマンド
4.8. 文字の削除コマンド
4.9. 保存・終了コマンド
5.1. パスワードに設定可能な値
5.2. 時刻フォーマットのフィールド
6.1. ソフトウェアと書き込み先の対応
6.2. インストールディスク作成に使用するイメージファイル
6.3. イメージファイルと引数の対応
6.4. インストールの進捗状況とユーザーLEDの状態
7.1. ネットワークとネットワークデバイス
7.2. 固定IPアドレス設定例
7.3. APN情報設定例
7.4. nmcli device コマンドで取得可能な代表的なstatus
7.5. 再接続サービス設定パラメータ
7.6. ネットワークのアドレス情報
7.7. デバイスの状態をdisconnectedにする方法
7.8. ストレージデバイス
7.9. LEDクラスディレクトリとLEDの対応
7.10. 初期出荷状態のLEDの動作
7.11. triggerの種類
7.12. インプットデバイスファイルとイベントコード
7.13. 入力電圧の算出に必要なファイル
7.14. シリアルポートインターフェースとTTYデバイスファイル
7.15. RS485設定と初期値
7.16. Linuxカーネル起動オプションからのRS485設定
8.1. Linuxカーネル主要設定
8.2. Linuxカーネルのデフォルト起動オプション
8.3. UARTの接続先
8.4. SDホストの接続先
8.5. USBインターフェースの接続先
8.6. キーコード
8.7. I2Cデバイス
8.8. 対応するパワーマネジメント状態
8.9. 起床要因として利用可能なデバイス
10.1. ブートローダー起動モード
10.2. 保守モード 有用なコマンド一覧
10.3. mmcdev の設定値と起動デバイス
10.4. Linuxカーネルの起動オプションの一例
15.1. ブートディスクの作成に使用するファイル
15.2. ブートディスクの構成例
15.3. ルートファイルシステムの構築に使用するファイル
15.4. ブートディスクの作成に使用するファイル
15.5. ブートローダーがLinuxカーネルを検出可能な条件
16.1. 絶対最大定格
16.2. 推奨動作条件
16.3. 入出力インターフェース電源の電気的仕様
17.1. Armadillo-IoT メインユニット インターフェース一覧
17.2. Armadillo-IoT サブユニット インターフェース一覧
17.3. メインユニットCON2 信号配列
17.4. LANコネクタLED
17.5. メインユニットCON4 信号配列
17.6. 端子台に接続可能な電線
17.7. メインユニットCON5 信号配列
17.8. メインユニットCON8 信号配列
17.9. メインユニットCON9 信号配列
17.10. メインユニットCON10 信号配列
17.11. メインユニットCON11 信号配列
17.12. メインユニットCON12 信号配列
17.13. ユーザースイッチSW2の接続
17.14. メインユニットJP1 信号配列
17.15. ジャンパの機能
17.16. サブユニットCON2 信号配列
17.17. サブユニットCON6 信号配列
17.18. ユーザーLED3の接続
17.19. ユーザーLED4の接続
17.20. ユーザーLED5の接続
19.1. Armadillo-IoT関連のオプション品