【TIPS】OnePlus 7 / 8 / 9シリーズのVoLTE機能を開放せよ!手順を詳しくレポート!

VoLTE開放ってどゆこと?

日本で正規販売されているスマホには高品質な通話ができるVoLTE(Voice over LTE)の制限はかかっていないのですが、海外向けの中華スマホには制限がかかっていることがあります。

VoLTEの設定に対応していない国や地域があるというのが理由だそうです(もちろん中国国内で使う場合には制限がかかっていません。国内正規販売されていないのに輸入して使おうとするのが悪いというロジック)。

このVoLTE閉鎖にはメーカーによって対応が異なります。例えばXiaomiスマホであればも電話アプリで特定のコマンドを入力することで開放できるようになっています。これくらい簡単なら良いのですが、OnePlusは以下に説明するようなわけのわからない難しい手順を踏まないといけません

ということで具体的な手順を解説していきたいと思います。

Android 11でさらに難しく…

さらにAndroid 11(OxygenOS 11)になってからは、さらに制限が強くなり、より面倒になりました(;´д`)トホホ…

2021年5月時点でVoLTE開放には大きく2種類の方法があります。

  1. PDCを使う方法(従来型)
  2. EfsToolsを使う方法

いまだと2の方法をおすすめします(特に楽天モバイルは)。

いずれもPC、ドライバー、USBケーブルなどの環境によって失敗する可能性があります。というかかなりの確率でトラブりますので、時間があるときに作業したほうが良いと思います。あとできれば複数台のPC環境があるのが望ましいです(PC環境要因を切り分けるため)。

でも根気強くやれば、かならずゴールにたどり着けると思います(根拠ない自信…)。

自分で初心者だと思う方は、VoLTEは諦めてドコモかソフトバンク回線で使用する、またはOnePlus 9シリーズ限定ですが、中国向けColor OSで運用する方法をおすすめします⬇。

Color OSだとVoLTEは閉鎖されていない

OnePlus 9シリーズから、中国国内向けのH2OSは廃止されて、OPPOが提供しているColorOSに統合されました。ColorOSは中国国内向け仕様のため、最初からVoLTEが開放されている上、日本語にも対応しています。もちろんOxygenOSのような洗練された雰囲気はありませんし、Google Playをいちからインストールしないといけませんが、実用上の問題はありません。PCレスでスマホのみでインストールできるのも魅力です。

隠れているVoLTEボタンを表示させる(共通)

まずは本来ならばSIM設定の中に表示されるはずのVoLTEのON/OFFボタンを表示させることから始めます。PDC方式、EFSTools方式いずれにも必要です。

まず2つのアプリをインストールします。

1️⃣ Log Kit app’s APKをインストール

下記リンク先からどうぞ。APKファイルなので「この種類のファイルはお使いの端末に悪影響を与える可能性があります」というメッセージが出て警告してきますが、OKします。

>> Log Kit app’s APKをダウンロード

※Logkitは最新のものだとできないことがあるようです。1.0でお試しください。

2️⃣ 電話アプリで魔法の呪文「*#800#」を入力

電話アプリを開き*#800#を入力するとすぐに遷移します。

Screenshot_20200104-224616-464x600.png
上の画像は最後の#を押す前ですのでお間違えなく。

Screenshot_20200103-163234-338x600.png
通常はFactoryModeのみですが、Engineerモード(後述)をインストールしているどちらを立ち上げるか聞いてきますので、FactoryModeを選択します。

Screenshot_20200104-231101-338x600.png
またまた警告画面ですが、無視してENTERを押して進みます。

3️⃣ OnePlusLogKitアプリでVoLET SwitchをONにする

メニューからoneplus Logkitを押すと、OnePlusLogKitというアプリが立ち上がります。
※機種によってはこの画面がでないことがあります。

Screenshot_20200104-231113-1-338x600.png

Function Switchへ進みます。

Screenshot_20200103-100252-338x600.png

Screenshot_20200103-100306-338x600.png

VoLTE switchのチェックボタンをクリックしてマークをつけます。VoWifiは日本では使いみちがないのでOnでもOffでもどちらでも良いです。

Screenshot_20200516-133213-270x600.jpg

「再起動が必要ですか」と聞いてくるのでRebootします。

4️⃣ 設定にVoLTE項目が出現しているのでONにする

システム[設定]→[Wi-Fi&インターネット]→[SIM&ネットワーク]→[SIM1]を開くとVoLTEの項目が現れているのでONにしておきます。再起動を促されるので再起動しておきましょう。

Screenshot_20200103-161622-1-338x600.png

これでOKな気がするのですが、ボタンが現れただけで、VoLTEは機能していません。あるサービス項目が邪魔をしているので、そいつをやっつけに行きましょう・・・

PCとの接続環境を整える(共通)

初期設定ではPCからの制御(デバッグ)を受け付けないようになっていますのでスマホとPCそれぞれに設定しておきます(内部ストレージのマウントは自動で可能)。過去に接続経験のある方はスキップOKです。

1.USBデバッグをONにする(スマホ側)

1️⃣ 開発者オプションを開放する

[設定]→[デバイス情報]→[ビルド番号を7回クリックすると開発者オプションが有効になります。[開発者向けオプション]は[システム]設定の中に現れています。

Screenshot_20210509-002733-320x600.jpg
7回クリック

2️⃣ USBデバッグをONにする

USBケーブルでPCと通信ができるようにUSBデバッグをONにします。[開発者向けオプション]の中にあります。

なおUSBデバックは作業終了後にOFFに戻しておきましょう。銀行アプリなどが使用できなくなります。

Screenshot_20200103-163559-338x600.png

3️⃣ PCとUSB接続できるか確認する

Screenshot_20200516-134432.jpg
試しにPCとUSBケーブルで接続してみましょう。スマホ側にUSBデバッグで接続したよという通知が来ます。このときUSB接続がファイル転送モードになっているか確認しておきましょう。

Screenshot_20200516-134412.jpg
※充電モードになっていて接続できないというミスがよくあります。

Screenshot_20210508-174741-300x300.jpg
続いてこのPCを信頼してよいかという確認(RSA認証)がきますので「許可」しておきます。
※この認証を忘れると、ADB通信のときに「unauthorized」になります。

2.QualcommドライバーをPCにインストールする

OnePlusスマホをWindows PCに接続すると自動でドライバーがインストールされ、内部ストレージがマウントされる状態になります。しかしそれだけでは不十分なようで、Qualcomm製SoC向けUSBドライバーのインストールが必要です。

QualcommUSBドライバーは各種あるのですが、他のツールとまとめてQPST Toolをインストールするのがオススメです。ドライバーだけでよければQUD.WIN.1.1 Installerをどうぞ。

https://qpsttool.com/qpst-tool-v2-7-474

https://androidfilehost.com/?fid=11410963190603864074

※すでにQualcommドライバーがインストールされている場合は競合を警告するメッセージがでることがあります。その場合は、古い方を一旦無効にして下さい。

3. バックアップ(スキップ可)

ここから先はちょっとディープな領域です。安全のためバックアップを取っておきましょう。メンドクセーという方は飛ばしてもいいですが自己責任です。バックアップには次の2種類の方法があります。

  1. QPSTでネットワーク設定を吸い出し、バックアップを取る
  2. リカバリーソフトTWRPを導入してEFSのバックアップを取る

①の方法が比較的簡単ですが、もし間違って設定し、ファイルを壊した場合、復旧できるかどうか少し怪しいところがあります。怖いようであれば①と②両方取っておくことをおすすめします。

(ただよほど乱暴なことをしない限り、OSを焼き直せばほとんどの場合、復旧します。またFTMモードで動かなくなっても電源+音量+同時長押しで、だいたい再起動します。)

ここでは①の方法を紹介しておきます。

1️⃣ QPST Flash toolをインストール

QPSTはQualcommからの流出ソフトであって、公式ソフトではありませんので失敗しても文句を言うのはやめましょう。2で紹介したQPSTツールをダウンロードして下さい。

2️⃣ Portからスマホが接続されているか確認

インストールしたQPSTはアプリ一覧から探すのが早いでしょう。いろいろとアプリがインストールされていますが、まずはQPST Configurationを開きます。

volte7-1.png
PhoneのところにMSM8998のようなSoCの認識番号で表示されればスマホと接続されているとわかります。

volte5-680x424.png

3️⃣ Backup項目へ移動し、QCNファイルを保存

QPSTの上部メニューの[Start Clients]→[Software Donwload]を開きます。タブを[Backup]のタブに切り替えると下記の画面になります。

volte6.png

Browseから保存先とファイル名を指定します。ファイル名は何でも良いですが、OnePlusなどとわかる名称をつけておきましょう。またこのときファイル形式はQCN形式にしておいてください。

セットできたらStartボタンを押します。すぐにバックアップが始まり、1分もかからずセーブできます。もしトラブルがあればRestoreからこのQCNファイルを選択して、復旧ができます(はず・・・)。

これでQCNファイルのバックアップが取れましたが、不安であればEFSのバックアップも取っておきましょう(こちらの方が確実)。

ただEPSのバックアップのためにはリカバリーソフトのTWRPを焼くところから始めないといけませんので、ここでは割愛します。下記リンクをご参考ください。

方法1:PDCを使う

QPST Toolsに含まれているPDCというアプリを使って設定を変更する方法です。PDCへの通信が安定しておらず、PC環境によって失敗することがあるようです。

Android11が主流になってきたため、11を前提に記述しています。
Andoroid 10以下の場合はSTEP.1から4を飛ばしてSTEP.5を参照して下さい。

1️⃣ ドライバーをPCにダウンロード

下記のリンク先のGoogle Driveから次のドライバーをダウンロードしてください。

ダウンロード(Google Drive)

Qualcomm driverフォルダ内の

  • qualcomm-dpl-data-90ed-893819.zip
  • qualcomm-qdss-test-interface-1234-0103-1-1039779.zip

ダウンロードしたZIPファイルは解凍してください。

2️⃣ Windowsの署名チェックを無効化するためにテストモードに

Windowsは署名されていないドライバーを勝手にインストールさせてくれませんので、その設定を無効化します。

コマンドプロンプトで次のコマンドを入力します。

bcdedit /set TESTSIGNING ON

詳しくは下記のリンク先記事もご参考ください。⬇

http://pasofami.game.coocan.jp/Win10_DrvIns.htm

「この操作を正しく終了しました」と出たら成功ですので、PCを再起動します。すると画面右下にテストモードであることが表示されているはずです。

なおテストモードは次のコマンドを入力すればもとに戻ります。

bcdedit /set TESTSIGNING OFF

3️⃣ ドライバーをインストール

先程ダウンロードして解凍したドライバーのファイルの中にあるqcser.infファイルを右クリックからインストールします。

b3fce86f954deb96fcfbc59843e2ab14.png
2つともインストールします。

4️⃣ ADBでFactory Test Modeにしてポートを開く

スマホとPCをUSBで接続します。コマンドプロンプトでADB接続します。ADB環境とはなんぞや?という方は下記記事をご参考ください。そんなに難しくないです。
https://gaddet.com/tips-adb/

ADB接続を確認したら、コマンドプロンプト(またはPowerShell)にて次のコマンドを入力して、Factory Test Modeにします。

adb reboot ftm

するとスマホのディスプレイに中国語でなにか表示されて、しばらくして画面が消えます。続いて次のコマンドを順に入力します。

adb shell setprop sys.usb.config diag,serial_cdev,rmnet,adb

これでディアッグポートが開きました。

5️⃣ (Android10の場合)通信をシリアルモードにする

エンジニアモードをインストールします。

https://www.apkmirror.com/apk/oneplus-ltd/engineermode/engineermode-v1-01-0-171117173719-25c8842-release/engineermode-v1-01-0-171117173719-25c8842-android-apk-download/

続いて電話アプリで*#801#を押します。
Screenshot_20200105-165641.png

今度はEngineerModeを選択します。

Screenshot_20200103-163234-338x600(1).png
メニューが現れますので、このうちFull-port switchをONにします。

Screenshot_20200103-163736-1-338x600.png
ONにするのはFull-port switchのみです。Serialを触わるとアプリがクラッシュすることがあります。

6️⃣ PDCアプリを開く

PDCはQPSTのフォルダに入っています。

※うまく接続できないときは「管理者として実行」でアプリを開いてみてください。

5d2d408f1f04e7976a5ff4c2bcb4cf0e.png
アプリを開くと次のような画面になります。Deviceのタブが最初は空白になっていますが、プルダウンからQualcomm〜がでてきますので、選択します。

volte8.png

※PDCで接続されているかの確認

デバイスマネージャーを開いて、ポート(COMとLPT)にQualcomm HS-USB〜と出ていれば接続できるはずです。出てなければドライバーが上手くインストールできていないと思われます。
pdcconnection.jpg

7️⃣ Oversea-Commercial DSを取り除く

下記のように各サービスの一覧が表示されます。悪者はOversea-Commercial DSという項目だそうです。

まず項目を選択して、右クリックからメニュー表示し、Sub0Sub1Deactivateします。すると表示がPendingに変わり、しばらくしてInactivateになります。機種によってはSub0のみがActiveの場合もあるようです。

続いて項目を選択して、下のRemoveボタンを押し、項目ごと抹殺します!

volte3.png
これでにっくきOversea-Commercial DSは無くなりました。

8️⃣ 適切な設定をActiveにする

最後にDescriptionの欄にでてくる設定項目のうち1つ(または2つ)という項目をActiveに変更します。さきほどと同じように項目を選択して、右クリック→SetSelectedConfigからSub0を選択して下のActivateボタンを押して起動させます。※Sub0はSIM1です。

SIM2もこの設定で良ければSub1も同様にActiveにします。ことなる場合はSIM2のみ異なるDiscriptionでもOKです。Activeにできるのはいずれか一つです。

OnePlus 8ではVolte-CUが最も汎用性が高かったのですが、OnePlus 9ではVoLTE-PTCRBが良いようです。

なお筆者が試した限り、DocomoとSoftbankはVoLTE-PTCRBでOKで、auは不可でした。auはItaly-VoLTE-Vodafoneでうまくいきました(Softbankも可)。

volte4.png
VoLTE-CUの場合

以上で一連の作業が完了です。

9️⃣ スマホを再起動

スマホはFactory Test Modeで真っ暗のままなのですべて終わったら再起動しましょう。

再起動は次のコマンドを入力してください。

adb reboot

※もし上のコマンドが効かない場合はexitと入力してshellを終了してから、再度入力してみてください。

※最悪、どうしようもなければ電源ボタン+音量プラス長押しで再起動してみてください。

以上、入力した結果は次のとおりになります。

ftmcmd.jpg
上記の方法は次のリンク先を参考にしています。

https://androplus.jp/Entry/18487/

方法2:EFS Toolsを使う

最近はこちらの方法の方が成功率が高いように思います。いろいろなところで紹介されていますが、下記のAndroPlusさんの記事が最も最新だと思います。⬇

https://androplus.org/entry/oneplus-9-pro-real-review/

実際に筆者もOnePlus 9 ProおよびOnePlus Nord(OxygenOS11Openbeta 5)にてこの方法で開放できることを確認しました。(ただOnePlus 8ではなぜかできません…。)

手順は上に示した「隠れているVoLTEボタンを表示させる」「PCとの接続環境を整える」まで共通です。

1️⃣ EfsToolsをダウンロード

EFS領域に変更を加えるアプリEfsToolsを下記リンク先からDLして、ZIPファイルを展開します。

-> EfsTools v.0.14Xをダウンロード

XDAの記事ではEfsTools-0.10-modded-1.2-win32が紹介されているので、そちらでも可能かと思います。v.0.14xはAndroPlusさんがv.0.14をSIM2も変更できるよう改造されたものです。

※筆者のWin10環境だと.NET 5.0 Runtimeおよび.NET Core 3.1をインストールしなさいとエラーメッセージが出たのでインストールしたところ実行できました。

2️⃣ MBNプロファイルをダウンロード

.mbnの拡張子がついたプロファイル(Mobile Broadband Network Profie)が各通信会社ごとに用意されています。

XDAの記事にMi 9TとPixel4向けのmbnプロファイルが掲載されており使用できると思いますが、AndroPlusさんがOnePlus 9 ProのColorOS版からプロファイルを抽出してくれていますので、そちらを使用するのが万全だと思います⬇。

※楽天モバイルは上記のMi 9TとPixel4には含まれていません。ColorOSのもの⬇をご利用下さい。

あとmcfg\_autoselect\_by\_uimというファイルも必要です。下記のパッケージに含まれています。
(※これは自動切り替えの機能を停止するもので、中身は空です)

-> OnePlus9Pro-ColorOS-APAC.zip

ZIPファイルを展開するとAPACというフォルダに各通信会社ごとにmcfg\_sw.mbnファイルがあります。名前はすべて同じmcfg_sw.mbnです。

8cf85d89c712ab2dd84aa4e64c8dfa4c.png
自分が使用する通信会社のmbnプロファイルをEfsToolsのフォルダにコピーします。

SIM2も利用する場合は、ファイル名が重複するので、名称を変更する必要があります。名前は何でも良いです。

例1)ソフトバンク:mcfg_sw.mbn → mcfg_sw_sbm.mbn
例2)楽天:mcfg_sw.mbn → mcfg_sw_rakuten.mbn

名称変更したmbnプロファイルをそれぞれEfsToolsのフォルダにコピーします。

またmcfg\_autoselect\_by\_uimEfsToolsのフォルダにコピーします。

5f3ee41b30c79c45f5104a7990a29e86.png

3️⃣ スマホをEngineerモードにする

エンジニアモードをインストールします。

EngineerMode APKをダウンロード

続いて電話アプリで*#801#を押します。

Screenshot_20200105-165641.png
今度はEngineerModeを選択します。

Screenshot_20210510-190400-519x600.jpg
Rndis,diag switchをONにします。

Screenshot_20210511-003009-1-603x600.jpg

4️⃣ EfsToolsが使用できるか確認

スマホとPCをUSBケーブルで接続します。上で説明したとおり、USBデバッグをONにして、デバッグの許可(RSA認証)の確認をお忘れなく。

EfsTools.exeを展開したフォルダに移動し、Shift+右クリックでPowershellを起動します
(コマンドプロンプトでcdで移動しても可)。

EfsToolsが機能するかを確認するため次のコードを入力します。(コマンドプロンプトの場合は./を取って下さい。以下同)

./EfsTools.exe efsInfo

Use Serial Port 'COM X'
Version ; 1〜とでてきたらOKです(Xはスマホが使用しているポート名)。

8d3e9fd7dcdab6b41c6cef7b93f70b30.png
接続成功の場合

赤字でCritical Errorと出てきたら失敗です。ドライバーやケーブル、アプリのバージョンなどPC環境が原因ですので個別に見直ししてみて下さい(筆者もはまりました…)。

d17b573d7f5b0efa14d7c64c02e5f28c.png
接続失敗の場合

5️⃣ MCFGの自動切り替えを停止

続いて下記のコードを実行します。

SIM1用

./EfsTools.exe writeFile -i mcfg_autoselect_by_uim -o /nv/item_files/mcfg/mcfg_autoselect_by_uim

SIM2用

./EfsTools.exe writeFile -i mcfg_autoselect_by_uim -o /nv/item_files/mcfg/mcfg_autoselect_by_uim -s 1

6️⃣ MBNプロファイルのアップロード

引き続き、次のコードを実行します。コードは事前に書き換えた通信会社用mbnプロファイル名に置き換えて下さい。

SIM1用(mcfg_sw.mbn → mcfg_sw_sbm.mbnに書き換えた場合)

./EfsTools.exe uploadDirectory -i mcfg_sw_sbm.mbn -o / -v

SIM2用(mcfg_sw.mbn → mcfg_sw_rakuten.mbnに書き換えた場合)

./EfsTools.exe uploadDirectory -i mcfg_sw_rakuten.mbn -o / -s 1

7️⃣ スマホを再起動

お疲れ様でした。以上で作業が終了。スマホを再起動すると反映されます。
※ADB環境がある方は下記のコードを実行するのが手早いです。

adb reboot

twitter_E1kwn-PUcAwZula-680x386.jpg
この方法でRakuten MobileもVoLTE化できました。

VoLTEが開放されたか確認

twitter_E02ukR5UcAQWhxH-680x444.jpg
ディスプレイ最上部の通知欄にVoLTEマークが表示されれば成功。

さらに携帯電話情報(またはスマートフォン情報)で[音声ネットワークの種類]の値が通話中にずっとLTEのままであればOKです。VoLTEが開放されていなければ値がUMTSなどの3G表示に変わります。

Screenshot_20201216-224741__01-457x600.jpg

ソフトバンクの場合は、さらに電話で「1406」にかけて、「このサービスはご利用になれません」とのアナウンスが流れれば完璧です。

まとめ:けっこう大変

以上、OnePlus スマホでVoLTE開放の手順を紹介してみました。スマホだけで完結せず、PCと接続しなくてはならないのが面倒くさいですね。

いろいろと完成度の高いOnePlusのスマホですが、これだけは本当におせっかい以外の何物でもないですね。

あわせて読みたい ⬇️

https://gaddet.com/pixelexperience/
https://gaddet.com/oneplus-coloros/

Share this post