2017年7月30日日曜日

完全文鎮と化したFireタブレットのリカバリ その1


こんにちは。



もう2年も前の話になりますが、Wi-Fiルーターを契約した時に、AmazonのFire HD7タブレットが無料で手に入りました。無料でくれるわけですからハイスペックなはずもなく、RAM1GB、1.5+1.2Ghzクアッドコアというローエンドタブレットで、初期状態ではplayストアさえ使えないというポンコツっぷり。


まだAndroidに詳しくなかった頃ですので、3日3晩悪戦苦闘してPlayストアを導入しました。adbって何、recoveryって何…そんなレベルでしたね。今では考えられないことですが、root取りも悪名高いkingrootを使用しました。良い子はマネしないでね。


そんなこんなで紆余曲折の末、Playストアとroot権限のおかげでこのタブレットもかなり便利になったのですが、1年ほど使ってみるとやはりOSがfireOSでは限界があることに気づきます。Androidにも詳しくなったし素のAndroidに近いカスタムROMを焼きたい、そう思っていろいろチャレンジしてみました。



出来上がったのは文鎮でした。



rootは取ってあるのでTWRPを導入するのは簡単だったのですが、stockなOSをwipeしていざカスタムROMを焼こうとするとエラー。後になってわかりましたが、どうやら私が焼こうとしていたのは第5世代Fire用のカスタムROMで、まあそりゃエラー吐くわなといった感じです。



しかしTWRPのバージョンが古いせいだと思った私は、何を思ったかOSの復元もバックアップイメージの作成もせずに直接リカバリを焼き直します。そしてここでも似たようなミスをやらかすワケです。私が焼いたのは第3世代Fire HD7用のリカバリイメージ(私の機種は第4世代)で、当然機種が異なるわけですからリカバリなんて起動するはずもありません。




つまり私はOSとリカバリを同時に吹っ飛ばしてしまったというわけです。



電源を入れてもAmazonロゴでブートループ。人生初の文鎮が出来上がりました。



さて、話が逸れますが、Fireタブレットの文鎮化はふつうソフト・ブリック、半文鎮というもので、アプリケーションの競合やOSの不具合によって生じるものです。この場合は、リカバリからファクトリーリセットをかけるか、adb sideloadでROMを焼き直せば復活します。これは他の記事でもよく書かれている内容でしょう。



しかし私のFireはOSどころかリカバリも存在しないワケですから、本体だけではどうしようもありません。これは困った。本体操作が出来ないのならばPCに繋げば何とかなるだろうと高をくくっていたら、PCに繋いでも認識と切断を永遠に繰り返しています。認識すべきOSが存在しないのですから当然と言えば当然ですが、そのためadbコマンドはおろかfastbootコマンドすら使えません。



ハード・ブリック、完全文鎮の完成です。



しかし諦めてはいけない。「Amazonロゴでブートループ」ということは、Amazonロゴを表示させるだけの能力はまだ生きているということです。そしてPCに繋ぐと一瞬だけ認識されるということは、OSやリカバリが無くてもとりあえず認識される何かが存在するということです。



そこで、Fireを接続したときの挙動をデバイスマネージャで監視してみると、一瞬だけ認識されるのは「mt65xx preloader」というモノでした。名前から察するに、おそらくブートローダーよりも前に起動して準備をする領域なのでしょう。



いろいろ調べてみたところ、このpreloaderはMediaTek製のSoCを積んだタブレットにのみ実装されている領域のようです。そして専用のドライバを導入したPCとpreloader状態の端末を接続すると、Download Modeという特別なモードになる、とのこと。



さあ希望が見えてきました。このDownload Modeは端末のパーティション(領域)を指定するとイメージファイルを直接焼くことが出来るモードで、これを使って正しいリカバリイメージを焼き直せば復旧が可能です。
次の記事ではその手順を紹介します。




あとで知ったことですが、FireOS5.3.1から5.1.2に、5.1.2から5.0.xにダウングレードした時に出来る文鎮もこれで修復が可能です。この文鎮はブートローダーの不整合によって生じるものですが、このDownload Modeはブートローダーが起動する前の段階で起動するモードです。つまりこのpreloaderを破壊するようなマネをしない限り、ブートローダーを吹っ飛ばそうがリカバリを吹っ飛ばそうが、Fireは文鎮修復が可能ということです。修復の手順はそれなりに煩雑になりますがね。