Windows 10 IoT Core on HummingBoard Edge
Windows 10 IoT Coreは、組み込みデバイス用に最適化されたWindows 10のバージョンです。 IoTコアは、より少ないリソースを必要としながら、広範囲のMicrosoft IoTサービスとソリューションを提供し、組み込みシステムにむいています。 このOSの詳細については、こちらのMicrosoftの開発者ページをご覧ください。 このプラットフォームはAzure認定も受けています。
SolidRunでサポートされているプラットフォームは、NXP i.MX6 SoCベースの HummingBoard Gate / Edgeです。
サポートされている機能について
NXP i.MX6 |
|
Audio |
✓ |
GPIO |
✓ |
I2C |
✓ |
Ethernet |
✓ |
SPI |
✓ |
Display |
✓ |
UART |
✓ |
USB |
✓ |
PCIe |
✓ |
MIPI-CSI |
N/A |
Graphics/Video |
Software-rendered |
GPS |
N/A |
Wi-Fi/BT |
N/A |
Trusted I/O |
✓ |
Processor power management |
✓ |
TPM |
✓ |
Secure Boot |
Under development |
PWM |
✓ |
JTAG |
✓ |
eMMC |
✓ |
SDHC |
✓ |
ダウンロード
以下に、特定のHummingBoard構成用のビルド済みイメージがあります。
Product Link
NXP i.MX6 Solo https://images.solid-build.xyz/IMX6/Windows%2010%20IoT/HB_Edge_Solo.ffu
NXP i.MX6 Dual-lite https://images.solid-build.xyz/IMX6/Windows%2010%20IoT/HB_Edge_Dual-Lite.ffu
NXP i.MX6 Quad https://images.solid-build.xyz/IMX6/Windows%2010%20IoT/HB_Edge_Quad.ffu
注意
提供されているWindows 10 IoT Coreイメージは、運用前/開発目的でのみ使用され、商品化はできません。 現在のバージョンのOSは開発用であり、配布もできません。
HummingBoardに載せられているCPUのタイプに合ったリンク先のイメージをダウンロードしてきます。ファイルは拡張子から分かる通りFFUとなっています。FFUはマイクロソフトがボードをフラッシュして出荷する用途でつくられたものです。マイクロソフトのさいとの説明では
「完全なフラッシュ更新 (FFU) イメージ形式を使用して、工場で高速な Windows をデプロイします。 FFU イメージを使用すると、Windows、回復、およびシステム パーティション情報をすべて一度に直接別のドライブを含む、物理ドライブのイメージを適用できます。」
とあります。
通常のHummingBoardやCuBoxのイメージはそのままuSDに書き込むだけですが、FFUイメージはそのままでは使えません。
マイクロソフト環境に詳しい方であれば、FFUと分かればサクサクとできてしまうことでしょう。また、今後Windows 10 IoT Coreに慣れ親しもうという方はWindows イメージングおよび構成デザイナー (ICD) などで作業されればよいかと思います。ここでは、手っ取り早くARMのボードで動かしたいということでLinuxで解決しようと思います。
FFU2img.py
本題はFFUファイルをイメージファイルに変換することです。
Githubにその機能をもっているツールがあります。
https://github.com/t0x0/random/wiki/ffu2img
Pythonのツールとなっています。LinuxPCでは、一般的に通常Python (2系、もしくは3系)が載っていると思います。もし載っていない場合にはPythonをインストールください。2系でも大丈夫ですが、もし、これを機会に3系に移行してみよう、というのも勉強になるのでやってみてはいかがでしょう。
ファイルの置き場所にもよりますが、
> python ffu2img.py HB_Edge_Quad.ffu HB.img
などとしてイメージファイルを作成できます。エラーがあれば、Python環境によるものかなどその原因を突き止めてください。
ここの例では、同じフォルダにHB.img というイメージが作成されます。
LinuxPCにμSD(8GB以上) を挿入して、
> fdisk -l
としてマウントされたディスクを見ます
例: /dev/mmcblk0
> dd if=./HB.img of=/dev/mmcblk0
のようにして書き込みます。いつも注意を促すのですが、dd は大変危険なコマンドです。
へたをすると今動かしているPCをも一瞬で破壊します。[ENTER]前には何度も確認してください。
uSDへの書き込みがおわればボードへ挿して普通に立ち上げることができます。
今回使用の機材は HummingBoard Edge iMX6Quad エンクロージャ付です。