Nexus 6P のファームウェアのダウングレード 8.1.0 → 7.1.2

既に時代遅れ機種になっている Nexus 6P だが、昨日、適当に野良 APK をインストールしたら、何となく怪しい挙動を見せたので、ファームウェアのファクトリーリセットのついでに、最終バージョンの 8.1.0 から 7.1.2 にダウングレードした。

ダウングレードであろうが、アップグレードであろうが、任意に選んだファームウェアを焼くだけなので、基本的な手順は同じである。

ファームウェアの焼き方

公式ページ(Flashing instructions)に基本的な情報は揃っている。

基本的には、該当ファームウェアをダウンロードすると、ファームウェアを焼くためのスクリプト(flash-all.sh)が含まれているので、それを実行すればいい。ただし、このスクリプトが前提としている fastboot コマンドが実行可能な状態を整えておく必要がある。

また、セキュリティのために、ファームウェアの書き込みロックがかかっている場合は、書き込み作業の間は解除しておく必要がある。

  1. Nexus6P を fastboot モードにする
  2. fastboot コマンドの準備(Mac 側)
  3. ファームウェア書き込みのロック解除

以上の 3 点を除いて、USB ケーブルで Mac と接続し、Mac 側で公式ページからダウンロードした Nexus 6P 用の 7.1.2 のファームウェアファイル(👉 N2G48C, Aug 2017)の中の flash-all.sh を実行するだけのシンプルな作業である。

Nexus6P を fastboot モードにする

fastboot モードは、fastboot コマンドと同じく Android SDK Platform-Tools(後述)に含まれている adb コマンドを使う('adb reboot bootloader' コマンドを実行)か、Nexus6P を操作してボリューム下げボタンを押し続けながら電源ボタンを押し続けて起動することで、fastboot モードに入ることができる。

fastboot コマンドの準備(Mac 側)

fastboot コマンドは Android SDK Platform-Tools に含まれるものなので、Android アプリ開発用の Androidstudio のものを使ってもいいのだが、実はこれには深刻な問題がある(後述)ので、単独で Platform-Tools をダウンロード・解凍して使うのが正解である。

というのも、Androidstudio 経由で得られる Platform-Tools は最新のもの(v30.x)になるが、Nexus 6P 用の 7.1.2 のファームウェアとはバージョン的な不整合が起こり、fastboot で正常にファームウェアを焼けないのである(参考)。古い Platform-Tools(v29.0.x)なら大丈夫だったので、わざわざ古いものを狙ってダウンロードするしかない(当然、Androidstudio 経由では無理)。

👉 platform-tools_r29.0.2-darwin.zip(macOS)

ファームウェア書き込みのロック解除

'fastboot flashing unlock' コマンドを実行する。ただし、ダウングレード前の 8.1.0 においては、設定の開発者オプションの中にも OEM Unlock の項目があり、これを有効化しておかないと、'fastboot flashing unlock' コマンドでエラーが出てしまいロック解除を受け付けてくれなかった。

ファームウェアの書き込みが無事終了したら、'fastboot flashing lock' コマンドで再びロックを有効化することができる。

コメント

このブログの人気の投稿

清水俊史『上座部仏教における聖典論の研究』

シークエンスパパともの先見の明

シークエンスパパとも 本物の霊能力