Nubia Z17 miniのプラスエリア化について書いてみます。M2のプラスエリア化で閃いたことがありやってみたらできました。ちなみにこの手順は取り敢えずNubia Z17 miniでのみ確認できた手順なので他のnubia端末には使いまわせません。最初のエントリで報告した内容ではグローバルromでプラスエリア化が維持できない方法だったので、グローバルrom対応のプラスエリア化手順で修正しています。
注:作業前にTWRPなどから必ずEFSのバックアップを取得し母艦へ保存ください。プラスエリア化作業でなにより重要な作業です。
コンテンツ
Nubia Z17 miniのプラスエリア化について
作業を行う上で必要な前提環境は入手可能な最新のQPST、QXDM3系が入っていること、(それぞれご自身でお調べください。)bootloaderがアンロック出来ており、TWRP導入、root化が出来ていること、Network Signal GuruをGoogleplayよりインストール、QualcommのDiagドライバがインストールできていることです。
TWRPの導入、root化までは下記エントリを参照ください。プラスエリア化はchina romのV1.03で実施しています。
china romはbaiduからしかダウンロードできず、会員登録がないとダウンロードができません。googleドライブに共有をかけているので活用ください。
ドライバのインストール等は下記のZuk Z2のプラスエリア化記事を参考にしていただければと思います。
追記:
今回、china romのフラッシュ→global romのフラッシュで利用可能なバンドがリセットされていることが確認できました。問題の切り分けを行った所、global romに含まれるモデムファームをフラッシュしたタイミングで値が戻っている状況であることがわかりました。結果romとモデムファームの組み合わせでプラスエリア化の可否が決まってくることがわかったのですが、組み合わせ的には以下のような感じです。
romバージョン | モデムバージョン | プラスエリア化 |
v1.03 | v1.03のモデム | ○ |
v2.10 | v2.10のモデム | × |
v1.03 | v2.10のモデム | ○ |
ここである点に気づきました。china romである場合モデムファームの如何に関わらずプラスエリア化が出来て、global romのモデムファームの書き込みのタイミングでefsの値がリセットされ、その後変更を加えてもプラスエリア化が出来ないのであれば、そもそもglobal romをフラッシュするタイミングでモデムファームを書き込まなければよいのでは….といった点です。
そして、試しにglobal romのアップデートスクリプトからNON-HLOS.binを書き込まないよう編集を加え、プラスエリア化が維持されているかを確認したところこれがビンゴ。グローバルromでプラスエリア化が利用可能な環境が維持できていることが確認出来た次第です。
Nubia Z17 miniのプラスエリア化手順
前述の追記を踏まえ確立した手順概要は以下の通り、かなり面倒な手順です。
- root化まで実施
- China romへ書き換え → China romへの書換えは上記手順でインストールしたtwrpからflashすればOKです。
- Diag modeの有効化
- バンドを書き換える
- グローバルromのモデムファームをフラッシュし、グローバルromのモデムファーム抜きをフラッシュ
Diag Modeの有効化
開発オプションからUSBデバッグを有効にした状態でPCへ接続し、コマンドプロンプトから以下を実行します。
- adb shell (USBデバッグの許可が出たら常に許可へチェックを入れ、OK)
- su (rootへスイッチ)
- setprop sys.usb.config diag,adb (Diagポートをオープン)
問題がなければQualcomm HS-USB Diagnostics 901D等でポートがオープンします。
バンドを書き換える
Nubia Z17 miniはband prefでsim1/sim2にそれぞれの値、rf bc configもsim1/sim2にそれぞれの値があります。それぞれに適切な値が設定ができればプラスエリア化は可能です。
Diagモードに入ったら、つぎにQXDMでバンドを書き換えます。QXDMを立ち上げDIAGポートと接続します。optionsのcommunicationsを選択しDiag接続されているポートを選択したらOKをクリックです。画像は使いまわしですご容赦を。
NV managerがアクティブになるので設定を開始します。Multi sim or dual simの部位をチェックしsubscripion idは0を選択します。まずは#946のband preferredから見ていきます。readボタンをクリックすると値が0x04E8になっていると思います。(0xBFFFの場合は#946の設定は必要ありません。)下記の通りInputの値をトリプルクリックから編集し0x0CE8へと書き換えて、Writeをクリックします。subscription id0、id1ともに同様に書き換えてください。
続いて、RF BC Configの#1877へ変更を加えます。#1877もsim1/sim2でそれぞれの値をもっているのでubscription id 0、id 1を変更します。#1877をreadをクリックして読み出します。デフォルトの値は 562950031541123 になっているので、値をトリプルくりっくして 562950169953155 に変更しWriteをクリックします。
以上でバンドの書き換えは終了です。端末を再起動して検証を実施します。
ちなみに変更前と後では下記の差分です。
default
562950031541123
[Bit_00] Band Class 0, A-System
[Bit_01] Band Class 0, B-System
[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_23] WCDMA Band II – US PCS 1900 band
[Bit_26] WCDMA Band V – US 850 band
[Bit_49] WCDMA Band VIII – EUROPE & JAPAN 900 band
プラスエリア化
562950169953155
[Bit_00] Band Class 0, A-System
[Bit_01] Band Class 0, B-System
[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_26] WCDMA Band V – US 850 band
[Bit_27] WCDMA Band VI – JAPAN 800 band
[Bit_49] WCDMA Band VIII – EUROPE & JAPAN 900 band
グローバルromのモデムファームをフラッシュしモデムファームを抜いたグローバルromをフラッシュ
China romのフラッシュ、root化、バンドの書換えが完了したら、次にグローバルromのモデムファームをフラッシュします。
modemのみのflashable zipを作成したのでこちらを利用ください。flashable zipも作成の仕方は7zipで解凍せずにアーカイブを開き\META-INF\com\google\android\配下のupdate-scriptを下記のように編集すれば良いです。要はモデムファームであるNON-HLOS.binだけをflashするように書換えている感じです。
assert((getprop("ro.product.device") == "NX569J"&&getprop("ro.product.name") == "NX569J") || (getprop("ro.product.device") == "NX569H"&&getprop("ro.product.name") == "NX569H"));
ui_print("update image NON-HLOS.bin ...");
package_extract_file("NON-HLOS.bin", "/dev/block/bootdevice/by-name/modem");
次にモデムファームを抜いたグローバルromの作成ですが、グローバルromの入手先はnubiaのサポートページから取得し今度はNON-HLOS.bin のみフラッシュしないupdate-scriptを作成します。7zipでアーカイブファイルを開き、update-scriptから下記行を削除して保存してください。
ui_print("update image NON-HLOS.bin ...");
package_extract_file("NON-HLOS.bin", "/dev/block/bootdevice/by-name/modem");
それぞれをTWRPからフラッシュすれば作業は完了です。
検証
sim1側から検証していきます。検証の手順としては、設定→sim card settings→対象のsimのnetwork typeを3G/2Gへ限定、Network Signal Guruを起動→スリードットのBand LockからWCDMAを選択→band5、band6のみにチェックです。
sim1できました
sim2へsimカードを差し替え、同様にネットワークタイプを3Gへ限定し接続確認を実施します。sim2側はnetwork signal guruでband lockができないので画面を表示したまま電子レンジの中などB1の電波が著しく減衰する場所にいれれば、B6への接続が確認できます。
sim2もOK
設定変更は有効でsim1/sim2でB6が掴めることが確認できました。
まとめ
なんのことはありません。China Romであればプラスエリア化が可能だったのです。Z17 miniは一個前のバージョンまでのグローバルはそのままでbootloaderのアンロックが可能であった為、いちどもChina Romにして試していなかったのが盲点でした。かなり面倒な手順ではありますがグローバルromでも上記の手順でプラスエリア化の維持は可能です。
Nubia Z17 Mini 4GB/64GB Black Global クーポン NUBIAZ17M
その他
レビューもしていますのであわせて参考にしていただければ幸いです。
プラスエリア化おめでとうございます。
家族がZTE AXON7を使っていることもあるのですが、nubiaシリーズはスタイリッシュで気になっていましたので、プラスエリア化できたのは私も嬉しいです。1年以上ブログを拝見させていただいていますが、いろんなツールを使って「改造」するとなるとハードルが高く、mi5のころからやりたかったのですが未だに手は出せていません。過去記事を何度も読み、今回は手を出してみようと目論んでいます。細かいこと、素人丸出しの質問をさせていただくことになるやも知れませんがよろしければまた様々ご教示いただければありがたいです。
しのやん様
土日と検証を繰り返したのですが、ちょっとz17 miniは不完全な形になってしまっています。
引き続き調査します。
しのやん様
コメントありがとうございます。
ご不明な点があればなんなりとご連絡ください。