ASUS Nexus 7(2012)TWRPでストレージ削除→APXモードから復活した話
2025年10月10日すべての†始まり†
ADBとかTWRPを使ってROM焼きと言うやつをやりたい。と思った子どもの頃の筆者が、お家にあったNexus7 wifi(2012)によくばって重めのOSを入れようとしフリーズ。TWRPでヤケクソのストレージ削除をしたという......(シンジラレナイ)ブートローダーってROMに入ってんねや(フット後藤)当然、画面は真っ黒でfastbootにも入れないし、Windowsだと認識も微妙。Ubuntuに慣れてきたので、この機会に復活させようじゃないかと。
前提・状態
- 端末:Nexus 7 (2012 wifi)
- PC環境:Ubuntu 22.04
- eMMCは無事
lsusbでID 0955:7330 NVIDIA Corp. APXが見えた → APXモードで認識- fastbootに入れない
なぜLinuxなのか
Windowsだとドライバの署名の強制を解除してもドライバのインストールが許されなかった。署名がない古くてよくわからんドライバはWindows君はお嫌いなようで。
復旧にあたって、tofurky/tegra30_debrick のREADMEやIssue(#9,
#16など)を参考にしました。(この記事見るよりわかりやすい可能性)
注意点
- python3-usbパッケージについて: Ubuntu 22.04では
python3-usbでOKですが、環境によってはpip install pyusbも必要になる場合があります。エラーが出る場合はpip install pyusbも実行してください。 - fusee-launcherの実行パス:
cd fusee-launcherしてからsudo python3 fusee-launcher.py payload/uart_payload_n7.binのように実行するのが確実です。パス指定が曖昧だと失敗する場合があります。 - fastboot起動について: BCTとEBTが正しく書き込まれると、Googleロゴ後に自動的にOS(ROM)が立ち上がる場合があります。必ずしもfastbootで再起動しなくてもよい場合があるので、挙動を確認してください。
実践手順(2025年現在)
- 必須ツールのインストール
sudo apt update
sudo apt install git adb fastboot python3 python3-pip python3-usb build-essential libusb-1.0-0-dev - 32bitライブラリ問題の解決
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libc6:i386 libstdc++6:i386
nvflashは32bitなので64bit環境ではこれが必須。 - tegra30_debrickの準備
cd ~
git clone --recursive https://github.com/tofurky/tegra30_debrick.git - Pythonライブラリのインストール
cd ~/tegra30_debrick/fusee-launcher
pip install -r requirements.txt - Nexus 7をAPXモードで接続
音量上と電源を押しながらUSB接続。
lsusb | grep -i nvidiaで0955:7330が見えればOK。うまくいかなければ、分解してバッテリーのコネクタを抜き差ししてリセット(私の場合これがポイントだった。)。 - USBタイムアウト対策(TLP使用者のみ)
sudo systemctl stop tlp
echo -1 | sudo tee /sys/module/usbcore/parameters/autosuspend - ペイロード送信
cd ~/tegra30_debrick
sudo python3 ./fusee-launcher/fusee-launcher.py ./payload/uart_payload_n7.bin - BCTとブートローダー書き込み
sudo ./utils/nvflash_v1.13.87205_miniloader_patched \
--setbct --bct ./bct/nexus_7_grouper_bct.bin \
--configfile ./utils/flash.cfg \
--bl ./bootloader/bootloader-grouper-4.23.img --go - EBTへの書き込みとBCTの同期
sudo ./utils/nvflash_v1.13.87205_miniloader_patched \
--resume \
--download EBT bootloader/bootloader-grouper-4.23.img \
--configfile ./utils/flash.cfg \
--sync
※--syncがなかったので手間取った。 - Fastbootモード起動
Googleロゴで止まったら電源長押しでオフ→音量ダウン+電源長押しでFastboot画面へ。(私の場合、Googleロゴで待機していたら元のOSが起動した。) - Fastboot認識確認
sudo fastboot devicesでシリアル番号が出ればおけ
ここで Googleロゴが表示 → 元から入っていたLineageOSが起動
ポイント
--syncによって eMMC 書き込みキャッシュが確実に反映された- bricksafe.img や GPT の再書き込みは不要だった(eMMC自体は生きていた)
- READMEでは明示されていなかったが、Issueで補足されていた手順が決定打
気づき
- TWRPで「フォーマットデータ」するとパーティションテーブルまで壊れることがある
- クソめんどくさいので二度とやらない。当たり前。
- 詰まったらGitHubのIssue欄を読め。
まとめ
TWRPでストレージを消して文鎮化したNexus 7。
APXモードから、Linuxとtegra30_debrick、そしてGitHubの海外ニキたちの力で生き返った。
この記事が同じ境遇の方の助けになれば幸いです。お読みいただきありがとうございました。なお、記事の内容によって生じた損害に関して一切責任を負いません(断定)
APXモードから、Linuxとtegra30_debrick、そしてGitHubの海外ニキたちの力で生き返った。
- 公式README通りでは復旧できず、Googleロゴフリーズやfastboot認識不可に手間取る。
- Issueで「--sync」やコマンド順序のミスに気づく。
- 物理故障ではなくパーティション破損が原因。eMMC自体は無事(それはそう)
- GitHubはすごい(小並感)