OnePlus Nord 3 5G(の中古Aランク)を手に入れたので、ブートローダーアンロック&Magisk導入しました。
DimensityなOnePlus機への導入手順を日本語で書いた情報が無いうえに、私もすんなり…ではなかったので記事に残します。
準備・使ったもの
いつものAndroidをイジる際と大体は同じです。adb/fastboot環境は構築されている前提で事を進めます。備忘録的なものなので、結論(Magisk導入)だけ知りたい人は”一加手机官方ROM 下载站のファイルを使う”まで飛ばして下さい。
- ブートローダーアンロック済みのOnePlus Nord3 5G(記事内でアンロックします)
- adb/fastboot環境のPCとUSBケーブル
- Magiskのapk or 導入済みのAndroidデバイス
- MTK Driver
- Fastboot Enhance(boot.img抽出用)
- 一加OnePlus Nord 3 5G 氧OS CPH2491_13.1.0.581(EX01) A.14 全量包(OxygenOSのROMファイル)
私が拾ったOnePlus Nord 3 5GはOxygenOS 13.1 CPH2493_13.1.0.581(EX01)の個体です。
OnePlus Nord 3 5Gはグローバルモデル(インド版と欧州版)、中国国内向けベースモデルのOnePlus Ace 2Vがあり、多分私の奴は欧州版です。
※(PHP110=OnePlus ACE 2V=National Bank=ColorOS CPH2491=OnePlus Nord 3 インド版=Oxygen OS CPH2493=OnePlus Nord 3 欧州版=Oxygen OS)らしい
ブートローダーアンロック
普段はSnapdragon(Qualcomm)機ばかり弄っていますが、当然ながら(Dimensity)MediaTek機なのでそれ用のドライバーが必要です。うちの環境はWindows 11 Pro(23H2)なのでv5.2307のMTK Driverを入れ直しました。
UATTAB001(MT8168)同様にドライバーが無いとFastbootモードでPC側が認識してくれないので必須です。
いつも通り、開発者向けオプション内の”OEM ロック解除”を有効化、USBデバックの許可を”ON”にして接続先のPCとのデバック接続を”常に許可”にしておきます。
adb環境(PC)とUSBデバッグ接続し、コマンドプロンプト(ターミナル)を使って、コマンド”adb reboot bootloader”でOnePlus Nord 3 5GをFastbootモードにて起動させます。
私が(ネット上の知識で)知っているOnePlusのFastbootモードは左の奴(Axon 10 Pro)なんですが、OnePlus Nord 3 5GのFastbootモードは画面左にちっちゃく”Fastboot”と出るだけの奴でした。
コマンド”fastboot flashing unlock”を入力し、Enterキーで実行。ブートローダーのロック解除の可否を聞かれるので音量キーを上か下に押すと勝手に初期化&アンロックされます。
5秒間しか待ってくれないし、初期化するけど良いの?的なメッセージもまとめられてるので少し焦りました。アンロックされてるのか良く分からず5回やりましたが…そんな必要は無いです。
そのまま”fastboot reboot”で再起動すると、無事アンロック&初期化されてOnePlus Nord 3 5Gが起動。
boot.imgの入手で少し躓く
詳しくは知らないし、最終的にMagisk導入(root化)はできましたが…OnePlusはXiaomiのようにファームウェア・ROMをググっただけでは簡単に入手できないっぽいです。
あとはDimensity 8100/9000・Helio G96以降かつOPPO系なので”MTKClient”は非対応。一応、XDAのOnePlusフォーラムにはOnePlus Nord3/Ace 2Vとしてroot化手順と外人ニキが引っこ抜いたであろうboot.imgのダウンロードリンク(Telegram)がありますが…。
アンロックした段階の私はまだ”init_boot.img”か”boot.img”どっちなのか分かって無かったし、仮に良く分からんイメージを焼いて文鎮化して復旧できるかすら不明な状況だったので、自分でどうにかすることにしました。
KernelSU:失敗…?
とりあえずboot.imgが無くてブートローダーアンロック済みであれば、今はKernelSUかDSUの2択。
OnePlus Nord 3 5GもKernelSUは未インストール(対応可)表示だったので、カーネルバージョン5.10.149のboot-gz/lz4/imgのどれかでbootできるハズです。
が、3つにイメージ全てbootingでerrorを吐いてKernelSUを動作中にはできませんでした。…まぁ、KernelSU→Magisk導入の流れを今まで試したことも成功させたことも無いのでしゃーないですね…。
未インストール(対応可)なので、できるハズ何ですが…スナドラ機の情報は幾つかあってもDimensity+OnePlusでの成功例が無いので何とも言えません。あとこの辺をそんなに詳しく無いので…。
DSU Loader:バックアップ出力が何故かできない
KernelSUが上手く行かないなら、DSU Loaderでsu権限のあるGSIを起動してimgを引っこ抜くだけです。
KernelSUと違って、謎タブレットことUATTAB001のboot.imgを引っこ抜いたこともあるので、まだ成功確率は高いだろうと思っていました。
DSUでsu権限のある定番GSI、Andy Yan=サンの”lineage-20.0-20231017-UNOFFICIAL-arm64_bvS”を起動。バックアップ出力時でも、まず困らないであろう64GBで構築。
MediaTek SoCなのでdev/block/by-nameに置き換え、UATTAB001の時と同じ様にコマンドでboot.imgを引っこ抜かせるつもりでした。
adb shell su cd /dev/block/by-name mkdir /sdcard/backup_img for file in *; do if [[ "${file}" = cache* || "${file}" = userdata* ]]; then continue ; else dd if=/dev/block/bootdevice/by-name/"${file}" of=/sdcard/backup_img/"${file}".img ; fi done (https://gist.github.com/AndroPlus-org/c057a96d0c474f799354b939068337d1)
コマンド抜けも無いし、$ suなのでsu権限が動いてないってことも無く、実行自体はできてますが…”ファイル・ディレクトリは無い”って言われました。
sdcard内に”backup_img”フォルダを作成するのは普通に成功していて、ファイルの出力だけが行われてないです。
うーん…KernelSUも上手く行かない、DSU+suでコマンドからイメージの引っこ抜きもできない、正直こうなると私の知識で対処可能な範囲外です。もっと詳しい人に直接聞くとかじゃないとこの2つが駄目な理由は分からんです。
一加手机官方ROM 下载站のファイルを使う
自分でどうにかできそうな2つの方法が上手く行かないので、もう直接OnePlus Nord 3 5G(OxygenOS 13.1)のファイルを入手するしか手立てがありません。
Google(の検索エンジン)が死んでるので普通にググった程度では見つかりませんし、私自身はクソザコですが…参考にしている人達は別です。
ミ田(ROM焼き試験場)=サンのOnePlus 11の記事内に一加手机官方ROM 下载のリンク、Fastboot enhanceの使い方があったので、これを参考にOnePlus Nord3のROM(氧OS CPH2491_13.1.0.581(EX01) A.14 )を入手。
”Fastboot enhance”でROM内の”payload.bin”を開き、boot.imgを選択して抽出オプション全てをチェック済みにしてから”イメージを抽出する”を実行。
適当な場所にboot.imgだけ抽出しました。あとROM内にinit_boot.imgが無いので外人ニキの手順通りboot.imgで良かったようです。
恐らく、Dimensity 9000もSnapdragon 8 Gen 1より製品リリースは前であり、Snapdragon 8+ Gen 1(7+ Gen 2)までのSoCを搭載した端末はinit_boot.imgでは無くboot.imgにパッチする方式なので、OnePlus Nord 3 5G(Android 13)も同様だった…ということだと勝手に解釈してます。
boot.imgが入手できたら、あとはいつも通りMagiskでパッチしてフラッシュするだけの簡単作業です。
一加手机官方ROMにあったファイルで、問題無くOnePlus Nord 3 5GにMagisk導入(root化)できました。
ブートローダーをリロックする際は、OnePlus Nord 3 5GをOEM ロック解除有効のまま初期化し、初期化後に一度セットアップ(全てスキップして)でホーム画面表示後、Fastbootモードから”fastboot flashing lock”でOK。
間違えなければブリックしないはずです。
あとがき
私はこんな感じで”途中の過程が良く分からないまま、何とか結果だけには辿り着く”ことが稀によくあります。今回も正直、KernelSU・DSU+suが何故駄目だったのか良く分からないまま、Magisk導入だけはできたという感じです。
OnePlus Nord 3 5G自体、日本語で書かれた情報が極端に少ないし、Dimensity機も8100/9000以降は良質な情報が少ないので…何とかBLU&Magisk導入だけは上手く行ったのが不幸中の幸いです。あんまり居ないと思いますが、OnePlus Nord 3 5Gをroot化するのにこの記事が役立てば嬉しいです。
OnePlus Nord 3 5G(Dimensity 9000)はそのうち記事にします。丁度Redmi Note 12 Turbo(7+ Gen 2)もあるし、Snapdragon 8 Gen 1との比較も交えた情報に私自身も興味があるので。
コメント
デュアルセルなので消費電力が少ないように見えているのではないでしょうか?
Sceneの方でdual cell modeを有効化してみてください
アーッ!!!
匿名サンありがとうございます、OnePlus機(11とかAce)のレビューだと消費電力低めの傾向なので勘違いしてました。
double cellにチェック入れて動かしたら、やっぱり仮サンプルの2倍程度は消費してるので2セルの片側だけ測定してたみたいです…。
脱PerfDog化でTakoStatsに切り替えましたが、どうもNord3の測定がTakoStatsだと上手くいかなくてSceneに切り替えたばかりだったので、レビュー前に気付けて助かりました。
にしてもSceneをご存知だとは…。
いえいえ、お助けになったようでなによりです。
…Dimensity 8100/9000はCPUのOCUV、GPUのUVが出来るので時間があったら試してみると楽しいですよ
OCとかは裏で遊んでみますね。Nord3のVC冷却はそこそこ大きいので意外と期待できたり…?
Redmi 12 5G(4 Gen 2)の電力効率や記事にDimensity 9200+ととても興味深いので期待してます!
ありがてぇ…