StreamX GL07S と iijmio で LTE (母艦がWindowsの場合)

うまくいったので忘れる前にメモっておく。

用意するもの:

|file|content|
|----|----|
| [HiSuiteSetup_2.3.55.1.zip](http://www.huawei.com/minisite/hi-suite/) | huawei の ADBドライバ または |
| [STREAM X MTPドライバ・ADBドライバ](http://www.ymobile.jp/lineup/gl07s/driver.html) |  GL07S の ADBドライバ |
| [Android SDK](http://developer.android.com/sdk/index.html#Other) | adbコマンド、fastbootコマンド。下の b207.zip にも入っているのでそっちでもいい |
| emobile-gl07s-root-b207.zip | root化済み cust, boot, system イメージ|
| GL07S_P2_unroot_B207.zip | オリジナル cust, boot, systemイメージ。戻す時用 |
| [P2-6011V100R001C00B021.7z](http://www.huaweiblog.de/huawei_firmware_downloads/ascend-p2-downloads/) | Huawei Ascend P2 ファームウェア。ここからモデムイメージを取り出す |
| [HuaweiUpdateExtractor_0.9.9.3.zip](http://forum.xda-developers.com/showthread.php?t=2433454) | update.zip を展開して *.img を取り出すツール |
| [ext4_unpacker_exe.zip](http://forum.xda-developers.com/showthread.php?t=1921399) | *.img を展開してファイルを取り出すツール |

参考文献

- [さよならEM、STREAM Xでband1をつかめ！](http://d.hatena.ne.jp/nimanpo/20150524/1432468027)
- [GL07S Stream X で Root 化せずに DMMmobile のテザリングに成功](https://ogacha.wordpress.com/2015/05/23/igl07s-stream-x-%E3%81%A7-root-%E5%8C%96%E3%81%9B%E3%81%9A%E3%81%AB-dmmmobile-%E3%81%AE%E3%83%86%E3%82%B6%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%AB%E6%88%90%E5%8A%9F/)
- [GL07SのBootloader Unlockとカスタムリカバリー](http://advancedbear.blogspot.jp/2014/04/gl07s-unlock-and-twrp.html)

手順

1. 母艦にUSBドライバを入れておく
2. GL07S の rooted B207ファーム を焼く
 1. GL07Sをfastbootモードで起動
 2. custom unlock する
 2. fastboot.exe devices で 接続できることを確認
 3. root.bat で cust, boot, system を焼く
 4. 通常起動
 5. rootになれるB207として起動している。
3. GL07S の B217ファーム を入手、アップデート
 1. GL07Sの「システム更新」アプリを実行し、アップデートをダウンロード /sdcard/HwOUC/update.zip
 2. そのまま再起動すると、recoveryパーティションから起動して update.zip が適用されて B217 になるが、再起動地獄に陥る
 3. 1回だけ画面ONのまま何も表示されずに固まったが、電源ボタンを長押ししたら復活した
 4. 音量下を押しながら起動することで fastbootモードに入るので、そのすきに rooted の boot.img を焼き直すことで再起動地獄から抜けて普通に起動できるようになる
 5. rootになれるB217として起動している。emobileのファームではDoCoMo Band1は掴めないため、iijmioのSIMでは LTEではなく 3G でしか通信できない。
4. Ascend P2 のモデムイメージを移植する
 1. 母艦側で 7zip.exe で P2.7z を展開 → HuaweiUpdateExtractor.exe で UPDATE.APP を展開してMODEMIMAGE.img を取り出す → ext4_unpacker.exe で MODEMIMAGE.img から balongフォルダを取り出し
 2. GL07S側で /modem/modem_image/balong フォルダを置き換え (ファイルモードとかオーナーとか気にしなくていいみたい)
 3. 再起動すると DoCoMoのBand1をつかめるようになる。LTEでつながる。
5. テザリング中につながらなくなる問題を解決
 1. USBデバッグモードで接続して、母艦から adb shell で接続する
 2. adb shell から ```content insert --uri content://settings/secure --bind name:s:tether_dun_apn --bind value:s:iij,iijmio.jp,,,mio@iij,iij,,,,,440,10,3,*``` を実行

## StreamX GL07S の起動方法いろいろ
再起動ではなく。いったん電源を切ってからのほうがうまくいくみたい

電源ボタンを押す際に音量上+音量下などを押しつづけていると、押しているボタンによって起動パーティションを選択できる。E-Mobileロゴが表示されたら音量ボタンは離してもOK。

- 音量上/音量下 どちらも押さない → boot領域から起動 (通常起動)
- 音量上/下を押しながら → recovery領域から起動 (リカバリ、アップデート)
- 音量下を押しながら再起動/電源ボタンを押す → fastbootモードで起動
- E-Mobileロゴがでてからも音量下を押し続ける → セーフモードで起動 (たぶん。要確認)

## 失敗したこととか未調査なこととか

* rooted B207 と oridinal B207 の何が違うのか調べてみたい。suコマンドとか superSUとかが入ってるだけか?
* ブートローダーのアンロックコードは本来は [Huawei](http://www.huawei.com/namobile/consumer/support/faqs/detail/index.htm?id=35378)から取り寄せるのが正しい手順らしい。だけど問い合わせてみても、emobileから入手したGL07Sのアンロックコードは教えてくれなかった。
* Huawei P2 は ```fastboot oem unlock UUUUUUUUUUUUUUUU``` でアンロックモードになる。らしいけど、なにをアンロックしてるのかわかってない。どんな効果があるの?
* リカバリパーティションをバックアップせずに TWRP にしてしまった。B207→B217 の UPDATE.APP を実行できなくなった → P2ファームのなかにあった RECOVERY.img を取り出して fastboot flash recovery RECOVERY.img したらなんとかなった。(GL07Sのオリジナルイメージとは微妙に違うようだが、UPDATE.APPを実行できた)
* HiSuiteで EMUI Update しても B217 にできるようだが、中身がちょっと違うみたい。 「システム更新」の UPDATE.zip は104MBくらい、HiSuiteで落ちてきたUPDATE.zip は85MBくらい。まだ調べてない。
* UPDATE.zip の構造に何種類かあるみたい。「システム更新」から落ちてきた UPDATE.APP は単体ではなく別のファイルがあってパッチを当てるようになっている。P2ファームに格納されていた UPDATE.APP は、展開すると各パーティションのイメージがあって上書きするようになっている。

# パーティション構造

調べたら書く。あるいは変更リクエストください。