概要
ジャンクで購入したNintendo Switch修理の備忘録です。
なかなか珍しそうな症例だったので記録・共有しておきます。
(以前購入したものとは別です、あちらは二次災害発生により一旦保留中、、)
emmcの交換、及び交換後のemmcへのデータ復元を行い修理しました。
Switchが文鎮化した際の復旧にも、参考になるかもですね。
ペアレンタルコントロール(みまもり設定)が設定されていたため、その削除も行いました。
以下はすべて未対策機と呼ばれる、改造が行える機種に対するものです。
対策済みのSwitchではおそらく下記の復旧手順は行えないと思います。
導入
購入したのは、
- 充電器を指すと充電マークが表示される
- 電源を押すとNintendoロゴが表示される
- Nintendoロゴ表示後、電源が落ちる
という症状のものでした。
充電表示やNintendoロゴがでることから電源回路周りの問題や物理的な破損はなく、
おそらくバッテリー交換で治るだろうと思い購入しました。
症状
別のバッテリーを接続しても症状は変わらず、
バッテリーが原因ではありませんでした。
また充電器を刺した状態で放置すると、
ちゃんとバッテリーは充電が行われていました。
最初は同様の症状を調べると、WiFiチップの問題であったり、
電源回路周りの問題であるというのが出てきました。
なんだか面倒そうだなと思いつつ、本体が未対策機だったので、
試しにRCM(リカバリーモード)を起動すると問題なく動作します。
※所謂未対策機と呼ばれる初期型Switchには
ブートローダレベルで修復不可能な脆弱性があり、
それを利用したシステムの修復・改造を行うことができます。
またemuNANDを作成し、emuNANDで起動するとSwitch OSが問題なく起動しました。
(以前の所有者のインストールしていたゲームなどが見れました)
しかも起動した状態では、WiFiも問題なく通信できました。
とりあえずNANDのダンプを作成して現状を保存します。
ではsysNANDからの起動はどうなのか?
こちらは同じくNintendoロゴのあとにブラックアウトしました。
※emuNAND : SDカード上に構築する、sysNANDを模した仮想ストレージ
※sysNAND : 本体に内蔵されたストレージ(32GB)
症状から見るに、どうやらNANDチップが怪しいようです。
不思議なことにNANDチップが完全に壊れているわけではないようで、
読み取りは問題なく?できるようです。(起動はできませんが)
しかし書き込みを行っても反映されていないようでした。
SSDは故障が近くなると読み込み専用になるという話を聞きますが、
こちらのemmcにも同様の機構があるのかもしれません。
hekateでemmcのEstimated Lifeを見るとA/Bともに0%表示でした。
試しに別のSwitchのemmcを接続するとA/Bともに100%表示となることから、
やはりemmcが壊れているようです。
ということでemmcの交換をし、修理を行いました。
※注意
以下の内容は自己責任でお願いします。
一部省略している箇所や手順もあります。(DNS設定など)
各自で詳しい手順について調べ、自分が何をしているのかを理解して行うべきです。
文鎮化・BANなど何等かの損害が発生しても責任は取れません。
修理① : emmc交換
emmcの交換を行います。
emmc自体はモジュール化されており簡単に取り外して交換が行えます。
しかしながらemmcは機種固有のデバイス情報と紐づけられており、
単に交換しただけでは使用することができません。
すなわち、別のSwitchの情報を利用できないようになっています。
仮にBANされたとして、emmcを交換してもBANの回避はできません。
故障した機種の固有の情報を新しいemmcにコピーして、
emmcのデータを元のSwitchの正常なものに復元します。(Unbrick)
修理② : SwitchのUnbrick (未対策機のみ)
基本的にはhttps://suchmememanyskill.github.io/guides/unbrick/のとおりです。
MMC Rebuildの箇所が、0からemmcの中身を作成する手順になります。
emmcが破損しているということで、バックアップしたデータが壊れている可能性も考え、
0からRebuildする手順も行っています。
(一応、機種固有情報の部分は生きているような表示でしたが)
また一旦、バックアップを復元して行わないと、
SystemRestoreV3.te実行時に行われるバックアップ作成でエラーが発生しました。
(たしかNOFATみたいなエラーだったと思います)
直接SystemRestoreV3.teを変更しバックアップ作成を無効化しても良いですが、
元のバックアップがある状態だったので、エラーの回避の目的もあります。
前提 : Switch固有のprod.keyが必要です。(別のSwitchのprod.keyを使用してもできません)
- 交換前emmcのフルバックアップを作成します。(Backup Boot0/Boot1 & RAW GPP)
- ファームウェアのダンプを作成します。(by TegraExplorer & FirmwareDump.te)
- emmcを用意し、交換します。
- 交換後のemmcに元のemmcのバックアップを復元します。(Restore Boot0/Boot1 & RAW GPP)
- EmmcHaccGenで、prod.keyとダンプしたファームウェアから、
インストール用のFirmwareを作成します。 - SystemRestoreV3.teを使用し、作成したFirmwareをsysNANDに復元します。
- System Wipeを行います。
以上で正常に起動できる状態のemmcが復元できます。
みまもり設定削除 (悪用厳禁)
最初はReset-Parental-Controls-NXを使用したのですが恒久的なものでは無いのか、
一時的には消えるものの再度みまもり設定が表示されました。
そこでマスターキーを生成してペアレンタルコントロールの解除を行います。
マスターキーの生成方法は解析されておりhttps://mkey.salthax.orgで生成できます。
作成にはSwitchのデバイスIDが必要で、その取得にはCFWが動く状態にする必要があります。
実行した際のSwitchのverは16.0.3でした。
おそらく最新のFWでも使えると思います。
Nintendo みまもり Switchアプリと連携されていましたが、リセットできました。
- HBLからアプリを起動しデバイスIDを取得します。(by NX-DeviceID-Viewer)
- みまもり設定のパスキー入力画面を開きます。
- 時間制限がかかるまで、適当なパスキーを数回入力します。
- 入力に時間制限がかかった状態で+を長押ししてヘルプを確認し、
問い合わせ番号が表示されるのでそれをメモします。 - https://mkey.salthax.orgで、Device TypeにSwitchを選択、Additional dataにデバイスID、
Inquiry Numberに問い合わせ番号を入れ、GOをクリックします。
(System dateは何も変更しなくて大丈夫です) - 上に表示されるYour master key is : ~の数字がマスターキーです。
ヘルプ画面のマスターキー入力でその数字を押すとパスキーの変更ができます。 - パスキーの変更を行います。
- 変更したパスキーを使用し、設定からペアレンタルコントロールの削除を行います。
※問い合わせ番号はヘルプを開くたびに毎回変わってしまうため、
一度ヘルプ画面を表示した際にはマスターキー入力までそのままにしておきます。
以上で、みまもりSwitchの削除が行えます。
あとは初期化を行うことで、完全にきれいな状態のSwitchが完成します。
終わりに
今まで何十台とスマートフォンやゲーム機を改造してきましたが、
emmcが破損しているものを見るのは初めてでした。
書き換え回数に上限があるとはいえ、使用しているうちに壊れることはかなり稀だと思います。
今回のSwitchが未対策機で、emmcが簡単に交換できるような設計になっていて良かったです。
もともとの見通しとは違う形ですが、無事修理できて嬉しいです。
emmcが壊れた、データ破損で文鎮化した等の場合に参考にしてください。