CHUWI MiniBookのBIOS差し替え

# 概要
UMPCなCHUWI MiniBook↓のBIOSをカスタム版に差し替えた際の覚書．

https://www.chuwi.com/jp/product/items/Chuwi-MiniBook.html

対象としたのは[Indiegogo](https://www.indiegogo.com/projects/minibook-mobile-workstation-in-your-hand#/)や[Makuake](https://www.makuake.com/project/minibook/)経由ではなく，一般販売後の**MiniBook 8100Y (16GB+512GB)**モデル
<font color="Crimson">※N4100モデルではないので注意</font>

出来上がったのは

- 色んな設定を変えられるBIOS化（オリジナル状態では何も出来ない）
- ファンが爆音な状態の回避（バッテリの持ちもマシになる，ハズ）

なMiniBook．
ついでにBIOS差し替えによって生じた

- 指紋認証デバイスが認識されなくなる

という問題も解決した．

ちなみにBIOS画面に行きたい場合は起動時に**ESC**，USBメモリから起動しないなどBootメニューに行きたい場合は起動時に**F7**で入れる．

<font color="Crimson">なおBIOSをイジる作業なので，当然の事ながら**自己責任**です．</font>


# 経緯

経緯としては，

- Windows11に上げたいなぁ
- でも「TPM 2.0がこのPCでサポートされ、有効になっている必要があります。」と言われてシステム要件を満たしてないなぁ…
- BIOSイジってどうにかならないか？
- デフォでは何の設定も出来ないヤツだ…

<img alt="tpm" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/2c750c51-ef72-aad9-830e-ed6519ad87b4.png" width=50% loading="lazy">
となり，BIOSをカスタム版へ差し替えてみたという感じ．


なお結論としては，これではWin11へ上げられなかった（TPM周りの設定を変えても反映されなかった）．
原因は

https://forum.chuwi.com/t/is-it-possible-to-enable-tpm-on-chuwi-minibook/26947

とか書かれてるけど，よくわからず．
結局よくあるTPM 2.0チェック回避でいくしかない模様．

https://forum.chuwi.com/t/installing-windows-11/27913/2

（今の所，未テスト）

# BIOS差し替え

参考にしたのは↓

https://forum.chuwi.com/t/bios-update-mod-unlock/3113

今の所登場しているBIOSは以下の3種な模様．

<dl>
  <dt>オリジナルBIOS</dt>
  <dd>転がっていないので下手に変更すると戻せない</dd>
  <dt>公式BIOS（ファン騒音低減版）</dt>
  <dd>TDPが7W→6.5Wになる形なので計算性能的には低下するとのこと</dd>
  <dt>Unlocked BIOS</dt>
  <dd>色々設定を変えられるminih4x氏版</dd>
</dl>

公式イメージは↓から落とせる．OSイメージもあるので念の為手元に置いておくと安心かも（タイミングを逸するとリンク切れになったりする模様）．

https://forum.chuwi.com/t/topic/3282



## ダウンロード

必要なBIOSやEC(Embedded Controller)を落とす．

公式BIOS（ファン騒音低減版）は[[Minibook][Official Version] Chuwi Minibook drivers,OS,BIOS,EC,tutorial Download](https://forum.chuwi.com/t/topic/3282)の**BIOS: 8100Y**にある
http://www.mediafire.com/file/3r55ugxze1guqh5/8100Y_BIOS.rar/file
から入手可能．
（一度入れてみたけどメニューが増えたりはしなかったので直ぐにUnlocked版へ変えたため，挙動は未確認．）

Unlocked版は[BIOS Update - Mod/unlock](https://forum.chuwi.com/t/bios-update-mod-unlock/3113)のminih4x氏の手順で作れる模様．ただしイジった後のイメージも配布されていたので，それを入手できればそのまま使えて楽．
2022/02現在ではとっくにリンク切れなのだが，スレッドを追っていくと"I found another location"と仰っている方が居るのでまだ手に入る．
コチラは↓この方が置いておいて下さっている模様．

https://note.com/marby/n/n98ad010abc4a

というわけで，minih4x氏とまーびい氏に感謝しながら容易にUnlocked版への差し替えが可能にm(_ _)m

## USBディスクの作成

- **WINPE**というボリュームラベルで**FAT32**にて適当なUSBメモリをフォーマット
- 展開したファイル群をコピー

するだけ．
BIOSでもECでも同様．
<img alt="usb" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/a54e25fe-4d8e-de44-b364-ae085502cc57.png" width=50% loading="lazy">
"Then delete the bios.bin and Startup.nsh from the USB drive. Copy your patched BIOS to the drive and name it bios.bin."とあり，``fs``でドライブ指定して``AfuEfix64.efi bios.bin /p``しましょうと書いてあるのだが，自分の場合は``Startup.nsh``の処理に任せたまま，

- 公式BIOS（ファン騒音低減版）を置いたUSBメモリを用意
- bios.binだけUnlocked版へ入れ替え

で済ませた．
公式BIOSは``8100Y BIOS.rar``の中に``共用BIOS``というディレクトリがあり，その中にまた``Bios2019-09-28.rar``というのがあるので，コレを展開した中身が必要ファイル群．
ECの場合は``2019-09-30日版EC.rar``を展開したままが必要ファイル群．


なお，何も考えず[公式ファイル群](https://forum.chuwi.com/t/topic/3282)の``windows tutorial``というWordファイル
http://www.mediafire.com/file/5hvraiskbjsthi1/Mini_book_installation_windows_tutorial.docx/file
を参考にしてしまうとNTFSと書いてあるので注意．
（コレは**OS of 8100Y**の**Japan version 8100Y**などを入れる時用？）


## 差し替え

- 再起動してUSBメモリからブートがかかるとそのままフラッシュされる

だけ．
（横着してStartup.nshに任せたが，ちゃんと手打ちするなら自前でコマンドを打つ．）

すると，
![FAT32](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/83214dc6-dde2-31dd-34de-cbe3665b90ab.jpeg)
のように処理が進んで終わるので，再起動して``ESC``連打して変わっているか確認する．


<details><summary>ちなみにNTFSだと``Shell: Cannot read from file - 800000000000001F``となってしまった．</summary><div>
![NTFS](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/72e03956-c2c0-0b26-3095-3939a7c84600.jpeg)
</div></details>

ECの場合は
![EC](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/84b938c1-8ea9-14c5-7ff4-901cfe8e94f7.jpeg)
こんなノリで完了する．

そして，公式BIOSでは差し替えても特に変わらないが，Unlocked BIOSにうまく変わっていると
![bios_main](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/04b03e15-60f4-1029-1b5b-5e27b932a55b.jpeg)
という感じに，メニュー大幅増なBIOSを拝める．


## 指紋認証デバイスドライバの復旧

おそらく一連の入れ替えの影響で，指紋認証デバイスが認識されなくなった．
（最初に試した公式BIOSでも起きたし，その後Unlocked BIOSにしても直らなかった．どちらかというとECのせいかな？）
<img alt="hello_fail" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/9ba886eb-6beb-a39a-1e4b-9d355b2a2d95.png" width=50% loading="lazy">
デバイスマネージャを見ると``Intel(R) Serial IO SPI Host Controller - 9D2A``が不明なデバイス扱いとなっている．
<img alt="driver1" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/88ee66b1-6433-a30c-42d2-1ade893531f3.png" width=50% loading="lazy">
これを認識させたい．


### ドライバの準備

ドライバ自体は[Chuwi Minibook 8100y finger print sensor](https://forum.chuwi.com/t/chuwi-minibook-8100y-finger-print-sensor/3854)に公式が置いてくれている
http://chuwi.mediafire.com/file/fob9l4jjgc0iqnm/Fingerprint_driver.rar/file
のだが，これでも認識してくれない．
（なお，このドライバファイルはディレクトリ名が``指纹驱动``と簡体字が混じっているため，解凍ツールやその後必要となる編集時のエディタによっては名前を変更してしまわないと少し厄介かも．）

そこで，↓を参考に復旧を試みる．

https://forum.chuwi.com/t/minibook-8100y-fingerprint-reader-device-missing/15615

この中の[zenbob氏の投稿](https://forum.chuwi.com/t/minibook-8100y-fingerprint-reader-device-missing/15615/8)がドンピシャで，

のように``ACPI\FTE4800``なのに配布ドライバ内の``ftwbioumdfdriverv2.inf``で``ACPI\FTE3600``とズレているためな模様．
そこで，

```conf:ftwbioumdfdriverv2.inf(edited)
[Standard.NTamd64]
%SPIDeviceName%=SPIdevice_Install, ACPI\FTE4800
%USBDeviceName%=USBdevice_Install, USB\VID_2808&PID_9338
%USBDeviceName%=USBdevice_Install, USB\VID_2808&PID_93A8&MI_00
```

を

```conf:ftwbioumdfdriverv2.inf
[Standard.NTamd64]
%SPIDeviceName%=SPIdevice_Install, ACPI\FTE3600
%USBDeviceName%=USBdevice_Install, USB\VID_2808&PID_9338
%USBDeviceName%=USBdevice_Install, USB\VID_2808&PID_93A8&MI_00
```

へと書き換える．
しかし，ご本人様が"I had to enable unsigned driver installation"と仰ってる通り，このままではインストールできない．

### ドライバ署名の強制を無効にした立ち上げ

Unsigned Driverを入れるため，

https://4thsight.xyz/4958

を参考にセキュリティレベルを下げる．
（自分の場合は初めからセキュアブートはオフだったので割愛．）

テストモードを有効にするため，管理者権限のコマンドプロンプトで

```terminal:CommandPromptAsAnAdministrator
> bcdedit /set TESTSIGNING ON
```
![on.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/6d324957-17c8-b9bd-d929-2f66eda7945e.png)
とし，
``設定``→``更新とセキュリティ``→``回復``→``PCの起動をカスタマイズする``→``今すぐ再起動``
で回復オプションメニューに入る．
その後，
``トラブルシュー ティング``→``詳細オプション``→``スタートアップ設定``
<img alt="options" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/658d8350-be7c-524d-0068-8fc33d9a17cd.jpeg" width=50% loading="lazy">
<img alt="ts" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/35e2b635-6e1a-4d83-6d2e-402761dcbe21.jpeg" width=50% loading="lazy">
<img alt="detail" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/dc34c90d-0479-eafc-cd0a-88c5572f3dff.jpeg" width=50% loading="lazy">
<img alt="startup" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/9e850202-1422-fe5d-1984-1335c5b22aac.jpeg" width=50% loading="lazy">
から``再起動``する．
今度はスタートアップ設定メニューで起動するので，リストの内``7) ドライバー署名の強制を無効にする``で起動するために``F7``キーを押す．
<img alt="f7" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/5c1007e9-5b61-a5ee-f6e0-d7cbdaf0658e.jpeg" width=50% loading="lazy">
この状態で立ち上げ，画面右下に``テストモード``
![test_mode.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/25d396fc-8b00-7dbf-9edc-8de6e29c7be9.png)
と出ていればOK．

### ドライバのインストール

``ftwbioumdfdriverv2.inf``の右クリックメニューからインストールしても良いかも知れないが，自分はデバイスマネージャの該当デバイスのプロパティ画面を出し，
``ドライバーの更新``→``コンピューターを参照してドライバーを検索``
から強制的に指定した．
その際，
<img alt="driver3" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/599f3f98-9151-1bcb-2249-8ca8337d08ee.png" width=50% loading="lazy">
の様に警告はされるが，強行すれば
<img alt="driver4" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/d19ae997-30eb-d9cb-f075-fa97682b4afc.png" width=50% loading="lazy">
となってくれる．


### 認識の確認

うまくいけば，デバイスマネージャでも認識されるし，
``設定``→``アカウント``→``サインイン オプション``
に
![hello.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/022ba4e3-a5b0-cab7-ad83-f85bbb2eafa8.png)
と表示され，指紋認証が復活したことがわかる．

### 設定を戻す

```terminal:CommandPromptAsAnAdministrator
> bcdedit /set TESTSIGNING OFF
```
![off.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/f5d0b3ce-0fce-c02b-0f6c-bb4a059c2532.png)
として再起動し，指紋認証でログインできれば解決．


# パフォーマンス周りの設定変更

以下は「とりあえずこうしてみた」という備忘録であり，効果は未確認．
ただし少なくとも「電源接続した状態で起動して置いておくと，何もしていなくてもファン全開になる」という状況は解消した．

## BIOS

起動時に``ESC``連打で入れるBIOS設定画面での変更点．
オリジナルBIOSや公式BIOS（ファン騒音低減版）では無理で，Unlocked BIOSへの[差し替え後のメニュー](#差し替え) でないと変えられない．

### Intel Turbo Boost Technology

``Advanced``→``Power & Performance``→``CPU Power Management Configuration``→``HDC Control``→``Turbo Mode``
を``Disabled``にした．

![advanced](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/a716e62f-b817-d1ef-6b9a-38fdb91e74a2.jpeg)
![power_performance](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/ad5d9508-b213-2b49-ed49-f695aed0bd53.jpeg)
![cpu](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/bd2c0042-e276-a17a-c5ac-7a9f11e8140e.jpeg)

これで``1.1GHz``→``3.4GHz``にはならなくなる（筈だ）が，いつの間にやらバッテリが空だとかいう駆動時間の問題はマシになるかと．
能力不足を感じたら戻すかも知れない．

### TDP周り

変更してないが，先の``Turbo Mode``の下にある``Config TDP Configurations``から色々変えられる．
![TDP](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/bdbc7bf3-18f0-177e-c16c-e33420c2767d.jpeg)

### 温度周り

こちらも変更してないが，
``Advanced``→``Thermal Configuration``→``Platform Thermal Configuration``
から動作に絡む温度関連を触れる．
![thermal_configuration](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/315fdb23-9011-3203-631e-6f782141ae3e.jpeg)
![platform_thermal_configuration](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/7528f0b8-3c6d-413c-7a7d-6f4701c61f74.jpeg)

## Windows側の電源設定

``電源オプション``の``プロセッサの電源管理``について，
``システムの冷却ポリシー``→``パッシブ``
``最大のプロセッサ状態``→``95%``
に変更した．
![95](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438132/2c2d2069-53ad-2d52-8d79-e10957e3ba46.png)
こちらも[Turbo Boost](#intel-turbo-boost-technology) と同様に能力不足を感じたら戻すかも知れない．