mamiba blog

PC関連から、日常のことまで、思いつくままに何でも扱います

SOL23(Xperia Z1) SONY

SOL23のSIMロック解除、カスタムROM導入など

備忘録として。
やる場合は自己責任で。

さすがはXperiaなのか、非常に詳しく手順が書かれたサイトがあり、うちで書いておく必要が全くないと言っても過言ではないほど。
(うちは丁寧に書くつもりはないし・・・)

まず環境から。
Windows7 64bit
SOL23 ROMのバージョンは14.1.C.3.95

ドライバはインストールしておく、というかPCにSOL23を接続して、PC Companionをインストールすればドライバも入るようです。
PC Companionも必要なので、事前にやっておく必要がある。

  1. FTFファイルの作成。
    PC Companionで復元を途中までやると、一時ディレクトリ(C:ProgramDataSony MobileUpdate Enginedb13740270blob_fs ※隠しファイルの表示をしないと出てこないので注意)に最新バージョンのイメージが落ちているので、それを拾って、Flash Tool(Windows Edition : v0.9.16.0 – MD5 : E383FC73A818DDF4EA4E3F4426011A83、ミラーから落としたほうがよさそう、公式遅い)に投げ込んでFTFファイルという形式に変換する感じ。(Fileset Decrypt)
    Flash Toolは32bitを使ったほうがよさそう。(64bitのWindowsでも32bitを使いました。64bitだと後のFTFのFlashで失敗したりしました。)
  2. cwm_prerooted_Z1.zipの作成。
    こいつは最後にFlash Toolで希望のROMをFTF形式から焼きこむ場合に事前にCWMでぶち込んでおくことで、その導入したいROMのroot取得の脆弱性が防がれていたとしても、root取得できるようにするモノ、という理解。
    作り方は、元となるcwm_prerooted_Z1.zipをどっかでゲットして、それに
    C:ProgramDataSony MobileUpdate Enginedb13740270blob_fssystem_S1-SW-LIVE-6732-PID1-0005-MMC.sin
    C:ProgramDataSony MobileUpdate Enginedb13740270blob_fskernel_S1-SW-LIVE-6732-PID1-0005-MMC.sin
    をFlashToolのSinEditorでExtract dataしたもの(以下)
    kernel_S1-SW-LIVE-6732-PID1-0005-MMC.elf
    system_S1-SW-LIVE-6732-PID1-0005-MMC.ext4
    をそれぞれ
    kernel.elf
    system.ext4
    にリネームして、7zipで元のcwm_prerooted_Z1.zipにAddして終わり。
    少しめんどい。
  3. 海外のroot取得が可能なバージョン(14.1.G.1.534)のftfからkernelとsystemを焼く。
    これはFlash Toolで普通に焼くだけ。
  4. SIMロック解除を行う。*#*#7465625#*#*でNCKコード入力するだけ。
  5. rootはワンクリでおk。私はrootkit for Z1-fixed2.7zを使用。
  6. CWMもバッチで一発でおk。私はXZU-recovery4-Windows.7zを使用。
  7. CWMからcwm_prerooted_Z1.zipを焼く。
  8. Flash ToolでSOL23のFTFからkernelのみ焼く。
  9. cwm_prerooted_Z1.zipにより、root化された状態になるので、CWMを再導入する。(SOL23のFTFを焼くとCWMが消されます)
  10. auROMの状態でdocomoのSIMを入れて、ネットワークモードを海外自動にしてからベースバンドファイル
    /dev/block/platform/msm_sdcc.1/by-name/modemst1
    /dev/block/platform/msm_sdcc.1/by-name/modemst2
    /dev/block/platform/msm_sdcc.1/by-name/fsg
    を抜き出しておく。(使わないかもしれないけれど)
    抜き方はadb shellのsuで以下のとおり。
    dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst1 of=/ext_card/cwm/modemst1.img
    dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst2 of=/ext_card/cwm/modemst2.img
    dd if=/dev/block/platform/msm_sdcc.1/by-name/fsg of=/ext_card/cwm/fsg.img
    抜き出したbasebandはTitaniumBackupでupdate.zipを作って中身を改変、とか、公開されてるCWM用ZIP(cwm_prerooted_Z1.zipでいい)の中身を改変などを行い、CWMから焼けるようにしておく。
    updater-scriptは以下のような感じ。(動作未確認)
    ui_print("update baseband.");
    package_extract_file("modemst1.img", "/dev/block/platform/msm_sdcc.1/by-name/modemst1");
    package_extract_file("modemst2.img", "/dev/block/platform/msm_sdcc.1/by-name/modemst2");
    package_extract_file("fsg.img", "/dev/block/platform/msm_sdcc.1/by-name/fsg");
    ui_print("finished.");
  11. この状態(auROM+rooted+CWM)のバックアップをCWMから取っておくとよい。(CWMを起動してbackupしておく。内部メモリではなくSDカードにとっておくと内部メモリに比べて遅いけど、保存にはいいかも。)
  12. カスタムROM(2chのakiって人のROMの04?)をCWMからぶち込む。
    うちの子は最初は安定しなかった。(接続がぶちぶち切れる事態が発生、auROMで海外自動にしてても発生した)
    設定のモバイルネットワークからLTE/3Gにして、*#*#4636#*#*でWCDMA preferredに一度してから、APNを入力したら安定した。*#*#4636#*#*のは自動的にUnknownに戻る。(Unknownって何だろうねw)
    最初は安定するまで時間が掛かるのかもしれない。
    CWM導入もしたので、再起動もしてる。必要かもしれん。
    このカスタムROMを導入すると、CWMが消えてしまうので、再度CWMを導入する。
  13. この状態(カスタムROM+CWM)をCWMでバックアップしておくとry。
  14. おしまい。

プラスエリア化も近々やるかな。

-SOL23(Xperia Z1), SONY