Armadillo-610
製品マニュアル

Armadillo Base OS 対応


目次

1. はじめに
1.1. 本書について
1.1.1. 本書で扱うこと
1.1.2. 本書で扱わないこと
1.1.3. 本書で必要となる知識と想定する読者
1.1.4. 本書の構成
1.1.5. フォント
1.1.6. コマンド入力例
1.1.7. アイコン
1.1.8. ユーザー限定コンテンツ
1.1.9. 本書および関連ファイルのバージョンについて
1.2. 注意事項
1.2.1. 安全に関する注意事項
1.2.2. 取扱い上の注意事項
1.2.3. 製品の保管について
1.2.4. ソフトウェア使用に関しての注意事項
1.2.5. 電波障害について
1.2.6. 保証について
1.2.7. 輸出について
1.2.8. 商標について
1.3. 謝辞
2. 製品概要
2.1. 製品の特長
2.1.1. Armadilloとは
2.1.2. Armadillo-610とは
2.1.3. Armadillo Base OSとは
2.1.4. Armadillo Twin とは
2.2. 製品ラインアップ
2.2.1. Armadillo-610開発セット
2.2.2. Armadillo-610量産ボード
2.3. インターフェースレイアウト
2.3.1. Armadillo-610 インターフェースレイアウト
2.3.2. Armadillo-610 拡張ボード インターフェースレイアウト
2.4. ブロック図
2.5. 使用可能なストレージデバイス
2.6. ストレージデバイスのパーティション構成
2.7. ソフトウェアのライセンス
3. 開発編
3.1. 開発の準備
3.1.1. 準備するもの
3.1.2. 仮想環境のセットアップ
3.1.3. VSCodeのセットアップ
3.1.4. Armadillo の初期化と ABOS のアップデート
3.1.5. Armadillo に初期設定をインストールする
3.1.6. Python アプリケーションで動作確認する
3.1.7. シリアルコンソールを使用する
3.1.8. ユーザー登録
3.2. アプリケーション開発の流れ
3.3. 開発前に知っておくべき Armadillo Base OS の機能・特徴
3.3.1. 一般的な Linux OS 搭載組み込み機器との違い
3.3.2. Armadillo Base OS 搭載機器のソフトウェア開発手法
3.3.3. アップデート機能について
3.3.4. ファイルの取り扱いについて
3.3.5. インストールディスクについて
3.4. ハードウェアの設計
3.4.1. 信頼性試験データについて
3.4.2. 放射ノイズ
3.4.3. ESD/雷サージ
3.4.4. 放熱
3.4.5. 周辺装置との接続
3.4.6. 拡張ボードの設計
3.4.7. 電気的仕様
3.4.8. 形状図
3.4.9. オプション品
3.5. Device Treeをカスタマイズする
3.5.1. Linux カーネルソースコードの取得
3.5.2. at-dtweb のインストール
3.5.3. at-dtweb の起動
3.5.4. Device Tree をカスタマイズ
3.5.5. DT overlay によるカスタマイズ
3.6. インターフェースの使用方法とデバイスの接続方法
3.6.1. SDカードを使用する
3.6.2. Ethernet を使用する
3.6.3. UART を使用する
3.6.4. USB デバイスを使用する
3.6.5. 音声出力を行う
3.6.6. GPIO を制御する
3.6.7. I2C デバイスを使用する
3.6.8. SPI デバイスを使用する
3.6.9. CAN デバイスを使用する
3.6.10. PWM を使用する
3.6.11. JTAG デバッガを使用する
3.6.12. LCD を使用する
3.6.13. ユーザースイッチを使用する
3.6.14. LED を使用する
3.6.15. RTC を使用する
3.6.16. BT デバイスを使用する
3.6.17. Wi-SUN デバイスを扱う
3.6.18. EnOcean デバイスを扱う
3.6.19. Thread デバイスを扱う
3.7. ソフトウェアの設計
3.7.1. 開発者が開発するもの、開発しなくていいもの
3.7.2. ユーザーアプリケーションの設計
3.7.3. ログの設計
3.7.4. ウォッチドッグタイマー
3.7.5. コンテナに Armadillo の情報を渡す方法
3.8. ネットワーク設定
3.8.1. ABOS Web とは
3.8.2. ABOS Web へのアクセス
3.8.3. ABOS Web のパスワード登録
3.8.4. ABOS Web のパスワード変更
3.8.5. ABOS Web の設定操作
3.8.6. ログアウト
3.8.7. WWAN設定
3.8.8. WLAN 設定
3.8.9. 各接続設定(各ネットワークインターフェースの設定)
3.8.10. DHCPサーバー設定
3.8.11. NAT設定
3.8.12. VPN設定
3.8.13. 状態一覧
3.9. ABOS Web をカスタマイズする
3.10. Network Time Protocol (NTP, ネットワーク・タイム・プロトコル) の設定
3.11. Armadillo Twin を体験する
3.12. ABOSDEによるアプリケーションの開発
3.12.1. ABOSDEの対応言語
3.12.2. 参照する開発手順の章の選択
3.13. CUI アプリケーションの開発
3.13.1. CUI アプリケーション開発の流れ
3.13.2. ATDE 上でのセットアップ
3.13.3. アプリケーション開発
3.13.4. コンテナのディストリビューション
3.13.5. Armadillo に転送するディレクトリ及びファイル
3.13.6. コンテナ内のファイル一覧表示
3.13.7. Armadillo 上でのセットアップ
3.13.8. リリース版のビルド
3.13.9. 製品への書き込み
3.13.10. Armadillo 上のコンテナイメージの削除
3.14. C 言語によるアプリケーションの開発
3.14.1. C 言語によるアプリケーション開発の流れ
3.14.2. ATDE 上でのセットアップ
3.14.3. アプリケーション開発
3.14.4. コンテナのディストリビューション
3.14.5. コンテナ内のファイル一覧表示
3.14.6. Armadillo に転送するディレクトリ及びファイル
3.14.7. Armadillo 上でのセットアップ
3.14.8. リリース版のビルド
3.14.9. 製品への書き込み
3.14.10. Armadillo 上のコンテナイメージの削除
3.15. システムのテストを行う
3.15.1. ランニングテスト
3.15.2. 異常系における挙動のテスト
4. 量産編
4.1. 概略
4.1.1. Armadillo Twin を契約する
4.1.2. リードタイムと在庫
4.1.3. Armadillo 納品後の製造・量産作業
4.2. BTO サービスを使わない場合と使う場合の違い
4.2.1. BTO サービスを利用しない(標準ラインアップ品)
4.2.2. BTO サービスを利用する
4.3. 量産時のイメージ書き込み手法
4.4. インストールディスクを用いてイメージ書き込みする
4.4.1. /etc/swupdate_preserve_fileへの追記
4.4.2. Armadillo Base OSの更新
4.4.3. パスワードの確認と変更
4.4.4. 開発したシステムをインストールディスクにする
4.4.5. VSCode を使用して生成する
4.4.6. インストールディスクの動作確認を行う
4.4.7. コマンドラインから生成する
4.4.8. インストールの実行
4.5. SWUpdate を用いてイメージ書き込みする
4.5.1. SWU イメージの準備
4.5.2. descファイルの記述
4.6. イメージ書き込み後の動作確認
4.7. 量産時の組み立て
4.7.1. 拡張ボードの組み付け
4.7.2. オプションの組み付け
5. 運用編
5.1. Armadillo Twin に Armadillo を登録する
5.1.1. Armadillo の設置前に登録する場合
5.1.2. Armadillo の設置後に登録する場合
5.2. Armadillo を設置する
5.2.1. 設置場所
5.2.2. ケーブルの取り回し
5.2.3. サージ対策
5.2.4. 個体識別情報の取得
5.2.5. 電源を切る
5.3. ABOSDE で開発したアプリケーションをアップデートする
5.3.1. アプリケーションのアップデート手順
5.4. Armadillo のソフトウェアをアップデートする
5.4.1. SWUイメージの作成
5.4.2. mkswu の desc ファイルを作成する
5.4.3. desc ファイルから SWU イメージを生成する
5.4.4. イメージのインストール
5.5. Armadillo Twin から複数の Armadillo をアップデートする
5.6. eMMC の寿命を確認する
5.6.1. eMMC について
5.6.2. eMMC 予備領域の確認方法
5.7. Armadillo の部品変更情報を知る
5.8. Armadillo を廃棄する
6. 応用編
6.1. persist_file について
6.2. コンテナ
6.2.1. Podman - コンテナ仮想化ソフトウェアとは
6.2.2. コンテナの基本的な操作
6.2.3. コンテナとコンテナに関連するデータを削除する
6.2.4. コンテナ起動設定ファイルを作成する
6.2.5. アットマークテクノが提供するイメージを使う
6.2.6. alpine のコンテナイメージをインストールする
6.2.7. コンテナのネットワークを扱う
6.2.8. コンテナ内にサーバを構築する
6.2.9. 画面表示を行う
6.2.10. パワーマネジメント機能を使う
6.2.11. コンテナからのpoweroff及びreboot
6.2.12. 異常検知
6.3. swupdateを使用してアップデートする
6.3.1. swupdate で可能なアップデート
6.3.2. コンテナのアップデート、ユーザーデータディレクトリや Armadillo Base OS の差分アップデート
6.3.3. Armadillo Base OS の一括アップデート
6.3.4. ブートローダーのアップデート
6.3.5. swupdate がエラーする場合の対処
6.4. mkswu の .desc ファイルを編集する
6.4.1. インストールバージョンを指定する
6.4.2. Armadillo へファイルを転送する
6.4.3. Armadillo 上で任意のコマンドを実行する
6.4.4. Armadillo にファイルを転送し、そのファイルをコマンド内で使用する
6.4.5. 動作中の環境でのコマンドの実行
6.4.6. Armadillo にコンテナイメージを転送する
6.4.7. Armadillo のブートローダーを更新する
6.4.8. SWU イメージの設定関連
6.4.9. Armadillo 上のコンテナイメージと自動起動用confファイルを削除する
6.4.10. SWUpdate 実行中/完了後の挙動を指定する
6.4.11. desc ファイル設定例
6.5. swupdate_preserve_files について
6.6. SWU イメージの内容の確認
6.7. SWUpdate と暗号化について
6.8. Web UI から Armadillo をセットアップする (ABOS Web)
6.8.1. ABOS Web ではできないこと
6.8.2. ABOS Web の設定機能一覧と設定手順
6.8.3. コンテナ管理
6.8.4. SWUインストール
6.8.5. 時刻設定
6.8.6. アプリケーション向けのインターフェース (Rest API)
6.8.7. カスタマイズ
6.9. ABOSDE から ABOS Web の機能を使用する
6.9.1. Armadillo の SWU バージョンを取得する
6.9.2. Armadillo のコンテナの情報を取得する
6.9.3. Armadillo のコンテナを起動・停止する
6.9.4. Armadillo のコンテナのログを取得する
6.9.5. Armadillo に SWU をインストールする
6.10. ssh 経由で Armadillo Base OS にアクセスする
6.11. コマンドラインからネットワーク設定をする
6.11.1. 接続可能なネットワーク
6.11.2. IP アドレスの確認方法
6.11.3. ネットワークの設定方法
6.11.4. nmcli の基本的な使い方
6.11.5. 有線 LAN
6.12. ストレージの操作
6.12.1. ストレージ内にアクセスする
6.12.2. ストレージを安全に取り外す
6.12.3. ストレージのパーティション変更とフォーマット
6.13. ボタンやキーを扱う
6.13.1. SW1 の短押しと長押しの対応
6.13.2. USB キーボードの対応
6.13.3. Armadillo 起動時にのみボタンに反応する方法
6.14. 動作中の Armadillo の温度を測定する
6.14.1. 温度測定の重要性
6.14.2. atmark-thermal-profiler をインストールする
6.14.3. atmark-thermal-profiler を実行・停止する
6.14.4. atmark-thermal-profiler が出力するログファイルを確認する
6.14.5. 温度測定結果の分析
6.14.6. Armadillo Twin から Armadillo の温度を確認する
6.14.7. 温度センサーの仕様
6.15. Armadillo Base OS をアップデートする
6.16. ロールバック状態を確認する
6.17. Armadillo 起動時にコンテナの外でスクリプトを実行する
6.18. u-boot の環境変数の設定
6.18.1. u-boot の環境変数の変更を制限する
6.19. SDブートの活用
6.19.1. ブートディスクの作成
6.19.2. SDブートの実行
6.20. Armadilloのソフトウェアをビルドする
6.20.1. ブートローダーをビルドする
6.20.2. Linux カーネルをビルドする
6.20.3. Alpine Linux ルートファイルシステムをビルドする
6.21. SBOM の提供
6.21.1. SBOM について
6.21.2. SBOM の利点
6.21.3. ビルドしたルートファイルシステムの SBOM を作成する
6.21.4. SWU イメージと同時に SBOM を作成する
6.22. eMMC の GPP(General Purpose Partition) を利用する
6.22.1. squashfs イメージを作成する
6.22.2. squashfs イメージを書き込む
6.22.3. GPP への書き込みを制限する
6.22.4. 起動時に squashfs イメージをマウントされるようにする
6.23. 動作ログ
6.23.1. 動作ログについて
6.23.2. 動作ログを取り出す
6.23.3. ログファイルのフォーマット
6.23.4. ログ用パーティションについて
6.23.5. /var/log/ 配下のログに関して
6.24. viエディタを使用する
6.24.1. viの起動
6.24.2. 文字の入力
6.24.3. カーソルの移動
6.24.4. 文字の削除
6.24.5. 保存と終了
6.25. eFuse を変更する
6.25.1. ブートモード
6.25.2. ブートデバイス
6.25.3. eFuse の書き換え
6.25.4. eFuse の設定によるブートデバイスの選択
6.26. オプション品
6.26.1. USBシリアル変換アダプタ
6.26.2. Armadillo-610 拡張ボード
6.26.3. LCDオプションセット(7インチタッチパネルWVGA液晶)
6.26.4. Armadillo-400シリーズLCDオプションセット

図目次

1.1. 製品化までのロードマップ
2.1. Armadillo-610とは
2.2. 拡張ボードの例
2.3. Armadillo Base OSとは
2.4. コンテナによるアプリケーションの運用
2.5. ロールバックの仕組み
2.6. Armadillo Twin とは
2.7. Armadillo-610 インターフェースレイアウト
2.8. Armadillo-610 拡張ボード インターフェースレイアウト
2.9. Armadillo-610ブロック図
3.1. GNOME端末の起動
3.2. GNOME端末のウィンドウ
3.3. ソフトウェアをアップデートする
3.4. VSCode を起動する
3.5. VSCode に開発用エクステンションをインストールする
3.6. Armadillo-610 開発セットの組み立て
3.7. Armadillo-610を初期化する接続
3.8. ジャンパピンの位置
3.9. initial_setup.swu を作成する
3.10. initial_setup.swu 初回生成時の各種設定
3.11. ABOSにアクセスするための接続
3.12. ABOSDE で ローカルネットワーク上の Armadillo をスキャンする
3.13. ABOSDE に表示されている Armadillo を更新する
3.14. ABOSDE を使用して ABOS Web を開く
3.15. パスワード登録画面
3.16. パスワード登録完了画面
3.17. ログイン画面
3.18. トップページ
3.19. SWU インストール
3.20. SWU インストールに成功した画面
3.21. プロジェクトを作成する
3.22. プロジェクト名を入力する
3.23. VSCode で初期設定を行う
3.24. VSCode のターミナル
3.25. SSH 用の鍵を生成する
3.26. VSCode でコンテナイメージの作成を行う
3.27. コンテナイメージの作成完了
3.28. ABOSDE で Armadillo に SWU をインストール
3.29. ABOSDE を使用して ssh 接続に使用する IP アドレスを設定する
3.30. ssh_config を編集する
3.31. Armadillo 上でアプリケーションを実行する
3.32. 実行時に表示されるメッセージ
3.33. アプリケーションを終了する
3.34. Armadillo 上のコンテナイメージを削除する
3.35. minicomの設定の起動
3.36. minicomの設定
3.37. minicomのシリアルポートの設定
3.38. 例. シリアルポート接続時のログ
3.39. minicomのシリアルポートのパラメータの設定
3.40. minicomシリアルポートの設定値
3.41. スライドスイッチの設定
3.42. USBシリアル変換アダプタの挿抜角度
3.43. シリアルコンソールを使用する配線例
3.44. COM7が競合している状態
3.45. Bluetoothに割当のCOMを変更した状態
3.46. minicom起動方法
3.47. minicom終了確認
3.48. アプリケーション開発の流れ
3.49. persist_file コマンド実行例
3.50. chattr によって copy-on-write を無効化する例
3.51. Armadillo-610 開発セットの接続例
3.52. スピーカーのリード線
3.53. Armadillo-610のCON2
3.54. Armadillo-610のマルチプレクス表
3.55. 電源回路例
3.56. 起動設定ジャンパー例
3.57. LAN(Ethernet)接続例
3.58. WLAN/BT接続例
3.59. USB Host接続例
3.60. シリアル(UART)接続例
3.61. SD接続例
3.62. スイッチ、LED、リレー接続例
3.63. MQS接続例
3.64. PWRON回路例
3.65. ONOFF回路例
3.66. 拡張ボード推奨レイアウト
3.67. Armadillo-610の固定例
3.68. 電源回路の構成
3.69. 電源シーケンス
3.70. リセット回路の構成
3.71. システムリセットする場合のLowレベル保持時間
3.72. ONOFF回路の構成
3.73. 基板形状および固定穴寸法
3.74. コネクタ中心寸法
3.75. Armadillo-610のスタッキング高さ
3.76. at-dtweb の起動開始
3.77. ボード選択画面
3.78. Linux カーネルディレクトリ選択画面
3.79. at-dtweb 起動画面
3.80. UART1(RXD/TXD)のドラッグ
3.81. CON2 83/85ピンへのドロップ
3.82. 信号名の確認
3.83. プロパティの設定
3.84. プロパティの保存
3.85. 全ての機能の削除
3.86. UART1(RXD/TXD)の削除
3.87. DTS/DTB の生成
3.88. dtbo/desc の生成完了
3.89. /boot/overlays.txt の変更例
3.90. Armadillo-610のインターフェース
3.91. カバーのロックを解除する
3.92. カバーを開ける
3.93. microSDカードの挿抜
3.94. カードマークの確認
3.95. カバーを閉める
3.96. カバーをロックする
3.97. シリアルインターフェースを扱うためのコンテナ作成例
3.98. setserial コマンドによるシリアルインターフェイス設定の確認例
3.99. USB シリアルデバイスを扱うためのコンテナ作成例
3.100. setserial コマンドによるUSBシリアルデバイス設定の確認例
3.101. USB カメラを扱うためのコンテナ作成例
3.102. USB メモリをホスト OS 側でマウントする例
3.103. ホスト OS 側でマウント済みの USB メモリを扱うためのコンテナ作成例
3.104. USB メモリに保存されているデータの確認例
3.105. USB メモリをマウントするためのコンテナ作成例
3.106. コンテナ内から USB メモリをマウントする例
3.107. 音声出力を行うためのコンテナ作成例
3.108. alsa-utils による音声出力を行う例
3.109. GPIO を扱うためのコンテナ作成例
3.110. コンテナ内からコマンドで GPIO を操作する例
3.111. gpiodetect コマンドの実行
3.112. gpioinfo コマンドの実行
3.113. I2C を扱うためのコンテナ作成例
3.114. i2cdetect コマンドによる確認例
3.115. SPI を扱うためのコンテナ作成例
3.116. spi-config コマンドによる確認例
3.117. CAN を扱うためのコンテナ作成例
3.118. CAN の設定例
3.119. PWM を扱うためのコンテナ作成例
3.120. PWM の動作設定例
3.121. LCDの接続方法
3.122. フレキシブルフラットケーブルの形状
3.123. ユーザースイッチのイベントを取得するためのコンテナ作成例
3.124. evtest コマンドによる確認例
3.125. LED を扱うためのコンテナ作成例
3.126. LED の点灯/消灯の実行例
3.127. RTC を扱うためのコンテナ作成例
3.128. hwclock コマンドによるRTCの時刻表示と設定例
3.129. Bluetooth を扱うコンテナの作成例
3.130. Bluetooth を起動する実行例
3.131. bluetoothctl コマンドによるスキャンとペアリングの例
3.132. Wi-SUN デバイスを扱うためのコンテナ作成例
3.133. EnOcean デバイスを扱うためのコンテナ作成例
3.134. Thread デバイスを扱うためのコンテナ作成例
3.135. 開発者が開発するもの、開発しなくていいもの
3.136. 現在の面の確認方法
3.137. add_args を用いてコンテナに情報を渡すための書き方
3.138. add_args を用いてコンテナに情報を渡す例
3.139. ABOSDE で ローカルネットワーク上の Armadillo をスキャンする
3.140. ABOSDE を使用して ABOS Web を開く
3.141. ABOSDE に表示されている Armadillo を更新する
3.142. パスワード登録画面
3.143. パスワード登録完了画面
3.144. ログイン画面
3.145. トップページ
3.146. ログイン画面
3.147. WWAN設定画面
3.148. WLAN クライアント設定画面
3.149. WLAN アクセスポイント設定画面
3.150. 現在の接続情報画面
3.151. LAN 接続設定で固定 IP アドレスに設定した画面
3.152. eth0 に対する DHCP サーバー設定
3.153. LTE を宛先インターフェースに指定した設定
3.154. LTE からの受信パケットに対するポートフォワーディング設定
3.155. VPN 設定
3.156. ABOS Web のカスタマイズ設定
3.157. メニュー変更画面 (一部)
3.158. chronyd のコンフィグの変更例
3.159. 参照する開発手順の章を選択する流れ
3.160. CUI アプリケーション開発の流れ
3.161. プロジェクトを作成する
3.162. プロジェクト名を入力する
3.163. VSCode で my_project を起動する
3.164. 初期設定を行う
3.165. VSCode で初期設定を行う
3.166. VSCode のターミナル
3.167. SSH 用の鍵を生成する
3.168. VSCode でコンテナイメージの作成を行う
3.169. コンテナイメージの作成完了
3.170. BLE パッケージをインストールする
3.171. コンテナ内のファイル一覧を表示するタブ
3.172. コンテナ内のファイル一覧の例
3.173. resources ディレクトリ
3.174. コンテナ内のファイル一覧を再表示するボタン
3.175. container/resources 下にファイルを追加するボタン
3.176. ファイル名を入力
3.177. 追加されたファイルの表示
3.178. container/resources 下にフォルダーを追加するボタン
3.179. container/resources 下にあるファイルを開くボタン
3.180. container/resources 下にあるファイルを削除するボタン
3.181. コンテナ内のファイルを container/resources 下に保存するボタン
3.182. 編集前のファイルを示すマーク
3.183. 編集後のファイルを示すマーク
3.184. コンテナ内にコピーされないことを示すマーク
3.185. ABOSDE で ローカルネットワーク上の Armadillo をスキャンする
3.186. ABOSDE を使用して ssh 接続に使用する IP アドレスを設定する
3.187. ABOSDE に表示されている Armadillo を更新する
3.188. ssh_config を編集する
3.189. Armadillo 上でアプリケーションを実行する
3.190. 実行時に表示されるメッセージ
3.191. アプリケーションを終了する
3.192. リリース版をビルドする
3.193. C 言語によるアプリケーション開発の流れ
3.194. プロジェクトを作成する
3.195. プロジェクト名を入力する
3.196. VSCode で my_project を起動する
3.197. 初期設定を行う
3.198. VSCode で初期設定を行う
3.199. VSCode のターミナル
3.200. SSH 用の鍵を生成する
3.201. C 言語による開発における packages.txt の書き方
3.202. VSCode でコンテナイメージの作成を行う
3.203. コンテナイメージの作成完了
3.204. コンテナ内のファイル一覧を表示するタブ
3.205. コンテナ内のファイル一覧の例
3.206. resources ディレクトリ
3.207. コンテナ内のファイル一覧を再表示するボタン
3.208. container/resources 下にファイルを追加するボタン
3.209. ファイル名を入力
3.210. 追加されたファイルの表示
3.211. container/resources 下にフォルダーを追加するボタン
3.212. container/resources 下にあるファイルを開くボタン
3.213. container/resources 下にあるファイルを削除するボタン
3.214. コンテナ内のファイルを container/resources 下に保存するボタン
3.215. 編集前のファイルを示すマーク
3.216. 編集後のファイルを示すマーク
3.217. コンテナ内にコピーされないことを示すマーク
3.218. ABOSDE で ローカルネットワーク上の Armadillo をスキャンする
3.219. ABOSDE を使用して ssh 接続に使用する IP アドレスを設定する
3.220. ABOSDE に表示されている Armadillo を更新する
3.221. ssh_config を編集する
3.222. Armadillo 上でアプリケーションを実行する
3.223. 実行時に表示されるメッセージ
3.224. アプリケーションを終了する
3.225. リリース版をビルドする
3.226. メモリの空き容量の確認方法
4.1. Armadillo 量産時の概略図
4.2. BTO サービスで対応する範囲
4.3. 任意のファイルパスを/etc/swupdate_preserve_filesに追記する
4.4. Armadillo Base OSをアップデートする
4.5. パスワードを変更する
4.6. make-installer.swu を作成する
4.7. 対象製品を選択する
4.8. make-installer.swu 生成時のログ
4.9. make-installer.swu インストール時のログ
4.10. 開発完了後のシステムをインストールディスクイメージにする
4.11. ip_config.txtの内容
4.12. IPアドレスの確認
4.13. allocated_ips.csvの内容
4.14. インストールログを保存する
4.15. インストールログの中身
4.16. Armadilloに書き込みたいソフトウェアをATDEに配置
4.17. descファイルの記述例
5.1. 個体番号の取得方法(device-info)
5.2. device-infoのインストール方法
5.3. 個体番号の取得方法(get-board-info)
5.4. 個体番号の環境変数をconfファイルに追記
5.5. コンテナ上で個体番号を確認する方法
5.6. MAC アドレスの確認方法
5.7. 出荷時のEthernet MAC アドレスの確認方法
5.8. VScode を起動
5.9. desc ファイルから Armadillo へ SWU イメージをインストールする流れ
5.10. コンテナイメージアーカイブ作成例
5.11. sample_container_update.desc の内容
5.12. sample_container_update.desc の内容
5.13. eMMC の予備領域使用率を確認する
6.1. persist_file のヘルプ
6.2. persist_file 保存・削除手順例
6.3. persist_file ソフトウェアアップデート後も変更を維持する手順例
6.4. persist_file 変更ファイルの一覧表示例
6.5. persist_file でのパッケージインストール手順例
6.6. コンテナを作成する実行例
6.7. イメージ一覧の表示実行例
6.8. podman images --help の実行例
6.9. コンテナ一覧の表示実行例
6.10. podman ps --help の実行例
6.11. コンテナを起動する実行例
6.12. コンテナを起動する実行例(a オプション付与)
6.13. podman start --help 実行例
6.14. コンテナを停止する実行例
6.15. podman stop --help 実行例
6.16. my_containerを保存する例
6.17. podman buildの実行例
6.18. podman buildでのアップデートの実行例
6.19. コンテナを削除する実行例
6.20. イメージを削除する実行例
6.21. podman rmi --help 実行例
6.22. Read-Onlyのイメージを削除する実行例
6.23. コンテナ内部のシェルを起動する実行例
6.24. コンテナ内部のシェルから抜ける実行例
6.25. podman exec --help 実行例
6.26. コンテナを作成する実行例
6.27. コンテナの IP アドレスを確認する実行例
6.28. ping コマンドによるコンテナ間の疎通確認実行例
6.29. podを使うコンテナを自動起動するための設定例
6.30. networkを使うコンテナを自動起動するための設定例
6.31. abos-ctrl podman-rw の実行例
6.32. abos-ctrl podman-storage のイメージコピー例
6.33. Armadillo 上のコンテナイメージを削除する
6.34. abos-ctrl container-clear 実行例
6.35. コンテナを自動起動するための設定例
6.36. ボリュームを shared でサブマウントを共有する例
6.37. /proc/devicesの内容例
6.38. add_armadillo_envで設定した環境変数の確認方法
6.39. 上記の例でエラーを発生させた際の起動ログ
6.40. インストール用のプロジェクトを作成する
6.41. at-debian-image のコンテナイメージをインストールする SWU ファイルを作成する
6.42. Docker ファイルによるイメージのビルドの実行例
6.43. ビルド済みイメージを load する実行例
6.44. alpine のコンテナイメージをインストールする SWU ファイルを作成する
6.45. コンテナの IP アドレス確認例
6.46. ip コマンドを用いたコンテナの IP アドレス確認例
6.47. ユーザ定義のネットワーク作成例
6.48. IP アドレス固定のコンテナ作成例
6.49. コンテナの IP アドレス確認例
6.50. コンテナに Apache をインストールする例
6.51. コンテナに lighttpd をインストールする例
6.52. コンテナに vsftpd をインストールする例
6.53. ユーザを追加する例
6.54. 設定ファイルの編集例
6.55. vsftpd の起動例
6.56. コンテナに samba をインストールする例
6.57. ユーザを追加する例
6.58. samba の起動例
6.59. コンテナに sqlite をインストールする例
6.60. sqlite の実行例
6.61. X Window System を扱うためのコンテナ起動例
6.62. コンテナ内で X Window System を起動する実行例
6.63. フレームバッファに直接描画するためのコンテナ作成例
6.64. フレームバッファに直接描画する実行例
6.65. タッチパネルを扱うためのコンテナ作成例
6.66. パワーマネジメント機能を使うためのコンテナ作成例
6.67. サスペンド状態にする実行例
6.68. poweroffコマンドで電源を切断し、180秒後にi.mx6ullのRTCで起床する
6.69. サスペンド状態にする実行例、rtcで起こす
6.70. コンテナからshutdownを行う
6.71. ソフトフェアウォッチドッグタイマーを使うためのコンテナ作成例
6.72. コンテナ内からソフトウェアウォッチドッグタイマーを起動する実行例
6.73. ソフトウェアウォッチドッグタイマーをリセットする実行例
6.74. ソフトウェアウォッチドッグタイマーを停止する実行例
6.75. Armadillo Base OS を B 面にコピー
6.76. desc ファイルに記述したswudesc_* コマンドを実行
6.77. アップデート完了後の挙動
6.78. B 面への切り替え
6.79. Armadillo Base OS とファイルを B 面にコピー
6.80. desc ファイルに記述したswudesc_* コマンドを実行
6.81. アップデート完了後の挙動
6.82. B 面への切り替え(component=base_os)
6.83. コンテナ管理
6.84. SWU インストール
6.85. SWU 管理対象ソフトウェアコンポーネントの一覧表示
6.86. ネットワークタイムサーバーと同期されている場合の状況確認画面
6.87. ネットワークタイムサーバーと同期されていない場合の状況確認画面
6.88. ネットワークタイムサーバーの設定項目
6.89. タイムゾーンの設定項目
6.90. 設定管理の Rest API トークン一覧表示
6.91. ABOSDE で ローカルネットワーク上の Armadillo をスキャンする
6.92. ABOSDE の ABOS Web パスワード入力画面
6.93. ABOSDE で Armadillo の SWU バージョンを取得
6.94. ABOSDE で Armadillo のコンテナ情報を取得
6.95. ABOSDE で Armadillo のコンテナを起動
6.96. ABOSDE で Armadillo のコンテナを停止
6.97. ABOSDE で Armadillo のコンテナのログを取得
6.98. ABOSDE で Armadillo に SWU をインストール
6.99. IP アドレスの確認
6.100. IP アドレス(eth0)の確認
6.101. nmcli のコマンド書式
6.102. コネクションの一覧
6.103. コネクションの有効化
6.104. コネクションの無効化
6.105. コネクションの作成
6.106. コネクションファイルの永続化
6.107. コネクションの削除
6.108. コネクションファイル削除時の永続化
6.109. 固定 IP アドレス設定
6.110. DNS サーバーの指定
6.111. DHCP の設定
6.112. コネクションの修正の反映
6.113. デバイスの一覧
6.114. デバイスの接続
6.115. デバイスの切断
6.116. 有線 LAN の PING 確認
6.117. mount コマンド書式
6.118. ストレージのマウント
6.119. ストレージのアンマウント
6.120. fdiskコマンドによるパーティション変更
6.121. EXT4 ファイルシステムの構築
6.122. buttond で SW1 を扱う
6.123. buttond で USB キーボードのイベントを確認する
6.124. buttond で USB キーボードを扱う
6.125. buttond で SW1 を Armadillo 起動時のみ受け付ける設定例
6.126. atmark-thermal-profiler をインストールする
6.127. atmark-thermal-profiler を実行する
6.128. atmark-thermal-profiler を停止する
6.129. ログファイルの内容例
6.130. サーマルシャットダウン温度の確認(Armadillo-IoT ゲートウェイ G4を例に)
6.131. Armadillo-IoT ゲートウェイ G4で取得した温度のグラフ
6.132. abos-ctrl status の例
6.133. /var/at-log/atlog の内容の例
6.134. local サービスの実行例
6.135. uboot_env.d のコンフィグファイルの例
6.136. 自動マウントされたmicroSDカードのアンマウント
6.137. デフォルトコンフィギュレーションの適用
6.138. Linux カーネルを SWU でインストールする方法
6.139. Linux カーネルを build_rootfs でインストールする方法
6.140. descファイルの追加例
6.141. squashfs イメージの作成
6.142. mmc-utilsのインストール
6.143. eMMC の GPP に Temporary Write Protection をかける
6.144. 動作ログのフォーマット
6.145. viの起動
6.146. 入力モードに移行するコマンドの説明
6.147. 文字を削除するコマンドの説明
6.148. USBシリアル変換アダプタの配線
6.149. Armadillo-610 拡張ボードのブロック図
6.150. Armadillo-610 拡張ボードの電源回路の構成
6.151. Armadillo-610 拡張ボードのインターフェースの概要
6.152. Armadillo-610 拡張ボード CON1
6.153. Armadillo-610 拡張ボード CON2
6.154. USBシリアル変換アダプタの挿抜角度
6.155. Armadillo-610 拡張ボード CON3
6.156. Armadillo-610 拡張ボード CON4
6.157. Armadillo-610 拡張ボード CON5
6.158. Armadillo-610 拡張ボード CON6
6.159. Armadillo-610 拡張ボード CON7、CON8、CON9、CON10
6.160. Armadillo-610 拡張ボード CON11
6.161. ACアダプタの極性マーク
6.162. Armadillo-610 拡張ボード CON12
6.163. CON13Aの配置
6.164. CON13Bの配置
6.165. CON13Cの配置
6.166. CON13Dの配置
6.167. Armadillo-610 拡張ボード CON14
6.168. Armadillo-610 拡張ボード CON15、CON16
6.169. Armadillo-610 拡張ボード CON17
6.170. バックアップ電源供給回路
6.171. Armadillo-610 拡張ボード CON18
6.172. Armadillo-610 拡張ボード CON19
6.173. Armadillo-610 拡張ボード CON20
6.174. Armadillo-610 拡張ボード CON21
6.175. Armadillo-610 拡張ボード CON22
6.176. Armadillo-610 拡張ボード CON23
6.177. Armadillo-610 拡張ボード CON24
6.178. Armadillo-610 拡張ボード JP1
6.179. Armadillo-610 拡張ボード SW1
6.180. Armadillo-610 拡張ボード SW2
6.181. Armadillo-610 拡張ボード SW3
6.182. Armadillo-610 拡張ボード LED1、LED2
6.183. Armadillo-610 拡張ボード LED3
6.184. Armadillo-610 拡張ボード 基板形状および固定穴寸法
6.185. Armadillo-610 拡張ボード コネクタ中心寸法および穴寸法
6.186. LCD拡張ボードのブロック図
6.187. LCD拡張ボードのインターフェース
6.188. タッチパネルLCDとLCD拡張ボードの接続
6.189. 両面テープの貼付位置
6.190. Armadillo-610とLCD拡張ボードの接続
6.191. フレキシブルフラットケーブルの形状
6.192. LCD拡張ボードの基板形状および固定穴寸法
6.193. LCD拡張ボードの両面テープと固定部品配置可能位置
6.194. LCD拡張ボードのコネクタ位置寸法

表目次

1.1. 使用しているフォント
1.2. 表示プロンプトと実行環境の関係
1.3. コマンド入力例での省略表記
1.4. 推奨温湿度環境について
2.1. Armadillo-610ラインアップ
2.2. Armadillo-610開発セットのセット内容
2.3. 仕様
2.4. Armadillo-610 インターフェース内容
2.5. Armadillo-610 拡張ボード インターフェース内容
2.6. ストレージデバイス
2.7. eMMCのGPPの用途
2.8. eMMCメモリマップ
2.9. eMMC ブートパーティション構成
2.10. eMMC GPP構成
3.1. ユーザー名とパスワード
3.2. シリアル通信設定
3.3. 動作確認に使用する取り外し可能デバイス
3.4. 電源を切っても保持されるディレクトリ(ユーザーデータディレクトリ)
3.5. BJP1の状態と起動デバイス
3.6. CON2 信号配列
3.7. 絶対最大定格
3.8. 推奨動作条件
3.9. 入出力インターフェース(電源)の電気的仕様
3.10. 入出力インターフェースの電気的仕様(OVDD = +3.3V_IO、VDD_SNVS_IN)
3.11. ONOFFピンから電源オン、オフ切り替えする際のLow保持時間
3.12. Armadillo-610 インターフェース一覧
3.13. CON1 信号配列
3.14. Armadillo-610 拡張ボード: CON13B ピン番号とGPIO番号の対応
3.15. Armadillo-610: CON2 ピン番号とGPIO番号の対応
3.16. I2C デバイス
3.17. CON10 信号配列
3.18. キーコード
3.19. LED5
3.20. LED クラスディレクトリと LED の対応
3.21. 用意する favicon 画像
3.22. ABOSDEの対応言語
4.1. インストールディスクとSWUpdateによるソフトウェア書き込みの比較
4.2. インストール中に実行される関数
5.1. EXT_CSD_PRE_EOL_INFO の値の意味
6.1. add_hotplugsオプションに指定できる主要な文字列
6.2. add_armadillo_envで追加される環境変数
6.3. 対応するパワーマネジメント状態
6.4. swudesc_* コマンドの種類
6.5. アップデート完了後の挙動の種類
6.6. swudesc_* コマンドの種類
6.7. アップデート完了後の挙動の種類
6.8. ネットワークとネットワークデバイス
6.9. 固定 IP アドレス設定例
6.10. thermal_profile.csvの各列の説明
6.11. rollback-status の出力と意味
6.12. rollback-status 追加情報の出力と意味
6.13. u-bootの主要な環境変数
6.14. microSDカードのパーティション構成
6.15. build-rootfsのファイル説明
6.16. descファイルの設定項目
6.17. /var/log/ 配下のログ
6.18. 入力モードに移行するコマンド
6.19. カーソルの移動コマンド
6.20. 文字の削除コマンド
6.21. 保存・終了コマンド
6.22. GPIO override と eFuse
6.23. ブートデバイスと eFuse
6.24. オンボード eMMC のスペック
6.25. Armadillo-610関連のオプション品
6.26. USBシリアル変換アダプタのスライドスイッチによる起動モードの設定
6.27. Armadillo-610 拡張ボードの仕様
6.28. Armadillo-610 拡張ボードのインターフェース一覧
6.29. CON1 信号配列
6.30. CON2 信号配列
6.31. CON3 信号配列
6.32. CON4 信号配列
6.33. CON5 信号配列
6.34. CON6 信号配列
6.35. CON7 信号配列
6.36. CON8 信号配列
6.37. CON9 信号配列
6.38. CON10 信号配列
6.39. CON11 信号配列
6.40. CON12 信号配列
6.41. CON13A 信号配列
6.42. CON13B 信号配列
6.43. CON13C 信号配列
6.44. CON13D 信号配列
6.45. CON14 信号配列
6.46. CON16 信号配列
6.47. CON15、CON16 対応電池の例とバックアップ時間
6.48. CON17 信号配列
6.49. CON17 対応電池の例とバックアップ時間
6.50. CON18 信号配列
6.51. CON19 信号配列
6.52. CON20 信号配列
6.53. CON21 信号配列
6.54. CON22 信号配列
6.55. CON23 信号配列
6.56. CON24 信号配列
6.57. JP1 信号配列
6.58. ジャンパの設定と起動デバイス
6.59. SW1 信号配列
6.60. SW2 信号配列
6.61. SW3 信号配列
6.62. LAN LEDの動作
6.63. LED3
6.64. LCDオプションセット(7インチタッチパネルWVGA液晶)について
6.65. LCDの仕様
6.66. Armadillo-400シリーズLCDオプションセットについて
6.67. LCD拡張ボードの仕様
6.68. LCDの仕様
6.69. LCD拡張ボード インターフェース一覧
6.70. CON1 信号配列
6.71. CON2 信号配列
6.72. CON3 信号配列
6.73. CON4 信号配列
6.74. CON5 信号配列
6.75. CON6 信号配列
6.76. CON7 信号配列
6.77. CON8 信号配列
6.78. CON9、CON10 信号配列
6.79. SW1、SW2、SW3、SW4、SW5、SW6の機能
6.80. LED1の機能
6.81. LED2、LED3の機能