"message": "This website uses cookies to display the current guide progress on the sidebar and otherwise enhance the site."
}
})});
</script>
<!-- end custom head snippets -->
</head>
<bodyclass="layout--single">
<navclass="skip-links">
<ul>
<li><ahref="#site-nav"class="screen-reader-shortcut">Skip to primary navigation</a></li>
<li><ahref="#main"class="screen-reader-shortcut">Skip to content</a></li>
<li><ahref="#footer"class="screen-reader-shortcut">Skip to footer</a></li>
</ul>
</nav>
<!--[if lt IE 9]>
<divclass="notice--danger align-center"style="margin: 0;">You are using an <strong>outdated</strong> browser. Please <ahref="https://browsehappy.com/">upgrade your browser</a> to improve your experience.</div>
<![endif]-->
<divclass="masthead">
<divclass="masthead__inner-wrap">
<divclass="masthead__menu">
<navid="site-nav"class="greedy-nav">
<!-- <a class="site-title" href="/">
3DS Hacks Guide
</a>
-->
<ulclass="visible-links">
<!-- modified to use multilang, guide-specific -->
<p>In order to exploit the SAFE_MODE firmware of our system, we need to inject an exploited WiFi profile.</p>
<p>As we already have Homebrew access, we can use slotTool to do this.</p>
<p>Once the WiFi profile has been injected, we will use SAFE_MODE, which is a recovery feature present on all 3DS consoles, to activate the exploited WiFi profile.</p>
<p>For a more technical explanation, see <ahref="https://github.com/zoogie/unSAFE_MODE/">here</a> for information about the unSAFE_MODE exploit.</p>
<pclass="notice--danger">If your (Right/Left Shoulder), (D-Pad Up) or (A) buttons do not work, join <ahref="https://discord.gg/MWxPgEp">Nintendo Homebrew on Discord</a> and ask, in English, for help.</p>
<h3id="what-you-need">What You Need</h3>
<ul>
<li>The latest release of <ahref="https://github.com/d0k3/SafeB9SInstaller/releases/download/v0.0.7/SafeB9SInstaller-20170605-122940.zip">SafeB9SInstaller</a> (direct download)</li>
<li>The latest release of <ahref="https://github.com/SciresM/boot9strap/releases/download/1.4/boot9strap-1.4.zip">boot9strap</a> (direct download)</li>
<li>The latest release of <ahref="https://github.com/zoogie/unSAFE_MODE/releases/latest">unSAFE_MODE</a>
<ul>
<li>You may already have this from a prior section of the guide</li>
</ul>
</li>
</ul>
<h4id="section-i---prep-work">Section I - Prep Work</h4>
<p>In this section, you will use Homebrew Launcher to launch slotTool, which will overwrite your Wi-Fi slots with hacked data. Then, you will copy the files needed to trigger the unSAFE_MODE exploit onto your device’s SD card. Your Wi-Fi connection settings will be temporarily overwritten while the exploit is active.</p>
<li>If you get stuck on a red screen, forcefully power off the console by holding the power button for fifteen seconds, then retry this section</li>
</ul>
</li>
<li>Select the “INSTALL exploit to wifi slots 1,2,3 & shutdown” option
<ul>
<li>You will see some on-screen text and then your system will shut down</li>
</ul>
</li>
<li>Remove your SD card from your console and connect it to your computer</li>
<li>Create a folder named <codeclass="language-plaintext highlighter-rouge">boot9strap</code> on the root of your SD card</li>
<li>Copy <codeclass="language-plaintext highlighter-rouge">boot9strap.firm</code> and <codeclass="language-plaintext highlighter-rouge">boot9strap.firm.sha</code> from the boot9strap <codeclass="language-plaintext highlighter-rouge">.zip</code> to the <codeclass="language-plaintext highlighter-rouge">/boot9strap/</code> folder on your SD card</li>
<li>Copy <codeclass="language-plaintext highlighter-rouge">SafeB9SInstaller.bin</code> from the SafeB9SInstaller <codeclass="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
<li>Copy <codeclass="language-plaintext highlighter-rouge">usm.bin</code> from the unSAFE_MODE <codeclass="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
<h4id="section-ii---unsafe_mode">Section II - unSAFE_MODE</h4>
<p>In this section, you will enter Safe Mode (a feature available on all 3DS family devices) and navigate to a menu where unSAFE_MODE will be triggered, which will launch you into the boot9strap (custom firmware) installer.</p>
<ol>
<li>With your device still powered off, hold the following buttons: (Left Shoulder) + (Right Shoulder) + (D-Pad Up) + (A), and while holding these buttons together, power on your device
<ul>
<li>Keep holding the buttons until the device boots into Safe Mode (a “system update” menu)</li>
</ul>
</li>
<li>Press “OK” to accept the update
<ul>
<li>There is no update. This is part of the exploit</li>
</ul>
</li>
<li>Press “I accept” to accept the terms and conditions</li>
<li>The update will eventually fail, with the error code <codeclass="language-plaintext highlighter-rouge">003-1099</code>. This is intended behaviour</li>
<li>When asked “Would you like to configure Internet settings?”, select “Yes”</li>
<li>On the following menu, navigate to <codeclass="language-plaintext highlighter-rouge">Connection 1</code> -><codeclass="language-plaintext highlighter-rouge">Change Settings</code> -><codeclass="language-plaintext highlighter-rouge">Next Page (right arrow)</code> -><codeclass="language-plaintext highlighter-rouge">Proxy Settings</code> -><codeclass="language-plaintext highlighter-rouge">Detailed Setup</code> (<ahref="/images/screenshots/usm/safemode_highlighted.png">image</a>)</li>
<li>If the exploit was successful, your device will have booted into SafeB9SInstaller</li>
</ol>
<h4id="section-iii---installing-boot9strap">Section III - Installing boot9strap</h4>
<p>In this section, you will install custom firmware onto your device.</p>
<ol>
<li>When prompted, input the key combo given on the top screen to install boot9strap</li>
<li>Once it is complete, press (A) to reboot your device</li>
<li>Your device should have booted into the Luma3DS configuration menu
<ul>
<li>Luma3DS configuration menu are settings for the Luma3DS custom firmware. Many of these settings may be useful for customization or debugging</li>
<li>For the purpose of this guide, <strong>leave these options on the default settings</strong> (do not check or uncheck anything)</li>
<li>If your device shuts down when you try to power it on, ensure that you have copied <codeclass="language-plaintext highlighter-rouge">boot.firm</code> from the Luma3DS <codeclass="language-plaintext highlighter-rouge">.zip</code> to the root of your SD card</li>
</ul>
</li>
<li>Press (Start) to save and reboot</li>
</ol>
<p>At this point, your console will boot to Luma3DS by default.</p>
<ul>
<li>Luma3DS does not look any different from the normal HOME Menu. If your console has booted into the HOME Menu, it is running custom firmware.</li>
<li>On the next page, you will install useful homebrew applications to complete your setup.</li>
</ul>
<h4id="section-iv---restoring-wifi-configuration-profiles">Section IV - Restoring WiFi Configuration Profiles</h4>
<p>In this section, you will enter the Homebrew Launcher (using custom firmware) so that you can restore the Wi-Fi connection slots that were overwritten in Section I.</p>
<ol>
<li>Launch the Download Play application</li>
<li>Wait until you see the two buttons
<ul>
<li>Do not press either of the buttons</li>
</ul>
</li>
<li>Press (Left Shoulder) + (D-Pad Down) + (Select) at the same time to open the Rosalina menu</li>
<li>Select “Miscellaneous options”</li>
<li>Select “Switch the hb. title to the current app.”</li>
<li>Press (B) to continue</li>
<li>Press (B) to return to the Rosalina main menu</li>
<li>Press (B) to exit the Rosalina menu</li>
<li>Press (Home), then close Download Play</li>
<li>Relaunch the Download Play application</li>
<li>Your device should load the Homebrew Launcher</li>
<li>Launch slotTool from the list of homebrew</li>
<li>Select “RESTORE original wifi slots 1,2,3”</li>
<li>Your device will then reboot</li>
</ol>
<hr/>
<h3class="notice--primary"id="continue-to-finalizing-setup">Continue to <ahref="finalizing-setup">Finalizing Setup</a></h3>