WindowsPEメディアを通してマザーボードのIntel MEをアップデートする

ASUSの600シリーズ(Z690/H670/B660)のマザーでintelの第13世代Coreを使用する場合、BIOSを更新してもIntel MEの更新をしないと、
・CPU直結のM.2SSDが認識されない
・メモリが半分しか認識されない
・CPUクロックの低下
などの様々な不具合に直面するようです[^1]。Intel MEの更新は通常、起動したWindows環境下から実施しますが、上記の不具合が生じている環境下でのアップデートは面倒です。
そこで、メインOSを起動することなく、ブータブルUSBから起動できるWindowsPE（WinPE)上でIntel MEのアップデートを行う方法を紹介します。

# Intel MEドライバーの入手
WindowsPE環境にはデフォルト環境でIntel MEドライバーが組み込まれていないので、個別にインストールする必要があります。

Intel MEドライバーの入手先：
[https://www.intel.co.jp/content/www/jp/ja/download/682431/intel-management-engine-drivers-for-windows-10-and-windows-11.html](https://www.intel.co.jp/content/www/jp/ja/download/682431/intel-management-engine-drivers-for-windows-10-and-windows-11.html)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/4b228eef-c312-98cc-d964-60aa434d61c5.png)

上記サイトからダウンロードしたzipを解凍し、`MEI`と`SOL`フォルダを
作業フォルダ（以下、例として`C:\intelme\`というフォルダを用意）へコピーしてください。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/97200170-80c7-b1ef-1452-5cbd24a2eb60.png)
↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/30d67970-3bff-004f-8ce5-1d540a71234c.png)


# WindowsPE環境の整備

@SkyLaptorさんの記事によくまとめて頂いているので、以下の記事の`WindowsPEメディアを作成する`で「展開およびイメージングツール環境」からイメージをマウントし、様々なパッケージの追加や設定を行う所まで進めてください。

https://qiita.com/SkyLaptor/items/204245cf6bb4fee5b19d

イメージがマウントされた状態で、Intel MEドライバーの追加を行った後にアンマウントします。

```batch:IntelMEドライバーの追加
set WS_DIR=C:\winpe
set ADK_PATH=C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit
set ADK_PACK=%ADK_PATH%\Windows Preinstallation Environment\amd64\WinPE_OCs

rem WindowsPEベース準備
copype amd64 "%WS_DIR%"

rem WindowsPEのマウント
Dism /Mount-Image /Imagefile:"%WS_DIR%\media\sources\boot.wim" /Index:1 /Mountdir:"%WS_DIR%\mount"
rem ・
rem ・（各種パッケージの追加、タイムゾーン設定など。省略）
rem ・

rem Intel MEドライバーの追加
Dism /Image:"%WS_DIR%\mount" /Add-Driver /Driver:"C:\intelme" /Recurse /ForceUnsigned

rem WindowsPEの変更適用とアンマウント
Dism /Unmount-Image /Mountdir:"%WS_DIR%\mount" /Commit
```
# USBメモリへの書き込み
使用するUSBメモリをPCへ接続し、イメージをUSBに書き込みます。
元のデータは全て削除されるので注意してください。これでブータブルUSBの完成です。
```batch:USBメモリへの書き込み
set WS_DIR=C:\winpe
makewinpemedia /ufd "%WS_DIR%" {USBメモリのドライブレター}:
rem 例: makewinpemedia /ufd "%WS_DIR%" F:
```
なお、書き込み時に`WinPE ERROR: Failed to format`というエラーが発生する場合は、上記手順に先立ち、以下の手順でdiskpartを使ってUSBメモリのフォーマットが必要になります。
```batch:DiskpartによるUSBメモリのフォーマット
Diskpart
rem ディスク一覧を表示し、ＵＳＢメモリに対応するディスク番号を特定
list disk
select disk {USBメモリに対応するディスク番号} 
rem 例：select disk 5
clean
convert MBR
create partition primary
format fs=fat32 quick label="WINPE"
exit
```
# マザーボードに対応する最新Intel MEの入手
[ASUSのサポートページ](https://www.asus.com/jp/support)から、該当するマザーの最新の`MEUpdateTool`をダウンロードしてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/ee1050d6-dbc8-92c3-2769-2afddfce0553.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/b0cc4343-c70e-2bb8-1d0e-ef216db2df62.png)

ダウンロードしたzipを解凍し、`FW`フォルダをWindowsPEを書き込んだUSBメモリへフォルダごとコピーして下さい。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/0457ee90-6ac6-9891-4c74-417b24c0a9a0.png)
↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1350685/7c9197a5-4d19-f703-c5e5-997fdff48a5f.png)

これで事前準備は完了です。

# WindowsPE環境からのIntel MEのアップデート
該当するマザーを搭載したPCに準備したUSBメモリを接続し、ブートローダよりUSBメモリを選択、WindowsPE環境を起動します。起動したコマンドラインを使用して、以下の手順でIntel MEをアップデートしてください。
```batch:WindowsPE上のコマンドラインによるIntelMEのアップデート
rem ドライブレター一覧を表示し、USBメモリに対応するドライブレターを確認
echo list volume | diskpart
rem 実行ファイルを呼び出しIntel MEをアップデート
{USBメモリに対応するドライブレター}:\FW\FWUpdLcl64.exe -f {USBメモリに対応するドライブレター}:\FW\ME.bin
rem 例：J:\FW\FWUpdLcl64.exe -f J:\FW\ME.bin
rem ドライブレターはWindows上で見ていたものから変わっている事がある点に注意。
```
以上でアップデート完了です。再起動し、マザーのBIOS UEFI画面からIntel MEのバージョンがアップデートされていることが確認できれば成功です。

# その他参考文献

https://qiita.com/re3turn/items/e0258e219b7fd2be895e

https://learn.microsoft.com/ja-jp/windows-hardware/manufacture/desktop/winpe-create-usb-bootable-drive?source=recommendations&view=windows-11

https://github.com/iperdomo/update-intel-me-using-linux

https://social.technet.microsoft.com/Forums/ie/en-US/541095fd-b1b9-4143-8c64-71f9e932bec4/winpe-error-failed-to-format-quotgquot-diskpart-errorlevel-2147024809-when-creating-an-usb?forum=win10itprosetup


[^1]: https://techracho.bpsinc.jp/baba/2022_11_04/123528