文珠川慧久の道楽帳2

turezure naru mama ni

XPERIA Z Ultra (Model: C6833) プラスエリア化及びエリアメール対応の「みおふぉん」にする

2015-09-23 | Android
第4版 2015-09-23 災害用キットの動作確認できました
第3版 2015-05-03 DIAGモード突入のコツ追加
第2版 2015-04-12 エリアメール(緊急地震津波警報)受信機能追加
第1版 2015-03-28 主にプラスエリア化

XPERIA Z Ultra (Model: C6833) をプラスエリア化及びエリアメール対応にする際に、最も頼りにするべきブログは下記だと思います。
THE BOOLEE STREET: http://booleestreet.xii.jp/archives/8826


(1) SDK, Device Driver 等すべての環境設定済みにしておく。


(2) root化

【Xperia】各機種ワンクリックroot取得【NX/acro HD/GX/SX ~ Z2/A2 等】
http://cubeundcube.blogspot.jp/2014/07/xperiarootgx-z2a2.html
でうまくいきます。


(3) TAパーティションのバックアップ作業

[Xperia Z3 Tablete Compact SGP621をroot化した]
http://booleestreet.xii.jp/archives/8874
を参考にすればうまくいきます。
TAパーティションをバックアップしておくと、bootloader unlock したあと、必要に応じて re-lock できます。
TAパーティションをリストアすることで、bootloader が re-lock されます。ちなみにこれでDRMキーも元に戻ります。


(4) ドコモ3G(WCDMA)のプラスエリア化

[Xperia Z2 D6503]プラスエリア化してみた。(LTE、3G)
http://booleestreet.xii.jp/archives/8301
Xperia Z Ultra(C6802) エリアプラス対応
http://ameblo.jp/kamekame1980/entry-11677492657.html
[LTE Band19 海外版XperiaのNTTdocomoプラスエリア(800MHz)対応化について]
http://andmem.blogspot.jp/2014/12/international-xperia-nttdocomo-plusarea-band19.html
[Xperia Z Ultra ( C6833 ) をプラスエリア化する]
http://nakayan.jp/14162.html
を参考にして進めるとうまくいきます。
もと(不揮発メモリアドレス 1877 の値は 562950069289856)が以下のとおりの状態です。
 [Bit_07] GSM DCS 1800 band
 [Bit_08] GSM Extended GSM (E-GSM) band
 [Bit_09] GSM Primary GSM (P-GSM) band
 [Bit_19] GSM 850 band
 [Bit_21] GSM PCS 1900 band
 [Bit_22] WCDMA Band I - EUROPE JAPAN & CHINA IMT 2100 band
 [Bit_23] WCDMA Band II - US PCS 1900 band
 [Bit_25] WCDMA Band IV - US 1700 band
 [Bit_26] WCDMA Band V - US 850 band
 [Bit_49] WCDMA Band VIII - EUROPE & JAPAN 900 band
やるべきことは、ここへ Band 6 (UMTS800 いわゆる Japan 800: (830~840 / 875~885))を追加することです。
Band 6 は [Bit_27] WCDMA Band VI - Japan 800 という項目です。
不揮発メモリアドレス 1877 の値を 562950203507584 に設定するということ。


(5) ドコモ4G(LTE)のプラスエリア化

[Xperia Z Ultra C6833]band19 LTE プラスエリアの覚書]
http://booleestreet.xii.jp/archives/8826
に従って進めるとうまくいきます。
不揮発メモリアドレス 06828 のもとの値は、Band 1, 2, 3, 4, 5, 7, 8, 20 が有効ということで 524511 でした。
LTE Band 1, 3, 4, 8, 19 を有効にするにはこの値を 262285 に設定します。
 LTE BAND#
 =========================================
 2 2 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0
 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1
 =========================================
 0 1 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 524511 もとの値
 0 1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 262144 (Band 19 だけ有効に)
 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 262285 (band1、band3、band4、band8、band19)
 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 262149 (Band:1/3/19のみを有効に)
 =========================================
[NOTE1]
EXPANSYSで購入したXperia Z Ultra (C6833)のrootをとっただけで、bootloader unlock は行わないで、3Gのプラスエリア化までは円滑に進みました。ところが、4Gのプラスエリア化ができませんでした。具体的には不揮発メモリアドレス 06828 へ 262144 を設定して Band 19 だけ有効にすると、圏外になってしまいました。そして、不揮発メモリアドレス 06828 へ 262149 を設定して Band 1, 3, 19 のも有効にすると10秒くらいでしょうか周期的に圏外になるように症状が変わりました。
[NOTE2]
教科書として参考にさせていただいた [Xperia Z Ultra C6833]band19 LTE プラスエリアの覚書]には、bootloader unlock 不要だけど root化は必要と書かれていましたが、とりあえず bootloader unlock してから、もう一度 LTE のプラスエリア化の手順を踏んだら、値を設定しても圏外になることがなくなりました。ただし、bootloader unlock したからできたのではなくて、その際に発生する端末のリセットが利いたのかもしれませんが原因は不明です。ちなみに、bootloader unlock は、以下のブログを参考にすればできます。
http://androidaily.blog.fc2.com/blog-entry-1.html
[NOTE3]
ご参考:LTEバンド
http://www.wdic.org/w/WDIC/LTE%E3%83%90%E3%83%B3%E3%83%89
http://www.mvno-navi.com/docomo-mobile-terminal-lte-band
http://www.mvno-navi.com/au-mobile-terminal-lte-band
[NOTE4]
THE BOOLEE STREETを緻密に拝読させていただけば、DIAGモードに突入できますが、念のために、DIAGモードにする際のことにここで再び触れておこうと思います。
C:\Program Files (x86)\Qualcomm\QPST\bin\RF_NV_Manager.exe
というコマンドでRF NV Managerを開いて不揮発メモリのレジスタ値を変更するには、XPERIA本体をDIAGモードにしなければなりません。それには、THE BOOLEE STREET ブログ様に書かれているとおり、adb shellでsuしてDIAGモードに入れるコマンドを打ちます。
>adb shell
$su
#setprop persist.usb.eng 1
です。
こうしておいてからXPERIAの設定で、USBデバッグ□にチェックをON/OFF/ONしてやります。Windows側では、デバイスマネージャーのモデムのところにHTC CorporationがあればDIAGモードに入っていると確認できます。


(6) 現在つかんでいるバンドを数値表示する機能 (Tech Mode by Sony)をゲットするため純正UK版のROMを焼く

Tech Mode by Sony という機能があり、これを使うと端末単体で、現在つかんでいるWCDMA及びLTEのバンドを数値表示できます。
この機能があれば、プラスエリア化が機能しているかどうか、端末単体でも確認ができるというわけ。
この機能はバンド番号を表示するのではなくARFCNとかERFCNといったパラメタの値を表示するので、その数値をバンド番号に変換する必要があります。変換機能を提供しているウェブサイトもありますしAndroidアプリもあります。
この機能は、電話アプリから *#*#386#*#* 又は *#*#585*0000#*#* をダイヤルすることで発動します。
ちなみに、小生がEXPANSYSから購入したグローバル仕向け XPERIA Z ULTRA (C6833)のROM Versionは、1274-8613_R8C で Hong Kong 仕向け(Customized HK)Release 14.4.A.108 ですが、この機能は発動いたしませんでした。

[Xperia Z3 Compact D5833 掴んでいる周波数を確認できるようになったらしい]というブログ(URLは下記)を拝見すると、AndroPlusさんのサイトから、band.apk、TechMode.apk、techmode.zip をダウンロードしてきてしかるべく(必要なファイルを/system/app、/system/framework、/system/etc/permissionsにコピー、permissionを「644」に、Dalvik-cache 消去) Xperia Z3 Compact (D5833) ビルド番号23.0.A.2.93 に対して導入することでこの機能を追加できたと記されていた。
http://booleestreet.xii.jp/archives/8575
小生は、Xperia Z Ultra (C6833)へ同じことをやってみましたが機能しませんでした。

[Xperia Z1 CompactでTech Mode by Sonyを使う]というブログ(URLは下記)を拝見すると、Xperia Z1 (C6903)、Z1 Compact (D5503)、Z Ultra (C6833)など、Xperia Z1シリーズで Tech Mode by Sony を使う方法が紹介されています。要するに、14.4.A.0.108 以降の Customized UK の ROM (ftfファイル)を焼くだけだそうです。デフォルトで Techmode.apk が入っているので、電話アプリから *#*#386#*#* 又は *#*#585*0000#*#* をダイヤルすれば Tech Mode by Sony が立ち上がるそうです。電話アプリからいちいち入力が面倒な方は、バンド確認(band.apk)というアプリをインストールすれば一発でOKです。
http://hanpenx914.blogspot.jp/2015/02/z1-techmode.html


XperiFirm ソフトウェアを使い、押っ取り刀で Customized UK 14.4.A.0.108 のファイルをダウンロードし、FlashToolでftfファイルを作りました。ちなみに、XperiFirm (ver 3.6a)は下記URLからダウンロード。
http://forum.xda-developers.com/crossdevice-dev/sony/pc-xperifirm-xperia-firmware-downloader-t2834142/
Customized UK の ROM は下記の通り。
 1275-6410
 United Kingdom
 Customized UK
 14.4.A.0.108 / R4C

FlashTool で XPERIA Z Ultra C6833 へこのROMを焼いてみました。ただし、DATAのwipeは外し、PARTITION, TA, BASEBANDをexcludeしときました。以下その成果をTech Mode by Sonyを発動させた画面キャプチャーとして掲載します。EARFCNの値から実際のバンド番号などの情報を計算してくれるアプリ(EARFCN Calculator)がありますのでこちらもインストールしておくと便利です。


EARFCN = 6100
バンド19(Japan 800 MHz upper)をつかんでいるところ


EARFCN = 1849
バンド3(1800 MHz)をつかんでいるところ


EARFCN = 252
バンド1(2100 MHz)をつかんでいるところ



(7) また root化 です

root化してSuperSUを更新してBusyBoxをインストールして再起動。電話アプリから *#*#386#*#* 又は *#*#585*0000#*#* をダイヤルしたら Tech Mode by Sony が立ち上がりました。


(8) TAパーティションをリストアします

[Xperia Z3 Tablete Compact SGP621をroot化した]
http://booleestreet.xii.jp/archives/8874
を参考にすればうまくいきます。これで bootloader はロックされました。
Bootloader含めて純正ROMなのでbootloaderがロックされていても問題ありません。
ただし、root化されているので、いろいろといじくりまわしているうちに文鎮化させてしまうリスクが伴いますので、救済の道としては bootloader がアンロックされていた方が fastboot で起動できる道を確保できるので好ましいらしい。(勉強不足で確証なし)


(9) Dual Recovery のインストール

TWRP及びCWMを両方しかもbootloaderロック状態で使えるようにします。
ZU-lockeddualrecovery2.8.3-RELEASE.installer.zip をインストール。
http://nut.xperia-files.com/
それから、どのリカバリをプライマリにするかとかRecoveryを起動させるなどのために、NDR Utilsというアプリをインストールするととても便利です。GooglePlayStoreにあります。


ちなみに、上記は Android 4.4.4 できちんと動作いたしますが、古いバージョンのDual Recoveryだと /system をマウントできない病の症状が出るそうです。たとえば、
XZU-recovery4-Windows.zip
は、Android 4.4.4 だと /system をマウントできない病。
Android 4.2 に対応して病気を抑えこんだパッチ済みの CWM6-cDM_v2.5_vfix2.zip があり、こちらには病気の背景説明もありますので参考になります。
http://cubeundcube.blogspot.jp/2014/02/cwmandroid-43-xperiacwm6-cdm-v25-vfix2.html


(10) エリアメール追加(緊急地震津波警報受信機能の追加)

先達の「てくろぐ;IIJのエンジニアによる公式blog」というところに「IIJmioのSIMで緊急地震速報は受信できる?」という報告を見つけました。
URLはここです→ http://techlog.iij.ad.jp/archives/1193

ここに AreaMail_04.00.00001.apk という apk がありますから、それを /system/priv-app/ にコピーして再起動すればエリアメール受信機能がXPERIA Z Ultra (C6833)にも追加されます。なお、IIJのエンジニアによる公式blogの中で、エリアメールの仕組みを説明してくださっていて、とてもわかり易いかったです。
エリアメール機能はシステムアプリとしてodexとペアで提供されており、単純にドコモの機種から抜き出して他の機種へコピーしてもインストールも起動もできません。odexの意味については、このブログで先達が説明してくださっています。
URLはここです→ http://megane84.com/blog/2011/06/05/apk-odex-deodex-baksmali-class-dex/

この apk には、受信したエリアメールを読み出したり、警告音の設定などを行うためのユーザインタフェースがありませんので、Google Play から「ドコモ災害キット」というアプリをインストールします。これで緊急地震及び津波速報を受けることができるようになるらしい。(幸いなことに、現時点で未確認)

これがドコモ災害キットアプリのアイコンです。
   ↓


下はドコモ災害キットを起動したときの画面です。
   ↓


下はドコモ災害キットアプリのアプリケーション情報を表示させたところです。 /system/priv-app/ に入れたapkのバージョンが 04.00.00001 と表示されています。
   ↓

<2015-09-23追記> 
第4版 2015-09-23 災害用キットの動作確認できました
災害及びその警戒をしなければならない状況は、発生しない方がいいのですが、2015年9月10日に台風が来ました。この台風に関する警報が入電し着信音が轟きました。
IIJmioのSIMを入れたSIM Freeのスマホでも、ドコモ災害キットのapkをインストールしてあれば緊急通報を受け取ることができることを確認できました。