How to install or update Arm9LoaderHax with SafeArm9LoaderHax

After the release of Arm9LoaderHax to the public, many people were excited about it and tried it right away but the majority stayed with their working entry points because it was very risky. At first, there was no real documentation but this soon changed and the first real guides for dumping your OTP.bin (Console specific keys), compiling the installer and installing Arm9LoaderHax got released and installing A9LH got a lot easier to install but there were still brick risks and many people continued to stay with their working entry point.

But now Developer AuroraWright released his SafeArm9LoaderHaxInstaller which makes installing the Arm9Loaderhax Payload to your 3DS 100% Brick risk-free (Of course if your 3DS turns off while installing the payload it can still brick but else there is no possibility of bricking anymore so always connect your 3dS to a charger while installing). You will of course still need to downgrade your 3DS to 2.1 and dump your OTP.bin but as long as you follow the guide there should be no risk of bricking. So what makes SafeArm9LoaderHaxInstaller different from the normal Arm9LoaderHaxInstaller. SafeArm9LoaderHaxInstaller loads all the needed files from the SD card (no more need to build console-specific installers), and it’s really fast. Other than that, it’s way safer than the original one, as it does the following checks:

– Checks that it’s able to encrypt FIRM partitions properly
– If you have a New 3DS and you’re doing a first install of A9LH, or you’re reinstalling from A9LH itself, it validates your OTP. Sadly there’s no known way of validating the OTP on an Old3DS first install.
– Hashes the secret_sector, FIRM0 and FIRM1 to verify their integrity
– Checks that stage1 and stage2 don’t exceed a maximum size.

So if you decided to finally switch to Arm9LoaderHax here is a Tutorial on dumping the OTP.bin, Installing Arm9LoaderHax with SafeArm9LoaderHaxInstaller and setting up AuReiNand to use Arm9LoaderHax. RxTools doesn’t support Arm9LoaderHax just yet but support will hopefully come Soon™.

DISCLAIMER: Any modifications to your 3DS are done at your own risk. I am not responsible for any bricks that may occur during this process

1. Dumping the Console Unique Key (OTP.bin)
Please follow the following Guide on how to downgrade your 3DS to 2.1 and dump your Console Unique Key but be aware that if you use the wrong files, don’t follow the tutorial 100% correctly, flash a corrupt sysNAND image or your 3DS turns off while it messes with the sysNAND partition can brick your 3DS so double check that you have the correct files for your 3DS, follow the Tutorial as close as possible, checked your 3DS NAND backups and have your 3DS hooked up to a wall charger so it doesn’t accidently shut down. The following Guides assume that your 3DS is on Firmware 9.2. If your 3DS isn’t on Firmware 9.2 and not higher than 10.3 then you can downgrade it with SafeSysSpdater to 9.2 and follow this tutorial. Be aware that even though SafeSysUpdater has been made as stable as possible that there is still a tiny brick risk.
Old3DS/2DS/New3DS Tutorial
If you want to check the files integrity you can find SHA-256 sums of all the files here. They can be found at the bottom.
When you finished dumping your Console Unique Key you can now continue and install Arm9LoaderHax to your 3DS.

2. Installing Arm9LoaderHax with SafeArm9LoaderHaxInstaller
You will need:
Homebrew launcher installed
payload_stage1.bin and payload_stage2.bin 
firm0.bin (which is new3ds90.firm), firm1.bin (which is new3ds10.firm) and secret_sector.bin. Just download the file and then you will find the required files in the a9lh” folder. You will only have to copy them over to your SDCard later.
Luma3DS (former AuReiNand)

1. Extract SafeA9LHInstaller and copy the 3ds folder and SafeA9LHInstaller.dat file to the root of your 3DS SDCard.
2. Create a folder called a9lh on the root of your 3DS SDCard
3. Copy otp.bin, firm0.bin, firm1.bin, secret_sector.bin, payload_stage1.bin and payload_stage2.bin into the a9lh folder
4. Put the SDCard back into your 3DS and boot the HomeBrewLauncher through your favorite entry point
5. Start SafeA9LHInstaller and wait until it finishes. After it finished just tap one button to shut down your 3DS.
Congratulations you now installed Arm9LoaderHax on your 3DS 😀

2.1 Updating Arm9LoaderHax with SafeArm9LoaderHaxInstaller
1. Copy the arm9loaderhax.bin file from the SafeA9LHInstaller folder to the root of your 3DS SDCard
2.  Create a folder called a9lh on the root of your 3DS SDCard
3. Copy otp.bin, firm0.bin, firm1.bin, secret_sector.bin and the updated payload_stage1.bin and payload_stage2.bin files into the a9lh folder (If you don’t have your OTP.bin anymore that’s not a problem because SafeA9LHInstaller can generate the needed stuff from the SHA register leftovers)
4. Start your 3DS. It should boot into SafeA9LHInstaller. You can now select to do a complete update or just update stage2 of Arm9LoaderHax.
5. After selecting your choice wait for the task to finish and then tap a button to shutdown your 3DS
Congratulations you successfully updated Arm9LoaderHax

3. Setting up Luma3DS to use ARM9LoaderHax
1. Extract Luma3DS and copy the luma folder and arm9loaderhax.bin file to the root of your SDCard
2. Put the SDCard back into your 3DS and it should ask you setup a few things for the first boot. Now check and save your preferred settings and let Luma3DS start. Luma3DS should now automatically boot into emuNAND or updated sysNAND ?

Congratulations you now have a 3DS with fully working ARM9LoaderHax and Luma3DS ?

Big thanks to every Dev who made Arm9LoaderHax possible and AuroraWright for her SafeArm9LoaderHaxInstaller and I hope to see more awesome releases in the future. I’m still hoping for RXTools to release an ARM9LoaderHax compatible version soon™ ?
If you have any questions or problems feel free to ask in the Comments

Source: GBATemp

About Darthsternie

Interested in everything Technical. Loves self-repairing Tech. Collector of Firmwares. Enthusiast Gamer and Anime Fan ^^


  1. Hey, I have a question, how would I uninstall arm9loaderhax in order to redowngrade my system to 2.1 so I can reget my otp.bin file. I deleted it without thinking about keeping it for stuff like safea9lh. Thanks

    • You actually don’t need your OTP.bin if using the arm9loaderhax.bin file of SafeA9LHInstaller because it generates the needed stuff from the leftover

  2. I wonder what nintendos reply is going to be in the 10.8 update?

  3. as soon as i put preference at boot of the 3ds thing everything was fine but now when i open my 3ds it all black and i cant start it witout sd card

Leave a Reply

Your email address will not be published. Required fields are marked *