Switch Unbrick Guide¶
READ THIS BEFORE CONTINUING
This guide isn't called an "unbrick guide" for no reason, it shouldn't be treated as a way out of simple inconveniences and should NOT be followed without proper reason to do so. A "brick" indicates that a device is dysfunctional on a soft- and/or hardware level. The term "software brick" means that something is messed up at the internal storage/operating system level, while "hardware brick" indicates that you experience hardware failure or hardware malfunction (causing the system to not boot properly, if at all).
Reasons to NOT follow this guide include:
- Your games don't work,
- You run into homebrew apps crashing,
- You experience homebrew related crashes upon booting Atmosphere,
- A YouTube video guide told you to follow this guide.
If you experience ANY of the above or need any assistance in general, including following this guide, please ask for help in #switch-assistance-1 or #switch-assistance-2 in the NH-Discord server before doing anything and don't continue following this guide.
Please do NOT misuse this guide or any of the tools used within this guide. Additionally you should refrain from using tools like "NANDFix", "NANDFixPro" and "DowngradeFixer".
Finally; boot issues caused by recently-installed modchip installations, general hardware failure or hardware malfunction will NOT be fixed by following the steps below. Please do NOT follow this guide if you experience such issues.
Before starting - SD Preparation¶
This section will make sure you've got a minimalistic CFW setup on a new, separate SD card. Following this section ensures that you don't run into any issues caused by improper configurations later.
What you need:¶
- The latest release of hekate (
hekate_ctcaer_X.X.X.zip) - The latest release of Atmosphere (
atmosphere-X.XX.X-master-XXXXXXXXX+hbl-X.X.X+hbmenu-X.X.X.zip) - The hekate config file: hekate_ipl.ini
- A separate microSD card (preferably 64GB+) formatted as FAT32. (To format it as FAT32, follow this guide.)
Instructions:¶
- Extract the contents of the hekate
.zipto the root of your SD card. - Extract the contents of the Atmosphere
.zipto the root of your SD card. - Place the
hekate_ipl.inifile insd:/bootloader.
Once you've done this, you may continue on with this guide.
Quick reference¶
- My Switch seemingly does nothing when I try to boot it up normally
- My Switch shows the Nintendo and/or black and white atmosphere logo, then black screens
- My Switch gets stuck at the Switch logo
- My Switch crashes on boot
- Last Resort: Full MMC Rebuild guide
Types of boot errors¶
The tabs below contain possible fixes for "common" boot errors, these are NOT guaranteed to work on every console. Many issues can look the same but can have fundamentally different causes.
The instructions below are numbered based on level of 'severity' (low to high), please don't follow all of them if you have no reason to do so.
- Note: The first 3 boot error sections assume you aren't booting with a custom bootloader/Atmosphere in the first place. Please keep this in mind.
Early-boot errors¶
My Switch seemingly does nothing when I try to boot it up normally
- Check if you can boot
Stock sysMMC(not OFW) via hekate'sLaunchmenu.- If you can, you likely have AutoRCM enabled or you have an e-fuse mismatch on your hands. Update to the latest firmware via stock or sysCFW.
- Restore a NAND backup if you have one.
- Follow everything from the MMC Rebuild section with the same firmware version as your current firmware version.
- If NONE of these steps worked, please ask for help in
#switch-assistance-1or#switch-assistance-2in the NH-Discord server.
Mid-boot errors¶
My Switch shows the Nintendo and/or black and white atmosphere logo, then black screens
- Check if you can boot stock (not OFW) via hekate's
Launchmenu.- If you can boot stock but not sysCFW, you might be running too many sysmodules, try to disable some.
- Check if you have an exFAT formatted SD. If it's formatted as exFAT, format it to FAT32 using this guide.
- Check if your
SYSTEMpartition is mountable. This can be done viaBrowse eMMC>SYSTEMin TegraExplorer - Restore a NAND backup if you have one.
- Follow everything from the MMC Rebuild section.
- If NONE of these steps worked, please ask for help in
#switch-assistance-1or#switch-assistance-2in the NH-Discord server.
Late-boot errors¶
My Switch gets stuck at the Switch logo
- Check if you can boot stock (not OFW) via hekate's
Launchmenu.- If you can boot stock but not sysCFW, you might be running too many sysmodules, try to disable some.
- Check if your
USERpartition is mountable. This can be done viaBrowse eMMC>USERin TegraExplorer - Check if your
PRODINFOis fine. To do this, follow the steps below:- Boot TegraExplorer,
- Navigate to
Browse eMMC>PRODINFO, - Select
PRODINFOand dump it when prompted, - Go back to TegraExplorer's main menu and navigate to
Browse SD, - Navigate to
tegraexplorer>Dumps>PRODINFO, - Select
PRODINFO, selectView hex.- "Intact" PRODINFO starts with
CAL0and contains your Switch serial number at offset0x250. You should ensure that the serial number in the PRODINFO you're viewing matches the one on the bottom of your console (or underneath the kickstand on OLED consoles).
- "Intact" PRODINFO starts with
- Restore a NAND backup if you have one.
- Perform a System Wipe.
- Follow everything from the MMC Rebuild section.
- If NONE of these steps worked, please ask for help in
#switch-assistance-1or#switch-assistance-2in the NH-Discord server.
Boot crashes¶
My Switch crashes on boot
- Check if you can boot
Stock sysMMCvia hekate'sLaunchmenu or OFW viaReboot>OFWfrom hekate'sHomemenu. - Make a NAND backup and perform a System Wipe
- If NONE of these steps worked, please ask for help in
#switch-assistance-1or#switch-assistance-2in the NH-Discord server.
MMC Rebuild¶
An MMC Rebuild is an "advanced" procedure which involves generating system restoration files using the decryption keys of your Switch and your Switch firmware dump in combination with a tool called EmmcHaccGen, to (hopefully) restore your Switch back to a working state. Please keep in mind that following this section of the guide should ONLY be done if you have a valid reason to do so. Doing otherwise may cause damage to your console (unable to play online after recovery), or data loss (save game loss).
Note: An MMC Rebuild is specifically meant to be used for restoring your sysmmc to a working state, not an emummc. You can simply recreate an emummc via hekate > emuMMC > Create emuMMC > SD Partition > Part 1 if your sysmmc is functioning like normal.
Step 0: Making a NAND backup¶
You will want to make a NAND backup before you start modifying your Switch. To do this, follow the steps below.
Instructions:¶
- Inject the hekate payload (
hekate_ctcaer_X.X.X.bin) using your desired RCM payload injector.- Note: If you use a modchipped Switch, you can place the hekate payload on the root of your SD card, rename it to
payload.binand turn on your Switch.
- Note: If you use a modchipped Switch, you can place the hekate payload on the root of your SD card, rename it to
- Go to
Tools>Backup eMMCand back upeMMC BOOT0 & BOOT1&eMMC RAW GPP. - You should now end up with
BOOT0/BOOT1and 15 parts (30 parts if on an OLED Switch) ofrawnand.bininsd:/backup/<random characters>/. - Navigate to
Tools>USB Tools>SD Cardand connect your Switch to your PC via USB. - Access your SD card and back up the
backupfolder on the root of your SD card to your PC. - Once done, safely eject the
hekate UMSdevice from your PC, then navigate back to hekate'sHomemenu.
Step 1: Generating the files and copying them to your SD card¶
Please verify which console model you have before continuing.
- Navigate to
Console Info>HW & Fusesin hekate. - At the top left, on the
SoC:line, it will say one of the following:T210 (Erista)to indicate an Erista (V1) console,T210B01 (Mariko)to indicate a Mariko (V2) console.
Note: If you have an Erista (V1) console, please check if it says This unit is exploitable to the RCM bug! or This unit is patched to the RCM bug! in the bottom right. If it says This unit is patched to the RCM bug!, you have a patched Erista (V1) console.
Once you've determined which console model you have, you may continue.
What you need:¶
- Your Switch's
prod.keys. (This needs to be yours specifically! Decryption keys are console-unique.) If you don't have them, try to dump them via Lockpick_RCM.- Note: Lockpick_RCM is not linked due to legal concerns, and help is not provided with obtaining it. Please refrain from using modified versions of Lockpick_RCM, such as "Lockpick_RCM_Pro".
- Your Switch's firmware dump (try to dump your firmware via TegraExplorer's
FirmwareDump.tescript). - A computer running Windows, Linux or macOS.
Follow the instructions for your computer's operating system below:¶
What you need:¶
- The latest release of EmmcHaccGen (
EmmcHaccGen-win-x64.GUI.exe)
Instructions:¶
- Open
EmmcHaccGen-win-x64.GUI.exe, import your Switch's prod.keys and firmware folder. - Configure the sliders/toggles depending on your console model:
- V1 Unpatched consoles: Enable the
Enable AutoRCMand, if applicable, theExFAT Supporttoggles. - V1 Patched consoles: Disable the
Enable AutoRCMtoggle and, if applicable, enable theExFAT Supporttoggle. - V2/Mariko consoles: Enable the
Generate Mariko Firmwareand, if applicable, theExFAT Supporttoggles.
- V1 Unpatched consoles: Enable the
- Click
Generateand select any location on your PC to save the generated files to. - Once done, boot hekate (if you aren't already in hekate/Nyx), navigate to
Tools>USB Tools>SD Cardand connect your Switch to your PC via USB. - In EmmcHaccGen GUI, click
Prepare SD Cardand select/open the root of your SD card. - Once done, click
Yesto proceed with copying/downloading files to theMMCRebuildandbootloaderfolders on the root of your SD card. - Once finished, safely eject the
hekate UMSdevice from your PC, then navigate to hekate'sHomemenu >Payloads>TegraExplorer.bin.
What you need:¶
- The latest release of EmmcHaccGen (
EmmcHaccGen-linux-x64.GUI)
Instructions:¶
-
Open
EmmcHaccGen-linux-x64.GUI, import your Switch's prod.keys and firmware folder.You may need to make the
EmmcHaccGen-linux-x64.GUIfile executable before being able to open it.To do this, you can do one of the following:
- Use the terminal command:
chmod +x path/to/EmmcHaccGen-linux-x64.GUIand then open it from your file manager or, - On most (modern) Linux distributions you can right click the file from your desired file manager and enable
Executable as ProgramorAllow executing file as programor something along those lines in the properties of the executable and open it from your file manager.
- Use the terminal command:
-
Configure the sliders/toggles depending on your console model:
- V1 Unpatched consoles: Enable the
Enable AutoRCMand, if applicable, theExFAT Supporttoggles. - V1 Patched consoles: Disable the
Enable AutoRCMtoggle and, if applicable, enable theExFAT Supporttoggle. - V2/Mariko consoles: Enable the
Generate Mariko Firmwareand, if applicable, theExFAT Supporttoggles.
- V1 Unpatched consoles: Enable the
- Click
Generateand select any location on your PC to save the generated files to. - Once done, boot hekate (if you aren't already in hekate/Nyx), navigate to
Tools>USB Tools>SD Cardand connect your Switch to your PC via USB. - In EmmcHaccGen GUI, click
Prepare SD Cardand select/open the root of your SD card. - Once done, click
Yesto proceed with copying/downloading files to theMMCRebuildandbootloaderfolders on the root of your SD card. - Once finished, safely eject the
hekate UMSdevice from your PC, then navigate to hekate'sHomemenu >Payloads>TegraExplorer.bin.
What you need:¶
- The latest release of EmmcHaccGen (
EmmcHaccGen-osx-x64-app.ziporEmmcHaccGen-osx-arm64-app.zip)
Instructions:¶
-
Extract the contents of the
EmmcHaccGen-osx-x64-app.ziporEmmcHaccGen-osx-arm64-app.zipto a location on your mac, double clickEmmcHaccGen.appto open the app and import your Switch's prod.keys and firmware folder.You will need to 'trust' the
EmmcHaccGen.appexecutable before being able to open it.To do this, you can do the following:
- Open a terminal window.
- Enter the following command:
xattr -dr com.apple.quarantine /path/to/EmmcHaccGen.app(replacing/path/towith the actual path to the executable). - You should now be able to double click the app to open it from Finder.
-
Configure the sliders/toggles depending on your console model:
- V1 Unpatched consoles: Enable the
Enable AutoRCMand, if applicable, theExFAT Supporttoggles. - V1 Patched consoles: Disable the
Enable AutoRCMtoggle and, if applicable, enable theExFAT Supporttoggle. - V2/Mariko consoles: Enable the
Generate Mariko Firmwareand, if applicable, theExFAT Supporttoggles.
- V1 Unpatched consoles: Enable the
-
Click
Generateand select any location on your PC to save the generated files to. - Once done, boot hekate (if you aren't already in hekate/Nyx), navigate to
Tools>USB Tools>SD Cardand connect your Switch to your PC via USB. - In EmmcHaccGen GUI, click
Prepare SD Cardand select/open the root of your SD card. - Once done, click
Yesto proceed with copying/downloading files to theMMCRebuildandbootloaderfolders on the root of your SD card. - Once finished, safely eject the
hekate UMSdevice from your mac, then navigate to hekate'sHomemenu >Payloads>TegraExplorer.bin.
Step 2: Flashing the files¶
Instructions:¶
- Navigate to
Browse SD>MMCRebuild>SystemRestoreV3.te.- Note: Navigation in TegraExplorer on Normal/OLED Switch models can be done using the volume buttons + power and/or your joycons while navigation on Switch Lite consoles can only be done using the volume buttons + power.
- Select
Launch Script>Apply on Sysmmc>Restore Both. - After the script has finished, try to boot sysCFW from hekate's
Launchmenu.- Note: If you lack the sysCFW boot entry in your
Launchmenu, please replace thehekate_ipl.inifile insd:/bootloaderwith with this one. The sysCFW boot entry is calledAtmosphere PKG3 sysMMC. - Note: If you have an unpatched Switch, AutoRCM will be enabled! You will need to use a custom bootloader (hekate/fusee) to be able to boot.
- Note: If you lack the sysCFW boot entry in your
- If your Switch does not boot (correctly), perform the System Wipe section below.
System Wipe¶
System Wipe
This will wipe EVERYTHING from your system, including; game save data, installed games/titles, all user data and everything else. Be safe and always have a NAND backup.
What you need:¶
- TegraExplorer (
TegraExplorer.bin)
Instructions:¶
- Place the downloaded
TegraExplorer.bininsd:/bootloader/payloads, replacing the existing payload if it exists. - Inject the hekate payload (
hekate_ctcaer_X.X.X.bin) using your desired RCM payload injector.- Note: If you use a modchipped Switch, you can place the hekate payload on the root of your SD card, rename it to
payload.binand turn on your Switch.
- Note: If you use a modchipped Switch, you can place the hekate payload on the root of your SD card, rename it to
- Navigate to
Payloads>TegraExplorer.bin - Navigate to
SystemWipe.teand selectWipe sysmmcto wipe your sysmmc. - Confirm using the
Powerbutton or theAbutton of your joycon. - Try to boot sysCFW from hekate's
Launchmenu.- Note: If you still cannot boot, please ask for help in
#switch-assistance-1or#switch-assistance-2in the NH-Discord server.
- Note: If you still cannot boot, please ask for help in