Armadillo-640 製品マニュアル
Debian GNU/Linux 10 (buster) 対応
改訂履歴
目次
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. 商標について
3. 製品概要
3.1. 製品の特長
3.1.1. Armadilloとは
3.1.2. Armadillo-640とは
3.2. 製品ラインアップ
3.2.1. Armadillo-640ベーシックモデル開発セット
3.2.2. Armadillo-640量産ボード
3.3. 仕様
3.4. ブロック図
3.5. ソフトウェア構成
4. Armadilloの電源を入れる前に
4.1. 準備するもの
4.2. 開発/動作確認環境の構築
4.2.1. ATDEのセットアップ
4.2.2. 取り外し可能デバイスの使用
4.2.3. コマンドライン端末(GNOME端末)の起動
4.2.4. シリアル通信ソフトウェア(minicom)の使用
4.3. インターフェースレイアウト
4.4. 接続方法
4.4.1. USBシリアル変換アダプタの接続方法
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.3. Debianのユーザを管理する
5.4. 終了方法
6. 動作確認方法
6.1. 動作確認を行う前に
6.2. ネットワーク
6.2.1. 接続可能なネットワーク
6.2.2. ネットワークの設定方法
6.2.3. 基本的な使い方
6.2.4. ファイアーウォール
6.3. ストレージ
6.3.1. ストレージの使用方法
6.3.2. ストレージのパーティション変更とフォーマット
6.4. LED
6.4.1. LEDを点灯/消灯する
6.4.2. トリガを使用する
6.5. ユーザースイッチ
6.5.1. イベントを確認する
6.6. RTC
6.6.1. RTCに時刻を設定する
6.7. GPIO
6.7.1. GPIO クラスディレクトリを作成する
6.7.2. 入出力方向を変更する
6.7.3. 入力レベルを取得する
6.7.4. 出力レベルを設定する
7. Linuxカーネル仕様
7.1. デフォルトコンフィギュレーション
7.2. デフォルト起動オプション
7.3. Linuxドライバ一覧
7.3.1. Armadillo-640
7.3.2. UART
7.3.3. Ethernet
7.3.4. WLAN
7.3.5. BT
7.3.6. SDホスト
7.3.7. USBホスト
7.3.8. USBハブ
7.3.9. リアルタイムクロック
7.3.10. LED
7.3.11. ユーザースイッチ
7.3.12. I2C
7.3.13. パワーマネジメント
8. Debianユーザーランド仕様
8.1. Debianユーザーランド
8.2. パッケージ管理
9. ブートローダー (U-Boot) 仕様
9.1. U-Boot の起動モード
9.2. U-Boot の機能
9.2.1. envコマンド
9.2.2. mmc コマンド
9.3. U-Boot の環境変数
9.4. U-Boot が Linux を起動する仕組み
9.5. U-Boot から見た eMMC / SD
9.6. Linuxカーネル起動オプション
10. ビルド手順
10.1. ブートローダーをビルドする
10.2. Linuxカーネルをビルドする
10.2.1. 手順:Linuxカーネルをビルド
10.3. Debian GNU/Linuxルートファイルシステムをビルドする
10.3.1. 出荷状態のルートファイルシステムアーカイブを構築する
10.3.2. カスタマイズされたルートファイルシステムアーカイブを構築する
11. イメージファイルの書き換え方法
11.1. インストールディスクを使用する
11.1.1. インストールディスクの作成
11.1.2. インストールの実行
11.1.3. LED点灯パターンによるインストールの進捗表示
11.2. 特定のイメージファイルだけを書き換える
11.2.1. ブートローダーイメージの書き換え
11.2.2. Linuxカーネルイメージの書き換え
11.2.3. DTBの書き換え
11.2.4. ルートファイルシステムの書き換え
12. 開発の基本的な流れ
12.1. 軽量スクリプト言語によるデータの送信例(Ruby)
12.1.1. テスト用サーバーの実装
12.1.2. テスト用サーバーの動作確認
12.1.3. クライアントの実装
12.1.4. Armadilloへのファイルの転送
12.1.5. クライアントの実行
12.2. C言語による開発環境
12.2.1. 開発環境の準備
13. i.MX6ULL の電源制御方法
13.1. poweroffコマンドによる制御
13.2. WLAN/RTC オプションモジュールによる制御
14. SDブートの活用
14.1. ブートディスクの作成
14.1.1. 手順:ブートディスクの作成例
14.2. ルートファイルシステムの構築
14.2.1. Debian GNU/Linuxのルートファイルシステムを構築する
14.3. LinuxカーネルイメージとDTBの配置
14.3.1. 手順:LinuxカーネルイメージおよびDTBの配置
14.4. SDブートの実行
15. 電気的仕様
15.1. 絶対最大定格
15.2. 推奨動作条件
15.3. 入出力インターフェースの電気的仕様
15.4. 電源回路の構成
15.5. 外部からの電源制御
15.5.1. ONOFFピンの制御について
15.5.2. PWRONピンの制御について
15.5.3. RTC_BATピンについて
16. インターフェース仕様
16.1. CON1(SDインターフェース)
16.1.1. microSDカードの挿抜方法
16.2. CON2、CON7(LANインターフェース)
16.3. LED1、LED2(LAN LED)
16.4. CON3、CON4(シリアルインターフェース)
16.5. CON5(USBホストインターフェース)
16.6. CON8、CON9、CON14(拡張インターフェース)
16.7. CON10(JTAGインターフェース)
16.8. CON11(LCD拡張インターフェース)
16.9. CON12、CON13(電源インターフェース)
16.10. LED3、LED4、LED5(ユーザーLED)
16.11. SW1(ユーザースイッチ)
16.12. JP1、JP2(起動デバイス設定ジャンパ)
17. 基板形状図
18. オプション品
18.1. USBシリアル変換アダプタ(Armadillo-640用)
18.1.1. 概要
18.2. Armadillo-600シリーズ オプションケース(樹脂製)
18.2.1. 概要
18.2.2. 組み立て
18.2.3. 形状図
18.3. Armadillo-600シリーズ オプションケース(金属製)
18.3.1. 概要
18.3.2. 組み立て
18.3.3. 形状図
18.4. LCDオプションセット(7インチタッチパネルWVGA液晶)
18.4.1. 概要
18.4.2. 組み立て
18.5. Armadillo-600シリーズ RTCオプションモジュール
18.5.1. 概要
18.5.2. ブロック図
18.5.3. インターフェース仕様
18.5.4. 組み立て
18.5.5. 形状図
18.5.6. 動作確認の前に
18.5.7. 動作確認
18.6. Armadillo-600シリーズ WLANオプションモジュール
18.6.1. 概要
18.6.2. ブロック図
18.6.3. インターフェース仕様
18.6.4. 組み立て
18.6.5. 形状図
18.6.6. 動作確認の前に
18.6.7. 動作確認
18.7. Armadillo-600シリーズ BT/THオプションモジュール
18.7.1. 概要
18.7.2. ブロック図
18.7.3. インターフェース仕様
18.7.4. 形状図
18.7.5. 組み立ての前に
18.7.6. 組み立て
18.7.7. 接続方法
18.7.8. 動作確認
18.8. 無線LAN用外付けアンテナセット01
18.8.1. 概要
18.8.2. 組み立て
18.8.3. 形状図
19. 設計情報
19.1. 放射ノイズ
19.2. ESD/雷サージ
20. Howto
20.1. Device Treeとは
20.2. イメージをカスタマイズする
20.2.1. イメージをカスタマイズ
20.3. Device Treeをカスタマイズする
20.3.1. at-dtwebのインストール
20.3.2. at-dtwebの起動
20.3.3. Device Treeをカスタマイズ
20.4. ルートファイルシステムへの書き込みと電源断からの保護機能
20.4.1. 保護機能の使用方法
20.4.2. 保護機能を使用する上での注意事項
20.5. eMMC の GPP(General Purpose Partition) を利用する
20.5.1. squashfs イメージを作成する
20.5.2. squashfs イメージを書き込む
20.5.3. GPP への書き込みを制限する
20.5.4. 起動時に squashfs イメージをマウントされるようにする
20.6. wxWidgets を利用して GUI アプリケーションを開発する
20.6.1. wxWidgets を直接利用して GUI アプリケーションを開発する
20.6.2. wxPython を利用して GUI アプリケーションを開発する
20.7. LCDインターフェースの動作確認
21. ユーザー登録
21.1. 購入製品登録
A. eFuse
A.1. ブートモードとジャンパーピン
A.1.1. ブートモードと JP2
A.1.2. ブートデバイスと JP1
A.2. eFuse の書き換え
A.3. Boot From Fusesモード
A.3.1. BT_FUSE_SEL
A.3.2. eMMC からのブートに固定
A.3.3. eFuse のロック
図目次
2.1.
Armadillo-WLANモジュール(AWL13) 認証マーク
2.2.
EYSKBNZWB 認証マーク
3.1.
Armadillo-640とは
3.2.
Armadillo-640ブロック図
4.1.
GNOME端末の起動
4.2.
GNOME端末のウィンドウ
4.3.
minicomの設定の起動
4.4.
minicomの設定
4.5.
minicomのシリアルポートの設定
4.6.
例. USB to シリアル変換ケーブル接続時のログ
4.7.
minicomのシリアルポートのパラメータの設定
4.8.
minicomシリアルポートの設定値
4.9.
minicom起動方法
4.10.
minicom終了確認
4.11.
インターフェースレイアウト
4.12.
Armadillo-640の接続例
4.13.
CON9-USBシリアル変換アダプタ接続図
4.14.
JP1、JP2の位置
4.15.
スライドスイッチの設定
4.16.
viの起動
4.17.
入力モードに移行するコマンドの説明
4.18.
文字を削除するコマンドの説明
5.1.
電源投入直後のログ (U-Bootの環境変数が eMMC に無い場合)
5.2.
電源投入直後のログ (U-Bootの環境変数が eMMC にある場合)
5.3.
ユーザの作成
5.4.
パスワードの変更
5.5.
sudo を許可
5.6.
ユーザの削除
6.1.
インターフェースの一覧確認
6.2.
ネットワークデバイスの一覧確認
6.3.
インターフェースの有効化
6.4.
インターフェースの無効化
6.5.
固定IPアドレス設定
6.6.
DHCP設定
6.7.
DNSサーバーの指定
6.8.
有線LANのPING確認
6.9.
iptables設定確認
6.10.
iptables設定保存
6.11.
iptablesのポリシー設定(受信許可)とiptables-persistentのインストール
6.12.
mountコマンド書式
6.13.
ストレージのマウント
6.14.
ストレージのアンマウント
6.15.
fdiskコマンドによるパーティション変更
6.16.
EXT4ファイルシステムの構築
6.17.
LEDを点灯させる
6.18.
LEDを消灯させる
6.19.
LEDの状態を表示する
6.20.
対応している LEDトリガを表示
6.21.
LEDのトリガにtimerを指定する
6.22.
ユーザースイッチ: イベントの確認
6.23.
システムクロックを設定
6.24.
ハードウェアクロックを設定
6.25.
GPIO クラスディレクトリを作成する
6.26.
GPIO の入出力方向を設定する(INPUT に設定)
6.27.
GPIO の入出力方向を設定する(OUTPUT に設定)
6.28.
GPIO の入力レベルを取得する
6.29.
GPIO の出力レベルを設定する
9.1.
U-Bootの起動
9.2.
U-Bootコマンドのヘルプを表示
9.3.
U-Bootコマンドのヘルプを表示
9.4.
envコマンドのヘルプを表示
9.5.
mmcコマンドのヘルプを表示
9.6.
全ての環境変数をデフォルト値に戻す
10.1.
出荷状態のルートファイルシステムアーカイブを構築する手順
10.2.
誤ったパッケージ名を指定した場合に起きるエラーメッセージ
12.1.
ruby と sinatra のインストール
12.2.
テスト用サーバー (server.rb)
12.3.
IPアドレスの確認 (ipコマンド)
12.4.
curl のインストール
12.5.
curl によるテストデータの送信
12.6.
ATDE8 におけるテストデータの受信表示
12.7.
時刻送信クライアント(client.rb)
12.8.
Armadillo へのSSHサーバーのインストール
12.9.
ATDE8 から Armadillo への client.rb の転送
12.10.
ruby のインストール
12.11.
クライアントの実行方法
12.12.
ATDE8 における時刻データの受信表示
12.13.
ツールチェーンのインストール
12.14.
開発用パッケージのインストールの例 (libsslの場合)
13.1.
poweroff コマンドによる電源 OFF
13.2.
i.MX6ULLの電源をOFFにし、1分後に電源をONにする手順
14.1.
自動マウントされたmicroSDカードのアンマウント
15.1.
電源回路の構成
15.2.
電源シーケンス
16.1.
Armadillo-640のインターフェース
16.2.
カバーのロックを解除する
16.3.
カバーを開ける
16.4.
microSDカードの挿抜
16.5.
カードマークの確認
16.6.
カバーを閉める
16.7.
カバーをロックする
16.8.
USB OTG2の接続先の変更
16.9.
USBホストインターフェースの電源制御
16.10.
リセットシーケンス
16.11.
ACアダプタの極性マーク
16.12.
バックアップ電源供給
17.1.
基板形状および固定穴寸法
17.2.
コネクタ中心寸法
17.3.
コネクタ穴寸法
18.1.
USBシリアル変換アダプタの配線
18.2.
Armadillo-640のシリアル信号線
18.3.
Armadillo-600シリーズ オプションケース(樹脂製)の組み立て
18.4.
樹脂ケース形状図
18.5.
Armadillo-600シリーズ オプションケース(金属製)の組み立て
18.6.
金属ケース(上板)寸法図
18.7.
金属ケース(下板)寸法図
18.8.
LCDの接続方法
18.9.
フレキシブルフラットケーブルの形状
18.10.
RTCオプションモジュールのブロック図
18.11.
RTCオプションモジュールのインターフェース
18.12.
Armadillo-640 CON5上段とRTCオプションモジュール CON3は排他利用
18.13.
RTCオプションモジュールの組み立て
18.14.
電池ホルダに電池を取り付ける
18.15.
電池ホルダから電池を取り外す
18.16.
RTCオプションモジュール形状
18.17.
アラーム割り込みの設定
18.18.
USBメモリの接続確認
18.19.
Armadillo-640 CON5上段とRTCオプションモジュール CON3は排他利用
18.20.
WLANオプションモジュールのブロック図
18.21.
WLANオプションモジュールのインターフェース
18.22.
Armadillo-640 CON5上段とWLANオプションモジュール CON2は排他利用
18.23.
WLANオプションモジュールの組み立て
18.24.
電池ホルダに電池を取り付ける
18.25.
電池ホルダから電池を取り外す
18.26.
WLANオプションモジュール形状
18.27.
無線LAN固定IP設定
18.28.
インターフェースの有効化と無線LANアクセスポイントのPING確認
18.29.
無線LANアクセスポイント設定
18.30.
インターフェースの有効化
18.31.
アラーム割り込みの設定
18.32.
BT/THオプションモジュール接続時にArmadillo-640 CON5上段は使用不可
18.33.
BT/THオプションモジュールのブロック図
18.34.
BT/THオプションモジュールのインターフェース
18.35.
BT/THオプションモジュール形状
18.36.
BT/THオプションモジュールの組み立て
18.37.
BT/THオプションモジュールのBT機能を有効化する
18.38.
LE Coded PHYでスキャンする
18.39.
LE Coded PHYからのアドバタイジングを有効化する
18.40.
LE Coded PHYからのアドバタイジングを無効化する
18.41.
BT/THオプションモジュールのThread機能を有効化する
18.42.
無線LAN固定IP設定
18.43.
インターフェースの有効化と無線LANアクセスポイントのPING確認
18.44.
無線LANアクセスポイント設定
18.45.
インターフェースの有効化
18.46.
外付けアンテナの取り付け
18.47.
外付けアンテナケーブルの引き抜き方法
18.48.
アンテナの形状図
18.49.
アンテナケーブルの形状図
18.50.
アンテナの取り付け穴寸法図
20.1.
at-dtwebの起動開始
20.2.
ボード選択画面
20.3.
Linuxカーネルディレクトリ選択画面
20.4.
at-dtweb起動画面
20.5.
UART1(RXD/TXD)のドラッグ
20.6.
CON9 3/5ピンへのドロップ
20.7.
信号名の確認
20.8.
プロパティの設定
20.9.
プロパティの保存
20.10.
全ての機能の削除
20.11.
UART1(RXD/TXD)の削除
20.12.
DTS/DTBの生成
20.13.
DTS/DTBの生成完了
20.14.
squashfs イメージの作成
20.15.
mmc-utilsのインストール
20.16.
eMMC の GPP に Temporary Write Protection をかける
20.17.
wxWidgets サンプルアプリケーション
20.18.
wxPython サンプルアプリケーション
20.19.
Qt5 サンプルアプリケーション
表目次
1.1.
使用しているフォント
1.2.
表示プロンプトと実行環境の関係
1.3.
コマンド入力例での省略表記
2.1.
Armadillo-WLANモジュール(AWL13) 適合証明情報
2.2.
EYSKBNZWB 適合証明情報
3.1.
Armadillo-640ラインアップ
3.2.
仕様
3.3.
Armadillo-640で利用可能なソフトウェア
3.4.
eMMCメモリマップ
3.5.
eMMC(GPP)メモリマップ
4.1.
ユーザー名とパスワード
4.2.
動作確認に使用する取り外し可能デバイス
4.3.
シリアル通信設定
4.4.
インターフェース内容
4.5.
入力モードに移行するコマンド
4.6.
カーソルの移動コマンド
4.7.
文字の削除コマンド
4.8.
保存・終了コマンド
5.1.
シリアルコンソールログイン時のユーザ名とパスワード
6.1.
ネットワークとネットワークデバイス
6.2.
固定IPアドレス設定例
6.3.
ストレージデバイス
6.4.
eMMCのGPPの用途
6.5.
LEDクラスディレクトリとLEDの対応
6.6.
LEDトリガの種類
6.7.
インプットデバイスファイルとイベントコード
6.8.
時刻フォーマットのフィールド
6.9.
CON9 ピンとGPIO番号の対応
6.10.
direction の設定
7.1.
Linuxカーネル主要設定
7.2.
Linuxカーネルのデフォルト起動オプション
7.3.
キーコード
7.4.
I2C デバイス
7.5.
対応するパワーマネジメント状態
9.1.
ブートローダー起動モード
9.2.
各種スイッチの状態とブートローダー起動モード
11.1.
インストールディスク作成に使用するファイル
11.2.
インストールの進捗とLED点灯パターン
11.3.
イメージファイルと書き込み先の対応
14.1.
ブートディスクの作成に使用するファイル
14.2.
ブートディスクの構成例
14.3.
ルートファイルシステムの構築に使用するファイル
14.4.
ブートディスクの作成に使用するファイル
14.5.
ブートローダーがLinuxカーネルを検出可能な条件
15.1.
絶対最大定格
15.2.
推奨動作条件
15.3.
入出力インターフェース(電源)の電気的仕様
15.4.
入出力インターフェースの電気的仕様(OVDD = VCC_3.3V)
16.1.
Armadillo-640 インターフェース一覧
16.2.
CON1 信号配列
16.3.
CON2 信号配列
16.4.
CON7 信号配列
16.5.
LAN LEDの動作
16.6.
CON3 信号配列
16.7.
CON4 信号配列
16.8.
CON5 信号配列
16.9.
CON8 信号配列
16.10.
CON9 信号配列
16.11.
CON14 信号配列
16.12.
CON10 信号配列
16.13.
CON11 信号配列
16.14.
CON13 信号配列
16.15.
LED3、LED4、LED5
16.16.
SW1 信号配列
16.17.
ジャンパの設定と起動デバイス
16.18.
JP1 信号配列
16.19.
JP2 信号配列
18.1.
Armadillo-640関連のオプション品
18.2.
各ピンに対応するUARTコントローラ
18.3.
USBシリアル変換アダプタのスライドスイッチによる起動モードの設定
18.4.
Armadillo-600シリーズ オプションケース(樹脂製)について
18.5.
Armadillo-600シリーズ オプションケース(樹脂製)の仕様
18.6.
Armadillo-600シリーズ オプションケース(金属製)について
18.7.
LCDオプションセット(7インチタッチパネルWVGA液晶)について
18.8.
LCDの仕様
18.9.
Armadillo-600シリーズ RTCオプションモジュールについて
18.10.
RTCオプションモジュールの仕様
18.11.
RTCオプションモジュール インターフェース一覧
18.12.
CON1 信号配列
18.13.
CON3 信号配列
18.14.
対応バッテリ例
18.15.
CON4、CON5、CON6 信号配列
18.16.
Armadillo-600シリーズ RTCオプションモジュール対応ソフトウェアバージョン
18.17.
Armadillo-600シリーズ WLANオプションモジュールについて
18.18.
WLANオプションモジュールの仕様
18.19.
WLANオプションモジュール インターフェース一覧
18.20.
CON1 信号配列
18.21.
対応バッテリ例
18.22.
CON4、CON5、CON6 信号配列
18.23.
Armadillo-600シリーズ WLANオプションモジュール対応ソフトウェアバージョン
18.24.
AWL13に使用する際に必要なパッケージ
18.25.
無線LANアクセスポイント設定例
18.26.
BT/THオプションモジュールについて
18.27.
BT/THオプションモジュールの仕様
18.28.
BT/THオプションモジュール インターフェース一覧
18.29.
CON1 信号配列
18.30.
Armadillo-600シリーズ BT/THオプションモジュール対応ソフトウェアバージョン
18.31.
LE Long Range対応パッケージバージョン
18.32.
AWL13に使用する際に必要なパッケージ
18.33.
無線LANアクセスポイント設定例
18.34.
無線LAN用外付けアンテナセット01について
18.35.
無線LAN用外付けアンテナセット01の仕様
20.1.
輝度設定に使用するファイル
A.1.
GPIO override と eFuse
A.2.
ブートデバイスと eFuse
A.3.
オンボード eMMC のスペック