NXP i.MX8M Mini ARM Cortex-A53 processorはIPCの開発プロジェクトで広く採用されています。 ICOPはi.MX8M Miniを中心にシステム全体を構築することもしておりPanel PC や Box PCなどの優れた構成と高品質な製品を網羅しています。
EBOX-IMX8MM はICOPが提供するARMベースのEBOXであり広い製品にすぐに適用できます。EBOXはファンレス, 小フットプリント, プレミアムアルミニウムカバーなどの一連の機能を備えています。EBOXには標準VESA及びDINレール取り付けオプションもあり、-40〜80°Cの広い温度範囲をサポート(オプション拡張モデル)し産業用オプションを強化します。このARMCortex A-53プロセッサは豊富なI / Oを備え、GPUとVPUを搭載し低消費電力向けに最適化しながらオーディオとHDMIの高性能処理が可能です。 購入者は注文の際、Android 9 &Yocto Linuxのプリインストールを選択することもできます。
EBOX-IMX8MM:
システム仕様 | |
---|---|
Processor | NXP i.MX8M Mini Quad-core 1.6 GHz ARM Cortex-A53 processor |
Memory | 1GB to 4GB LPDDR4 onboard |
HDMI | HDMI 1.3 (MAX.1920 x 1080 pixels) |
Ethernet | RJ45 x2 (Intel I1210 GbE x1/CPU GbE x1) |
USB | USB 2.0 x3 (Front x2 + Rear x1) |
HD Audio | Mic-in & Line-out (WM8960) |
SD card slot | SD Slot x1 (Internal slot Optional) |
Extension I/F | 8GB to 64GB eMMC MLC/SLC onboard |
Extension I/F | WiFi 802.11b/g/n & BT4.1 Combo 2.4G (Broadcom 43438) |
RS-232 | D-Sub 9-pin connector x2 or x4 ports |
RS-485 | D-Sub 9-pin connector x2 ports |
Power requirement | DC +12V~+36V |
Dimensions | 115 x 115 x 35mm/DIN Rail Support (Optional) |
Net Weight | 700g |
Operation Temperature | 0 ~ +60℃/-40 ~ +80℃ |
Certifications | CE, FCC, VCCI |
OS Support | Android 9, Yocto, Mainline Linux Kernel Support |
パッケージ寸法 240 x 220 x 170mm, 内容物:
- EBOX-IMX8MM x 1pcs
- 22.5W Power supply x 1pcs
- Rubber pads sticker x 1pcs
- VESA screw x 4pcs
- Protection Paperboard box
EBOX-IMX8MM Diagram:
*黒いアルミニウム・カバーはヒートシンクとなるようプロセッサに触れフィンとともに優れた熱伝導を提供します。
最高のユーザ満足度を満たすために、多くの検証とテストが行われてきました。
小さなデバイス、大きなアプリケーション
(より詳細なアプリケーション情報は NXP applications reference linkをクリックしてください)
Yocto Linux OSを搭載したEBOX-IMX8MM-2Gの詳細については、以下のコンテンツをご覧ください。
EBOX-IMX8MM-2G向けのYocto Linuxビルドのレシピ(Recipe)
このセクションでは、EBOX-IMX8MM-2G向けYocto Linuxをビルドするためのレシピについて説明します。
info@icop.com.twに問い合わせて、EBOX-IMX8MM-2G向けYocto Linuxをビルドするためのファイルとリソースを入手してください。
NXPのコンパイル方法も確認することができます: IMXLXYOCTOUG.pdf
推奨O/S: Ubuntu 18.04 またはそれ以降
SDLビルドの際のエラーを避けるために、local.confを参照してください。
#PACKAGECONFIG_append_pn-qemu-native = “sdl”
#PACKAGECONFIG_append_pn-nativesdk-qemu=”sdl”
ストレージ: ストレージデバイスの容量が300GBを超えていることを確認してください。
RAM: 物理メモリ+スワップ容量が16GBより大きいことを確認してください。
EBOX-IMX8MM-2G向けYocto Linux recipeのビルド手順:
- Host packagesのインストール:
必須なYocto Project host packages:$ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat libsdl1.2-dev
Ubuntu 12.04、または14.04向けのi.MX layers host packagesのhost setupは:$ sudo apt-get install libsdl1.2-dev xterm sed cvs subversion coreutils texi2html \ docbook-utils python-pysqlite2 help2man make gcc g++ desktop-file-utils \ libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff curl lzop \ asciidoc
- repo utilityのインストール:
homeディレクトリにbin フォルダを作成します:$ mkdir ~/bin (this step may not be needed if the bin folder already exists) $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo
- ~/bin フォルダに明確にPATHを通すため .bashrc fileに次のラインを追加してください。
export PATH=~/bin:$PATH
- 以下のコマンドでgitが正しく設定されていることを確認してください:
$ git config --global user.name "Your Name" $ git config --global user.email "Your Email" $ git config –list
- i.MX Yocto Project Community BSP recipe layersをダウンロードしてください:
$ mkdir imx-yocto-bsp $ cd imx-yocto-bsp $ repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b \ imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml $ repo sync
- Yocto Linuxビルド向けのRecipeを‘imx-yocto-bsp’に解凍してください。
- 以下のコマンドでセットアップ環境を作成します(ファイル名は可変です)
$ DISTRO=fsl-imx-xwayland MACHINE=dm395b source fsl-setup-release.sh -b \ build-dmp
EULAの確認が表示されたら、「y」を入力してください。 - conf / local.confファイルを編集し、以下のコンテンツを下部に追加します:
CORE_IMAGE_EXTRA_INSTALL += “chromium-ozone-wayland” IMAGE_INSTALL_append += “\ openssh-sftp-server \ ppp \ rng-tools \ glibc-gconv-utf-16 \ expand-rootfs \ “
- conf / bblayers.confファイルを編集し、以下のコンテンツを下部に追加します:
BBLAYERS += “${BSPDIR}/sources/meta-custom-dmp
- 以下コマンドを実行します。
$ bitbake fsl-image-qt5-validation-imx
上記の手順を完了すると、システムはソースコードのダウンロードとインストール、ファイルへのパッチ適用、およびコンパイルを開始します。
UUUによるイメージのインストール
fsl-image-qt5-validation-imxbitbakeを実行した後、イメージファイルが生成され、build-dmp / tmp / deploy / images / dm395bの下に保存されます。
build-dmp / tmp / deploy / images / dm395b内のファイルで、イメージのリストアには以下のファイルが必要になります。
- fsl-image-qt5-validation-imx-dm395b.sdcard.bz2
- imx-boot-dm395b-sd.bin-flash_evk
イメージファイル fsl-image-qt5-validation-imx-dm395b.sdcardを取得するコマンドを入力します(このファイルには、パッケージ化されたカーネルとrootfsがあります)。
$ bzip2 -d fsl-mage-qt5-validation-imx-dm395b.sdcard.bz2
サンプルをダウンロードするためにinfo@icop.com.twに問い合わせください。
ファイル名を変更する必要がある場合は、以下の手順に従ってファイル名を変更してください(ファイル名の変更が不要な場合は変更の必要はありません)。
SDP: boot -f XXX.bin-flash_evk SDPU: write -f XXX.bin-flash_evk -offset 0x57c00 SDPS: boot -f XXX.bin-flash_evk SDPV write -f XXX.bin-flash_evk -skipspl FB: flash bootloader XXX.bin-flash_evk XXX.bin-flash_evk = imx-boot-dm395b-sd.bin-flash_evk FB: flash -raw2sparse all XXX.image XXX.image = fsl-mage-qt5-validation-imx-dm395b.sdcard
ファイル名を設定したら、以下のコマンドを入力してYoctoLinuxをインストールします。
uuu uuu.auto
インストールのテストと使用(Bluetooth A2DP, Ethernet, UART, WiFi, SPK-OUT)
Yocto LinuxをビルドしUUUからイメージをインストールした後、機能のテストを開始できます。
Bluetooth A2DP 機能テスト:
Bluetooth moduleの初期化
# hciattach /dev/ttymxc0 bcm43xx 3000000 flow -t 30
Bluetooth function controllerをオンにします
# bluetoothct1
Bluetoothをオン
[bluetooth] #power on
Bluetooth functionの状態をチェックします。
[bluetooth] # show
Bluetooth A2DPの再生をテストするには、Pulseオーディオコントロールモジュールをロードする必要があります。操作を簡単にするために、別のターミナル(terminal2)を立ち上げて、コントロールモジュールをロードします。
# pulseaudio –D
その間Bluetoothctlはより多くの制御モジュールをロードします。ターミナル1でBluetoothをスキャンします。
[bluetooth] # scan on
Bluetoothデバイスを見つけた後、スキャンを停止します。
[bluetooth] # scan off
Bluetoothデバイスを接続します. (Ex: Bluetooth ヘッドホン、またはスピーカー)
[bluetooth] # connect BT-addr
Bluetoothデバイスを接続した後、ターミナルをチェックしてA2DPがサポートされているかどうかを確認します。
# pactl info
テストのために音楽の再生を開始します。
# gat-launch-1.0 playbin uri=file:///path
Ethernet テスト:
PINGコマンドを使用してネットワーク接続をテストします。
# ping –c 10 www.google.com
iPerf3ネットワーク帯域幅テスト。通常iPerf3でネットワークをテストする場合、iPerf3を同時にテストするためにサーバー側とクライアント側を準備する必要があります。
まず、サーバー側でiPerf3を起動します。
First, start iPerf3 on the server-side.
# Server-side # iperf3 –s
次にクライアント側でiPerf3を起動します。
# Client-side # iperf3 –c SERVER IP
クライアント側のSERVER_IPは、サーバー側のIPまたはデバイス名に設定する必要があります。 iPerf3がテスト中の場合、サーバー側とクライアント側の両方にデータが表示されます(テスト結果を以下に示します):
UART 概略:
EBOX-IMX8MMには4つのUARTがあり、デフォルト設定は以下のとおりです:
UART1はWLAN / Bluetoothモジュールに接続
UART2はconsole functionに接続
UART3はボード上のJ19コネタクに接続
UART4はボード上のJ21コネタクに接続
EBOXにWLANまたはBluetoothがない場合、UART1はJ15コネクタに接続
Linux下でのUART名前付け:
UART 1: /dev/ttymxc0
UART 2: /dev/ttymxc1
UART 3: /dev/ttymxc2
UART 4: /dev/ttymxc3
LinuxのルートファイルにUARTテストツールファイルを配置します(テストツールについてはinfo@icop.com.twにお問い合わせください)
テスト UART3:
# ./linux-serial-test –p /dev/ttymxc2 –o 5 –i 6 –c
テスト UART4:
# ./linux-serial-test –p /dev/ttymxc3 –o 5 –i 6 –c
Wi-Fi 機能テスト:
SSIDを接続するために、以下のコマンドでwlan0をオフにします:
# ifconfig wlan0 down
SSIDに接続し、SSIDパスワードを入力します:
# iwconfig wlan0 essid “SSID” key “SSIDPASSWORD”
wlan0をオンにします:
# ifconfig wlan0 up
DHCPサーバーにIPアドレスを要求します:
# udhcpc –i wlan0
PINGコマンドを使用して、ネットワーク接続をテストします:
# ip=$(ifconfig wlan0 | grep “inet addr” | cut –f 1 –d B | sed ‘s/inet addr://g’);ping –c 5 S $ip www.google.com.tw
ヘッドホン/SPK-OUT テスト:
ケーブルを差し込み、以下のパスを使用します:
# gst-launch-1.0 playbin uri=file:///path audio-sink=alsasink
パスにはWAV、MP3、FLACなどがあります。 ファイルを入力するとヘッドホンまたはSPK-OUTから音声が再生されます。
PCMボリューム(オーディオデコーダーのメインボリューム)を設定する必要がある場合、範囲は0〜127の範囲で設定できます。
# amixer set Headphone 80
レコーディング・テスト:
MICをMIC-INコネクタに接続し、以下のコマンドを入力して録音を開始します。録音が終了するとtest.wavという名前のオーディオファイルが生成されます:
# arecord –D hw:0, 0 –r 48000 –c 2 –f S16_LE test.wav
以下のコマンドでtest.wavを再生します:
# aplay test.wav
YoctoLinuxをEBOX-IMX8MM-2G上のeMMCにリストアする
製品が起動できない場合は、次の手順を使用してYoctoLinuxをEBOX-IMX8MM-2GのeMMCにリストアしてください。
LinuxホストPCを介してのYoctoLinuxのEBOX-IMX8MM-2Gへのリストア
-
イメージをeMMCにレストアするために必要なツール:
- リカバリーイメージとUUU書き込みソフトウエア (詳細はinfo@icop.com.twにお問い合わせください)
- 1GB RAM 版
- 2GB RAM 版
- 64-bit Linux host O/S PC (仮想マシンは推奨しません)
- ホストPCとEBOX-IMX8MM-2Gを接続するUSBケーブル
- リカバリーイメージとUUU書き込みソフトウエア (詳細はinfo@icop.com.twにお問い合わせください)
-
EBOX-IMX8MM-2G上のeMMCへのイメージの書き込み:
- SW1をEBOX-IMX8MM-2Gで見つけ、下の写真に従って設定をシリアルダウンロードモードに変更します:
- ホストPCの電源を入れ、イメージファイルを解凍してください。
- USBケーブルをホストPCに接続します。まだEBOX側には接続しないでください。
- ホストPCでターミナルを開きイメージファイルがある場所にアクセスして
"sudo ./uuuuuu.auto"
と入力すると“Wait for known USB Device to Appear”が表示されます。
- USBケーブル(Micro USB)をEBOX-IMX8MM-2Gに接続し、シリアルダウンロードモードをトリガーして、ホストPCからイメージをリストアします。
- リストアプロセスが完了すると、イメージがホストPCに表示されます:
- EBOX-IMX8MM-2G(電源オフ)のUSB(Micro USB)を取り外し、以下に示すようにSW1を内部ブートに設定します:
- EBOX-IMX8MM-2Gの電源を入れて、YoctoLinuxの起動を表示します。
- 起動時に任意のキーを押すと、Uブートモードにアクセスします。
- SW1をEBOX-IMX8MM-2Gで見つけ、下の写真に従って設定をシリアルダウンロードモードに変更します:
Win10ホストPCを介してのYoctoLinuxのEBOX-IMX8MM-2Gへのリストア
-
イメージをeMMCにリストアする前に必要なツール:
- リカバリーイメージとUUU書き込みソフトウエア (詳細はinfo@icop.com.twにお問い合わせください)
- 1GB RAM 版
- 2GB RAM 版
- Windows 10 host OS PC (仮想マシンは推奨しません)
- ホストPCとEBOX-IMX8MM-2Gを接続するUSBケーブル
- リカバリーイメージとUUU書き込みソフトウエア (詳細はinfo@icop.com.twにお問い合わせください)
-
EBOX-IMX8MM-2G上のeMMCへのイメージの書き込み:
- SW1をEBOX-IMX8MM-2Gで見つけ、下の写真に従って設定をシリアルダウンロードモードに変更します:
- ホストPCの電源を入れ、イメージファイルを解凍してください。
- USBケーブルをホストPCに接続します。まだEBOX側には接続しないでください。
- ホストPCでターミナルを開きイメージファイルがある場所にアクセスして
"sudo ./uuuuuu.auto"
と入力すると“Wait for known USB Device to Appear”が表示されます。
- USBケーブル(Micro USB)をEBOX-IMX8MM-2Gに接続し、シリアルダウンロードモードをトリガーして、ホストPCからイメージをリストアします。
- リストアプロセスが完了すると、イメージがホストPCに表示されます:
- EBOX-IMX8MM-2G(電源オフ)のUSB(Micro USB)を取り外し、以下に示すようにSW1を内部ブートに設定します:
- EBOX-IMX8MM-2Gの電源を入れて、YoctoLinuxの起動を表示します。
- 起動時に任意のキーを押すと、Uブートモードにアクセスします。
- SW1をEBOX-IMX8MM-2Gで見つけ、下の写真に従って設定をシリアルダウンロードモードに変更します:
UBOOTモードでのeMMCへのYoctoLinuxのリカバリ
UBOOTモードでのeMMCへのYoctoLinuxのリカバリ
-
イメージをeMMCにリストアするために必要なツール:
- リカバリーイメージとUUU書き込みソフトウエア(詳細はinfo@icop.com.twにお問い合わせください)
- 1GB RAM 版
- 2GB RAM 版
- Windows 10 host OS PC (仮想マシンは推奨しません)
- ホストPCとEBOX-IMX8MM-2Gを接続するUSBケーブル
- ホストPCとEBOX-IMX8MM-2GをConsole 接続するケーブル (USB to RS-232)
- リカバリーイメージとUUU書き込みソフトウエア(詳細はinfo@icop.com.twにお問い合わせください)
-
Write the image to the eMMC on the EBOX-IMX8MM-2G:
- ホストPCの電源を入れ、イメージファイルを解凍してください。
- Console cabを介してホストPCとEBOX-IMX8MM-2Gを接続します。(ICOP機器のConsole 機能はCOM2です)
- USBケーブルをホストPCに接続します。まだEBOX側には接続しないでください。
- ホストPCでPUTTYを開き、Serial lineを正しい場所(正しいCOMポート)に設定します。場所はデバイスマネージャーで確認が出来ます:
- ホストPCでターミナルを開きイメージファイルがある場所にアクセスして
"sudo ./uuuuuu.auto"
と入力すると“Wait for known USB Device to Appear”が表示されます。
- PUTTYに戻り、USBケーブル(Micro USB)をEBOX-IMX8MM-2Gに接続して起動し、起動中に任意のキーを押してUBOOTモードにアクセスし、
“fastboot usb0”
と入力します。
- ホストPCのターミナルでイメージのリストアが開始されるのを確認できます。
- リストアが完了したら、EBOX-IMX8MM-2Gを起動してYoctoLinuxが実行されていることを確認します。
お疲れ様です。これまでのセクションのすべての手順が完了しましたでしょうか?
Yocto Projectでのご興味に応じて、下記もご参照いただけます: (参照リンクのsource: https://www.yoctoproject.org/docs/2.4.2/yocto-project-qs/yocto-project-qs.html)
- Yocto ProjectのWebサイトにアクセスする:公式Yocto ProjectWebサイトには、プロジェクト全体に関する情報が含まれています。このサイトにアクセスすることはプロジェクト全体を理解するための良い方法です。
- Yocto Project Development Tasks Manualに目を通す: このマニュアルにはセットアップ、レイヤーの操作、イメージのカスタマイズ、新しいレシピの作成、ライブラリの操作、QEMUの使用等のグループ化された手順情報が含まれています。情報はタスクベースであり、YoctoProjectの全体に及びます。
- Board Support Packages (BSPs)について学ぶ: BSPについて知りたい場合はYocto Project Board Support Packages (BSP) Developer's Guideを参照してください。このマニュアルにはBSP作成ワークフローの例も記載されています。 "Developing a Board Support Package (BSP)" を参照してください。