MediaTek製SoC向けのFlash Toolを使ってみた(仮想Windows 7環境で)
色々あって、MediaTek製SoCを搭載したAndroid機用のFlash Toolを使う機会があったので、情報を共有しておきます。
メーカーから送られてきたのは以下の3ファイル。
- S7_4g_20161219212447_v1.7.zip (ROM本体)
- SP_Driver_v2.0.rar (USBドライバ)
- SP_Flash_Tool_exe_Windows_v5.1624.00.000-P.zip (MediaTek用FlashTool)
流れとしては、まずPCにドライバをインストールして、スマホとPCをUSBで接続、その後、設定をしてから Flash Tool でROMを焼く形です。
VMwareの仮想Windows 7環境からスマホをUSBで認識させる
ということで、さっそく Windows 10 にドライバをインストールしようとしたところ、「デバイスドライバのインストールウィザードを完了できません」エラーが出てインストールできませんでした。
メーカーに確認したところ、このドライバはWindows 7以前にしか対応していないとのことでしたが、うちには Windows 7 の入ったPCなんぞ長らくありません。どうしたものかと考えて、仮想マシンから無理やりスマホをUSBで認識させることに。
ホスト側で認識していないUSB機器を仮想環境から認識させる。という荒業は、昔は VirtualBox でしかできなかった記憶がありましたが、今は VMware でもそういうことができてびっくり。つーことで、余ってる Windows 7 のライセンスを VMware にぶち込んで、普通にドライバをインストール。
MediaTek向けFlashToolでのROM焼き
PCにUSBドライバがインストールできたら、そのまま FlashTool を起動して「Download」タブを開きます。
「Download-Agent」には、FlashTool と一緒に配布されている「MTK_AllInOne_DA.bin」を指定。
「Scatter-loading File」には、ROMを解凍した中に含まれている「MTnnnn_Android_scatter.txt」を指定します。ファイル名は機種によって変わります。
事前準備は以上です。
これで、「Format」「Download」「Memory Test」「ReadBack」などの機能を使えるようになりました。
ROM焼きをする場合は、Format → (端末への)Download という流れ。
MediaTek 向け FlashTool の面白いところは、FlashTool の「Download」ボタンを押してから、Android 端末を再起動すると Preloader が起動してダウンロード処理が始まるところです。
最近あんまりROM焼きした記憶がないのでアレですが、Xperia 向けの FlashTool はこんな風じゃ無かった気がするので面食らいました。
うちの場合、Android 側を再起動すると「MediaTek PreLoader USB VCOM(Android)」というデバイスが認識されて、処理が始まりました。
仮想環境からROM焼きする場合、この仕様がなかなか厄介で、ホストから仮想環境に素早くUSBの接続先を変える必要があります。ひょっとすると一度ホスト側から切断したステートを覚えてくれるのかもですが、うまくいかない場合でも根気よく頑張ってみることが大事です。もちろん、仮想環境でなければ、こんな苦労は必要ありません。
FlashTool で作業指示を出してからAndroid端末を再起動すると作業開始。という仕様と、Scatter File の場所は分かりにくいかもなので、このあたりは覚えておくと便利でしょう。
ちなみにAndroid 側を分析して Scatter File を無理やり作る方法とかとかは、以下のサイトさんのツールが便利です。
また、ROM焼きの際は、NVRAM に格納されている IMEI や Mac アドレスの上書きについては意識しておくべきです。