31 May 2014

Xperia SP C5303のNTT DoCoMo プラスエリア(UMTS Band VI)対応化

Xperia SP C5303はUMTS Band Vに対応しているが、Band Vに内包されていると思われるBand VIにも対応するように、Qualcommトランシーバ設定を変えてみる。

情報源と仕様ツール類

Xperia SPでのUMTS Band VI有効化の記事 『Xperia SP(C5303)をFOMAプラスエリアに対応させました』で使われているものと同じツールを用いる。

・Qualcomm QPST 2.7 build 402 : XDA Developersからダウンロード
・HTC Diag Drivers : XDA Developersからダウンロード
・mztool 1.2.1a : 本家sourceforgeが消されているのでここからダウンロード
・同上用ライブラリ wxmsw293u_gcc_custom.dll : ここからダウンロード

個人的に、上記4つをまとめた「バックアップファイル」をここに格納した。

QPSTのインストール

Android実機を接続しないで、管理者権限でパソコンにインストールしておく。

HTC Diag Driverのインストール

Xperia MのUSB接続モードを『USBデバッグ』に変更する。変更方法は、「設定」→「開発者向けオプション」→「USBデバッグ」をON。

Xperia Mに『(コンソール)端末アプリ』をインストールし、次のコマンドを実行する。(現在の値を確認したい場合は、getpropコマンドを使えばよい。おそらく、値は0のはず)

$ su
# setprop persist.usb.eng 1

その後、USBケーブルでパソコンに接続する。

Windowsコントロールパネルのデバイスマネジャーを開くと、認識されていないAndroidデバイスがいくつか見つかるはず。

今回の作業で必要なモデムデバイスは、 VID = 0FCE, PID = 5146, MI = 04 のもの。
まず、デバイスのプロパティを開き、VIDとPID, MIを調べる

20140531-windevice02.jpg
デバイスのVIDとPIDを調べる

その値をHTC Diag Driverのinfファイルに無理やり修正・追加して、ドライバをインストール

Win x86\htcdiag.inf
[Models]
%OEMDevice02% = OEMPort02, USB\VID_0FCE&PID_5146&MI_04 
%OEMDevice02% = OEMPort02, USB\VID_0FCE&PID_0C08&MI_01
%OEMDevice02% = OEMPort02, USB\VID_0FCE&PID_0C09&MI_02 
%OEMDevice02% = OEMPort02, USB\VID_0FCE&PID_0C88&MI_02

こうして作ったドライバを無理やりインストールする。その時のデバイスマネージャの表示はこのようになる。

20140531-windevice01.jpg
Windowsデバイスマネージャ (モデムドライバを無理やりインストールした状態)

Qualcomm QPSTの「QPST Configuration」(インストール後にスタートメニューに登録されているはず)を実行して、『Add New Port』を押して表示されるダイアログの『Show Serial and USB/QC Diagnostic ports only』チェックを外して、先ほどデバイスドライバをインストールしたモデムを選択して『OKボタン』を押す。

20140531-qpstcfg01.jpg
QPST Configでモデムを追加する

そうすると、モデムが認識され、Phoneが認識されたらOK

20140531-qpstcfg02.jpg
QPST Configモデム認識 (Phoneが認識されたらOK)

QPST RF NV Managerで設定データを読み出す

前述の作業を行ったQPST Configプログラムを起動したままで、次の作業を行う。

QPSTがインストールされたディレクトリのC:\Program Files\Qualcomm\QPST\bin\RF_NV_Manager.exeを実行する

まず、「Setting」メニューでCOMポートを指定してから、「File」メニューで「Read From Phone」を実行する。10秒程度データの読み出しプログレスバーが表示された後に、次のような画面になる

20140531-nvman-before.jpg
QPST RF NV Manager

1877行目(?)を選択し、設定値コピーしてをmztoolに貼り付ける。(Decimalに設定してから値を貼り付ける。下図の赤で囲んだところ)

20140531-mztool-before01.jpg
値をmztoolに貼り付けて解析

値を貼り付けると、どの周波数に対応しているのか表示される。これらの周波数を、「Band Preference(NV Value)」に貼り付けると、下図のようになる。

20140531-mztool-before02.jpg

正しく(対応周波数が過不足無く)設定されると、赤で囲ったところが、実機の設定値と同じになるはず。

ここで、Band VIを有効化する。

20140531-mztool-after01.jpg

赤で囲ったところの選択を反転している。

このときの設定値が画面下に表示されるので、念の為最初に値を持ってきたタブの方にこの設定値を入力してみる。(コンマは外すこと)

20140531-mztool-after02.jpg

これをQPST RF NV Managerの設定値テキストボックスに書き戻し、すぐ上にある「Write NV」ボタンを押し、「File」メニューの「Write Changed NV Items to Phone」を実行する。 (何のレスポンスも返ってこないが、特に問題ない)

20140531-nvman-after.jpg

QPST RF NV Managerを終了する。

Xperia Mの再起動と、設定値が書き換えられたことの確認

Xperia Mに『(コンソール)端末アプリ』がまだ実行中ならそのままで、そうでないなら su になってから

# reboot

リブート後、再度QPST RF NV Managerで設定値を読み出して、先ほど書き込んだ値となっているのか再確認する。

問題なければ、Xperia M上で『(コンソール)端末アプリ』を実行して

$ su
# setprop persist.usb.eng 0

Xperia Mのメンテナンスモードで対応周波数の確認

ダイヤルパッド(電話)で *#*#7378423#*#* を入力し、情報を表示する

20140531-xperiasp-band6.jpg

確かに、Band VI が表示されている。