Howto

Armadillo-840 / 800 EVAでWindows Embedded Compact 7を評価する

Armadillo-840 液晶モデル開発セット、またはArmadillo-800 EVAでWindows Embedded Compact 7を簡単に試す方法を紹介します。

  1. SD ブートディスクを作成する
  2. フラッシュメモリのブートローダーを書き換える
  3. Windows Embedded の OS イメージを Armadillo-840/800 EVA にネットワーク転送する
  4. Windows Embedded を起動させる

Armadillo-840/800 EVA Windows Embedded ダウンロード

Armadillo-840/800 EVA 用 Windows Embedded Compact 7 ダウンロード

変更履歴

  • 2015/04/16: 公開
  • 2015/09/17: Armadillo-800 EVA対応
上記のファイルはデモ用です。動作は一切保証されていません。自己責任の上でご利用ください。

この Howto は、wec7-on-armadillo800_20150917.zip に含まれるデモ版 OS イメージおよびブートローダを利用するように記載しています。ダウンロードしたアーカイブを展開し、README.txtを確認してください。

Armadillo-800 EVAを使う場合は、最初に Armadillo-800 EVAの製品マニュアル 「10. リカバリ手順 」に従って eMMC を工場出荷状態に初期化してください。eMMCのパーティション構成が工場出荷時と異なる場合は、EBOOTによるOSイメージに書き込みを行う事ができません。

1. SD ブートディスクを作成する

SD 用ブートディスクの作成方法は、Armadillo-840 の製品マニュアル「16. SDブートの活用」、または Armadillo-800 EVA の製品マニュアル「9. SDブートの活用」をご参照ください。(Armadillo-840 の場合、SD ブートディスクには、hermit が入っていれば十分です)

2. ブートローダーを書き換える

Windows Embedded のブートローダー(EBOOT.nb0)を、フラッシュメモリに書き込みます。以下にダウンローダー(hermit)を使用してフラッシュメモリを書き換える方法を記述します。

Armadillo-840 では JP1 および JP2 をジャンパソケットを用いてショートさせることで、SD カードからブートローダを起動かつ、保守モードに設定します。
Armadillo-800 EVA では、Armadillo-800 EVA の製品マニュアル「10.4. eMMC のブートローダーをリカバリする」に記載されたのと同じ手順で、Linux のブートローダーイメージファイルの代わりに EBOOT.nb0 をフラッシュメモリ(eMMC)に書き込んで下さい。

それでは、ブートローダー(EBOOT.nb0)をフラッシュメモリに書き込みます。Hermit-At for WIN32 で、「Download」ボタンを押します。

hermit-at_win32_download (画像は、Armadillo-440のものです)

まず、書き込むブートローダのイメージファイルを選択します。書き込むイメージファイル名は、EBOOT.nb0 です。ファイル選択用のオープンダイアログを開き、「ファイルの種類(T):」を 「All files(*.*)」に変更するとEBOOT.nb0ファイルが一覧に表示されます。

hermit-at_win32_opendialog (画像は、Armadillo-440のものです)

次に、書き込むリージョンを選択します。ブートローダーを書き込む場合は、「bootloader」もしくは、「all」リージョンを選択してください。また、上の図のように、ForceLocked もチェックしてください。

実行ボタンを押し、ブートローダーのダウンロードが完了したら、Armadillo の電源を切ってください。電源を切った後に、JP2からジャンパソケットを外し、フラッシュメモリのブートローダが起動するように設定してください。

詳しいフラッシュメモリの書き換え方法は、Armadillo-840 の製品マニュアルに書かれている「12. フラッシュメモリの書き換え方法」を参照ください。

3. Windows Embedded の OS イメージを Armadillo-840/800 EVA にネットワーク転送する

ブートローダーの書き換えが終ったので、続いて OS イメージ(boot.bin)を書き込みます。先程書き込んだブートローダーには、TFTP サーバー機能が含まれていますので、作業用 PC で TFTP クライアントを実行して、Armadillo にネットワーク転送することが可能です。以降の説明では、ブートローダーを "EBoot" と表記します。

EBoot に接続してダウンロードする TFTP クライアントとして、本 Howto では、PumpKIN.exe を使った場合の手順を説明します。TFTP 接続のポート番号を設定する機能があれば、PumpKIN.exe 以外の TFTP クライアントでも利用可能です。PumpKIN.exe は、以下の Web ページから入手できます。(今回使用したのは version 2.7.3):

まず、シリアル通信ソフトを立ち上げ、Armadillo-840/800 EVA に接続してください。 シリアル通信ソフトの接続設定は、Armadillo-400 シリーズに接続する際の設定と同じです。

次に、Armadillo-840/800 EVA に電源を投入してください。EBoot の起動画面がシリアル通信ソフトに表示されます。 「Press [ENTER] to download now or [SPACE] to cancel.」が表示されている間にスペースキーを押すと、EBoot のメニューが表示されます。

Ethernet Boot Loader Configuration:
 
1) IP address: 0.0.0.0
2) Subnet mask: 0.0.0.0
3) Boot delay: 3
4) DHCP: (Enabled)
5) Reset to factory default configuration
6) Save the current configuration
7) Download a new image at startup
8) KITL: (Enabled)
9) VMINI: (Enabled)
D) Download a new image now
L) Launch existing image in flash now
 
Enter your selection:

各メニュー項目名の左側にある文字を入力すると、そのメニューが呼び出されます。以下は、ブートローダーの IP アドレスを 192.168.0.50 にする場合の操作例です。

(IP アドレスを設定)

Enter your selection: 1
Enter new IP address: 192.168.0.50

(ネットマスクを設定)

Enter your selection: 2
Enter new subnet mask: 255.255.255.0

(DHCPを使用しないに設定)

Enter your selection: 4

ブートローダーの IP アドレスを設定したら、d を入力して、OS イメージのダウンロード動作を開始してください。ブートローダーの TFTP サーバー機能が、クライアントからの接続待ちになります。

Enter your selection: d
0th recvBuf= 0xa00c1000, pa= 0x400c1000
1th recvBuf= 0xa00c1800, pa= 0x400c1800
SetupRxDesc() is called, bufSize= 2048
INFO: MAC address: 0-11-C-F-0-B2
System ready!
Preparing for download...
INFO: Using device name: '77400415'
+EbootSendBootmeAndWaitForTftp
Sent BOOTME to 255.255.255.255

次に、PumpKIN.exe を実行して OS イメージのファイルのダウンロードを開始してください。なお、ファイルのダウンロードを開始する前に、TFTP クライアントのポート番号設定を変更し、EBoot に接続できるようにしなければいけません。

pumpkin_window_i

PumpKIN のウィンドウで、Options ボタンをクリックしてください。"Options" というタイトルのダイアログが開きます。このダイアログの、"Newtork" タブをクリックすると、Network 設定画面が表示されます。

pumpkin_option

UDP Ports の "Send outging requests to port" の設定で、ポート番号を 980 にしてください。また、IP アドレスを 192.168.0.50 にしてください。設定後、ダイアログの "OK" ボタンをクリックすると、ポート番号と IP アドレスの変更が確定され、Options ダイアログが閉じます。

PumpKIN の TFTP クライアントのポート番号と IP アドレスを設定変更したら、"Put File" ボタンをクリックしてください。"Send file" ダイアログが開くので、OS イメージファイルと、ブートローダーの IP アドレスを設定してください。OS イメージファイルの名前は、boot.bin です。"Send file" ダイアログの "Local file:" テキストフィールドの右側にあるボタンをクリックするとオープンダイアログが開きますので、ここで、boot.bin ファイルを指定してください。

pumpkin_open_dlg (画像は、Armadillo-440のものです)

"Send file" ダイアログで Local file と Remote host を正しく設定したら、"Send file" ダイアログの "OK" ボタンをクリックして、ダウンロードを開始します。

pumpkin_sendfile_dlg (画像は、Armadillo-440のものです)

ダウンロードが完了すると、PumpKIN の ウィンドウに、完了を示すメッセージが表示されます。ダウンロードの完了を確認したら、"Exit" ボタンをクリックして PumpKIN を終了してください(ウィンドウを閉じても、PumpKIN は終了しません)。

pumpkin_window_f

一方、EBoot は、ダウンロードが完了すると、OS イメージファイルを自動的にフラッシュメモリに書き込みます。書き込みが完了するまで数分かかります。

書き込みが完了すると、EBoot は、再起動を確認するメッセージを表示して停止します。

INFO:  Flashing sequence complete.
NK image stored successfully.
Reboot the system manually.  SpinForever...

4. Windows Embedded を起動させる

フラッシュメモリへの OS イメージの書き込みが完了したら、EBoot を再起動して、フラッシュメモリから Windows Embedded を起動する設定を行います。

EBootが起動して「Press [ENTER] to download now or [SPACE] to cancel.」が表示されている間に、スペースキーを押します。EBootメニュー表示になったら、「7) Download a new image at startup」を確認してください。7 を入力するごとに切り替わりますので、「7) Launch existing image in flash at startup」に合わせます。

Enter your selection: 7

次に、8 を入力して、「8) KITL: (Enabled)」 を 「8) KITL: (Disabled)」 にしてください。

Enter your selection: 8

最後に、6 を入力して設定内容をフラッシュメモリに保存してください。

*** +StoreEBootCFG()
INFO:  Storing boot configuaration in NOR flash (addr = 0xb0040000, size = 0x200)
INFO:  Boot configuration successfully stored.

Windows Embedded の起動方法は、Eboot メニューから「L) Launch existing image in flash now」を選択するか、 Armadillo の電源を再投入した後、スペースキーを押さないままでいると、自動的に「7) Launch existing image in flash at startup」が選択され、フラッシュメモリから Windows Embedded を起動します。 起動が完了して、液晶パネルに Windows Embedded のデスクトップ画面が表示されたら作業は成功です。

なお、EBoot が Windows Embedded を自動起動するまでの待ち時間は、デフォルトの3秒から変更できます。EBoot のメニュー表示後、2 を入力すると、待ち時間を変更できます。待ち時間を無くすには、0 を設定してください。

 Selection: 3
 
Enter maximum number of seconds to delay [1-255]: 0

待ち時間の設定を変更したら、6 を入力して設定内容を保存してください。EBoot の待ち時間を 0 にすると、Armadillo に電源を投入して Windows Embedded の起動が完了するまでの時間が、5~6秒程度になります。

なお、EBoot の待ち時間を 0 に変更した後、再び設定変更したい場合には、Armadillo に電源を投入する前に作業用 PC のスペースキーを押して、スペースキーを押したまま Armadillo に電源を投入してください。

サポートデバイスの状況

Windows Embedded Compact 7 では、以下のデバイスを使用することができます。

  • 有線LAN
  • USB メモリ
  • USB マウス(※タッチパネルも使えます)

本 Howto で紹介した OS イメージを Armadillo-840 で使用する場合、液晶モデル開発セットが必要です(評価版 BSP での制限により、HDMI 接続ディスプレイには、対応していません)。

既知の問題点

Windows Embedded Compact 7

  • バージョン 20150325
    • このバージョンでは、Armadillo-800 EVA に対応していません。
    • バージョン 20150917 は Armadillo-800 EVA に対応しています。

Appendix 1: Windows Embedded Compact 7 の OS イメージのビルド

本 Howto で使用した OS イメージを生成するためには、

  • Windows Embedded Compact 7 の開発ツール
  • Armadillo-840/800 EVA 用の BSP(Board Support Package)

が必要です。(ダウンロードファイルに評価版の BSP が含まれています) Windows Embedded Compact 7 の開発ツールは、 から評価版を入手できます。