last update 2017年1月3日 9:16

MediaTek製SoC向けのFlash Toolを使ってみた(仮想Windows 7環境で)

mediatek_flashtool_3_sh

色々あって、MediaTek製SoCを搭載したAndroid機用のFlash Toolを使う機会があったので、情報を共有しておきます。

メーカーから送られてきたのは以下の3ファイル。

mediatek_flashtool_9_sh

  • 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 にドライバをインストールしようとしたところ、「デバイスドライバのインストールウィザードを完了できません」エラーが出てインストールできませんでした。
mediatek_flashtool_10_sh

メーカーに確認したところ、このドライバはWindows 7以前にしか対応していないとのことでしたが、うちには Windows 7 の入ったPCなんぞ長らくありません。どうしたものかと考えて、仮想マシンから無理やりスマホをUSBで認識させることに。

ホスト側で認識していないUSB機器を仮想環境から認識させる。という荒業は、昔は VirtualBox でしかできなかった記憶がありましたが、今は VMware でもそういうことができてびっくり。つーことで、余ってる Windows 7 のライセンスを VMware にぶち込んで、普通にドライバをインストール。

MediaTek向けFlashToolでのROM焼き

mediatek_flashtool_4_sh

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 が起動してダウンロード処理が始まるところです。
mediatek_flashtool_8_sh

最近あんまりROM焼きした記憶がないのでアレですが、Xperia 向けの FlashTool はこんな風じゃ無かった気がするので面食らいました。

うちの場合、Android 側を再起動すると「MediaTek PreLoader USB VCOM(Android)」というデバイスが認識されて、処理が始まりました。

mediatek_flashtool_5_sh

仮想環境からROM焼きする場合、この仕様がなかなか厄介で、ホストから仮想環境に素早くUSBの接続先を変える必要があります。ひょっとすると一度ホスト側から切断したステートを覚えてくれるのかもですが、うまくいかない場合でも根気よく頑張ってみることが大事です。もちろん、仮想環境でなければ、こんな苦労は必要ありません。

FlashTool で作業指示を出してからAndroid端末を再起動すると作業開始。という仕様と、Scatter File の場所は分かりにくいかもなので、このあたりは覚えておくと便利でしょう。

ちなみにAndroid 側を分析して Scatter File を無理やり作る方法とかとかは、以下のサイトさんのツールが便利です。

また、ROM焼きの際は、NVRAM に格納されている IMEI や Mac アドレスの上書きについては意識しておくべきです。

コメントを記入