Installing arm9loaderhax

The final Step of this guide is to install arm9loaderhax and setup Luma3DS to run just milliseconds into the boot. This is accomplished by using SafeA9LHInstaller by AuroraWright.

This will install AuroraWright’s Fork of arm9loaderhax.

We will also setup the ability to launch payloads from arm9loaderhax, giving us the ability to unbrick our SysNAND from situations that would normally brick us by restoring from backup.

To use the magnet links on this page, you will need a torrent client like Deluge

You cannot use another console’s OTP or you will brick GUARANTEED.

Overview of steps

In this section, we will go through the process that all the other steps have led up to: actually installing arm9loaderhax.

This is nearly the best possible kind of device exploit because it is permanently installable into the NAND firm partitions, and runs before most of the OS loads, allowing it to not only work on all versions once installed, but also protect itself and recover from most situations that would brick a non-A9LH 3DS such as a nonfunctional home menu or bad title install.

The file arm9loaderhax.bin is what is launched by arm9loaderhax itself after it finishes loading off of NAND, and can be any valid arm9 payload. This file can be replaced at any time, although Luma3DS allows for the launch of other arm9 payloads using the Luma3DS chainloader.

In this case, we use Luma3DS by AuroraWright to boot a patched SysNAND directly, allowing us to completely bypass the need for any kind of EmuNAND, vastly simplifying the usage of a hacked 3DS in addition to saving SD card space.

Once arm9loaderhax is installed and Luma3DS is setup with the correct options, we then restore our previous backup.

During this process, we also setup programs such as the following:

  • FBI (installs CIA formatted games and applications)
  • Luma3DS Updater (updates your CFW installation easily)
  • GodMode9 (multipurpose tool which can do NAND and cartridge functions)

What you need

Instructions

Section I - Prep Work
  1. Insert your SD card into your computer
  2. If it exists, copy <serialnumber>_nand.bin from the /ctrtransfer/ folder on your SD card to a safe location on your computer
    • Make backups in multiple locations (such as online file storage)
    • This backup will save you from a brick if anything goes wrong in the future
  3. Create a folder named cias on the root of your SD card if it does not already exist
  4. Create a folder named files9 on the root of your SD card if it does not already exist
  5. Delete the 3ds folder from the root of your SD card if it exists
  6. Copy the contents of the starter folder in starter.zip to the root of your SD card
    • This will include a brand new 3ds folder to replace the one you just deleted
  7. Copy the contents of the SafeA9LHInstaller .7z to the root of your SD card
  8. Copy the a9lh folder from the data_input .zip to the root of your SD card
  9. Copy the contents of the arm9loaderhax release .7z to a9lh folder on your SD card
  10. Copy hblauncher_loader.cia from the hblauncher_loader .zip to the /cias/ folder on your SD card
  11. Copy lumaupdater.cia from the Luma3DS Updater .zip to the /cias/ folder on your SD card
  12. Copy FBI.cia from the FBI .zip to the /cias/ folder on your SD card
  13. Copy arm9loaderhax.bin from the Luma3DS .7z to the root of your SD card, overwrite existing files
  14. Create a folder named luma on the root of your SD card
  15. Create a folder named payloads in the luma folder on your SD card
  16. Copy GodMode9.bin from the GodMode9 .zip to the /luma/payloads/ folder on your SD card and rename GodMode9.bin in /luma/payloads/ to start_GodMode9.bin
  17. Copy aeskeydb.bin to the /files9/ folder on your SD card
  18. Copy DspDump.3dsx to the /3ds/ folder on your SD card
Section II - Installing arm9loaderhax
  1. Reinsert your SD card into your device
  2. You should be already on 2.1.0 and powered on
  3. Go to URL http://2xrsa.3ds.guide in the browser of your device
    • If you get the error “This service is not available in your region”, use the System Settings to set your device’s country to match the NAND region you installed with 2.1.0 CTRTransfer
    • If you get another error, follow this troubleshooting guide
    • If you get a glitched screen, follow this troubleshooting guide
    • If you are on a 2DS or New 3DS and Wireless Communication is off, you can re-enable the wireless by removing the battery and unplugging the charger for several seconds then booting back up
  4. Press (Select) to Full Install
  5. The installer will now install arm9loaderhax on your device (this is very fast)
  6. Power off your device by pressing any button
  7. Insert your SD card into your computer
  8. Copy your device specific otp.bin from the /a9lh/ folder on your SD card to a safe location on your computer and back it up to multiple locations (such as online file storage), then reinsert your SD card into your device
  9. Reinsert your SD card into your device
Section III - Configuring Luma3DS
  1. Boot your device while holding (Select) to enter the Luma3DS configuration menu
  2. Use the (A) button and the D-Pad to turn on the following:
    • “Autoboot SysNAND”
    • “Use SysNAND FIRM if booting with R”
    • “Show NAND or user string in System Settings”
  3. If you are using a New 3DS, you can also enable the following:
    • “New 3DS CPU” to “Clock+L2(x)”
    • This will increase the framerate of many games, but may cause instability in others
    • If some games do not work properly, disable this option and try again
    • This breaks the Homebrew Launcher on 11.3!
  4. Press (Start) to save and reboot
    • If you get a black screen, just continue to the next section
    • If you get a “Failed to mount CTRNAND” error, just continue to the next section
Section IV - Restoring the System

If, before following this guide, you already had an EmuNAND setup and would like to move the contents of your previous EmuNAND to your new SysNAND CFW, now is the time to follow Move EmuNAND instead of doing the first four steps in this section.

  1. Boot your device while holding (Start) to enter GodMode9
  2. Navigate to SDCARD -> ctrtransfer
  3. Press (A) on <serialnumber>_nand.bin to select it, then select “NAND image options…”, then select “Restore SysNAND (safe)”
  4. Press (A) to unlock SysNAND overwriting, then input the key combo given
    • This will not overwrite your arm9loaderhax installation
  5. Input the key combo given to unlock SysNAND (lvl1) writing
    • This process will take some time
  6. Press (A) to continue once it has completed
  7. Press (Start) to reboot your device
  8. If your backup was of a version between 3.0.0 and 4.5.0, your device will not boot until you manually download the required firmware:
    • Download this file and rename it to firmware.bin
    • Download this file
    • Copy firmware.bin and cetk to the /luma/ folder on your SD card
    • Delete both of these files after updating your device
  9. Update your device by going to System Settings, then “Other Settings”, then going all the way to the right and using “System Update”
    • Updates while using A9LH + Luma (what you have) are safe, stop asking about it
    • The warning about never updating a New 3DS from 2.1.0 does not apply after restoring your NAND backup.
    • If this gives you an error, set your DNS settings to “auto”
    • If this still gives you an error and your NAND is below 9.2.0, follow 9.2.0 CTRTransfer
Section V - Injecting FBI
  1. Reboot holding (Start) during boot to launch GodMode9
  2. Navigate to SDCARD -> cias
  3. Press (A) on FBI.cia to select it, then select “CIA image options…”, then select “Mount image to drive”
  4. Press (A) on the .app file, then select “NCCH image options”, then select “Inject to H&S”
  5. Press (A) to unlock SysNAND (lvl1) writing, then input the key combo given
  6. Press (A) to continue
  7. Press (Start) to reboot your device
  8. If you still launch to the stock Health & Safety app and have downgraded with Gateway in the past, follow this troubleshooting guide
Section VI - Installing CIAs
  1. Launch Health and Safety (which is now FBI)
  2. Navigate to SD -> cias
  3. Select “<current directory>”
  4. Select the “Install all CIAs” option, then press (A) to confirm
  5. Press (Home) to exit FBI
Section VII - DSP Dump
  1. Launch the Homebrew Launcher from the home menu
  2. Select “DSP Dump”
  3. Press (Start) when prompted to exit DSP Dump
  4. Press (Start) to launch the Homebrew Launcher exit menu
Section VIII - Restore Health and Safety
  1. Reboot holding (Start) during boot to launch GodMode9
  2. Press (Home) to bring up the action menu
  3. Select “More…”
  4. Select “Restore H&S”
  5. Press (A) to unlock SysNAND (lvl1) writing, then input the key combo given
Section IX - CTRNAND Luma3DS
  1. Navigate to SDCARD
  2. Press (Y) on arm9loaderhax.bin to copy it
  3. Press (B) to return to the main menu
  4. Navigate to SYSNAND CTRNAND
  5. Press (Y) to paste arm9loaderhax.bin
  6. Select “Copy path(s)”
  7. Press (B) to return to the main menu
  8. Hold (R) and press (B) at the same time to eject your SD card
  9. Remove your SD card from your device
  10. Press (Start) to reboot your device with your SD card removed
    • Booting your device at least once with your SD card removed will allow you to configure the CTRNAND based Luma3DS installation
  11. Use the (A) button and the D-Pad to turn on the following:
    • “Show NAND or user string in System Settings”
  12. If you are using a New 3DS, you can also enable the following:
    • “New 3DS CPU” to “Clock+L2(x)”
    • This will increase the framerate of many games, but may cause instability in others
    • If some games do not work properly, disable this option and try again
    • This breaks the Homebrew Launcher on 11.3!
  13. Reinsert your SD card into your device
  14. Press (Start) to save and reboot

If DSi / DS functionality has broken (such as DS carts or DSiWare no longer working), follow this troubleshooting guide

You can now use Luma3DS Updater to update your Luma3DS to the latest version just by opening it and pressing (A).
This is not the same thing as a System Update; it just downloads and extracts the newest Luma3DS files. This will only update the Luma3DS files on your SD card. If you boot your device without an SD card, it will use the version you placed in CTRNAND.

You will now boot Luma3DS CFW SysNAND by default.
You can now hold (Select) on boot to launch the Luma3DS configuration menu.
You can now hold (Start) on boot to launch GodMode9.

You can update your arm9loaderhax installation in the future by following the instructions on the Updating A9LH page.

To use NTR CFW, get ntr.bin from the appropriate .zip on this page and copy it to the root of your SD card, then install BootNTR.cia from this page.

Keep your <serialnumber>_nand.bin file, it can be restored by GodMode9 to save you from a brick in the future.

You can remove your NAND backups from /files9/ as long as you still have them backed up to a safe location.

You can remove any extra files and folders from the root of your SD card that are not in the following list:

+ 3ds
+ DCIM
+ files9
+ hblauncherloader
+ luma
+ Nintendo 3DS
+ arm9loaderhax.bin
+ boot.3dsx

For information on changing your device to another region, check out the Region Changing page.

For information on keeping your A9LH installation up to date, check out the Updating A9LH page.

For information on using Luma3DS’s various features, check out its wiki.

For support in English, ask for help at either #3dshacks on Rizon IRC or Nintendo Homebrew on Discord.
If you appreciate this guide, I accept Donations through both Bitcoin and PayPal.
If you would like to support me by using my Amazon referral links, you can find those here.
United States - Canada - United Kingdom -  Germany -  Spain -  France