Welcome to the 3DS assistance guide! If you're reading this, you most likely want to be better at helping in the Nintendo Homebrew Discord, but don't know where to start. This guide should serve as a helpful glossary and FAQ for those purposes.
General Advice
- Don't try to solve an issue if you have no idea how to fix it.
- Having only enough info to make educated guesses is fine, you're not expected to instantly find a solution. That's sometimes how it works even for the helpers.
- You don't have to keep helping if someone's getting on your nerves. There will always be other people to find that person's issue.
- Don't assist people in DMs. It is against the server rules, as we cannot monitor it.
- Don’t expect anything for helping out. Ideally, the helping should be its own reward anyway.
- That isn't an excuse to get burnt out, though. There's a difference between being selfless and being self-destructive.
Difference between software, firmware and hardware
- Hardware is the console's physical parts, such as the RAM and CPU. This also includes things like the n3DS' NFC touchpoint.
- Software is the 'encoded instructions' that cause the hardware to do specific things. This includes games, homebrew apps, system apps, etc.
- Firmware is any software that runs directly on top of the hardware, such as its operating system. Despite its name, 'custom firmware' usually only patches the existing firmware rather than being an entirely new one.
Basic info on SOAP transfers
All information on SOAP transfers can be found under cleaninty's page.
You almost always need donor files from an unusable console to do SOAP transfers, so if you need a SOAP for your console, don't try to do it yourself. Ask on the Nintendo Homebrew Discord, and one of the people with a large number of donors will be able to help.
Command list
This Google Doc contains a list of every single command relating to 3ds assistance.
Useful Keywords
Below is a list of keywords that are nice to know.
sysNAND: The console's internal file storage. CFW can be safely installed to this without any notable risks.
emuNAND: Short for emulated NAND. Used to be the way CFW was separated from the "stock" NAND, but this is no longer required. emuNANDs' only practical uses now are for Korean games' fonts or a broken NAND chip.
- redNAND: An improved type of emuNAND that doesn't take up as much space on the SD. Otherwise identical.
CTR: Short for Citrus and/or Centrair, the code names for the 3DS.
- Examples include: ctrcheck, ctrtransfer and the CTRNAND.
NTR: Short for Nitro, the code name for the DS.
- Examples include: ntrboot and NTR CFW.
TWL: short for Twilight, the code name for the DSi.
- Examples include: TWLFix, TWiLightMenu++, and the TWLNAND.
Useful Programs
The following are apps or scripts that are commonly used or have extremely useful functionality for damaged consoles.
Apps that are packaged with Finalizing Setup will be listed first.
Anemone3DS: A theme and splash screen manager.
Checkpoint: A save file and cheat manager.
FBI: A file explorer and title manager with significantly less safety checks than GodMode9.
GodMode9: The Swiss Army Knife of the 3DS world. Mainly used as a file explorer, game dumper, title manager, and to create/restore NAND backups.
Luma3DS: The sole remaining CFW for the 3DS. Has several useful features and a built-in menu.
Universal-Updater: Homebrew browser and updater.
FTPD: used to transfer files from your 3ds to your PC wirelessly.
faketik: Creates new tickets for installed apps that lost theirs. Doesn't work if the apps themselves were deleted.
rverse: A third-party revival of Miiverse.
rehid: Allows remapping of the buttons and touchscreen based on specific inputs, and can be configured to run differently based on what game is being played.
TWiLightMenu++: A DSi Menu upgrade/replacement, mainly used on the 3DS to play dumps of NDS games directly from the SD card.
TWPatch: Enhances TWiLightMenu++'s visual capabilities, most notably by allowing for widescreen support.
ctrcheck: A GodMode9 script that checks the NAND for damage. Cannot detect most hardware issues.
3ds_hw_test: A .firm
payload that checks for RAM issues.
Common troubleshooting situations
Some of the problems here are not actually "common" per se, but are instead included because they have a common cause and well-known solution.
Above all else, always remember to check 3DS:ERR if you don't know what an error means - one of those pages is relatively likely to have it. If it doesn't and the error is either a stock error code or an ErrDisp, try using .err through Kurisu. |
- If the SD card is the problem, it may be worth it to reinsert the SD card to see if that works.
- If an error is occurring on boot and there is no known cause, see whether it keeps happening (including whether the error changes) if the SD is taken out. If it does, the issue is with the NAND.
- If an error with the code
0xd900458b
is happening when opening a game, use 3DS:FCG. - If someone has Parental Controls enabled and wants to remove it, direct them to 3DS-ParentalUnlock if they have CFW, or mkey.eiphax.tech if they don't. (not salthax - it was never updated to work on the latest system version).
- If an
0xC8804478
error happens when opening anything that uses DS mode (a fast way to test is by opening Download Play -> Nintendo DS), link the.twlfix
command (which is itself a redirect to 3DS:TWLFix). - If a helpee has more than 1 ID0, tell them to do 3DS:MID0.
- If any one of the following things is happening to a console, link the hardware test and have the helpee send the contents of
hwtest.log
after it finishes. This will test the RAM for errors.- The console repeatedly fails to boot and the notification LED is either red or magenta when it fails.
- The console randomly and inconsistently crashes, regardless of whether the SD is inserted or not.
- GodMode9 crashes.
Info on Older Setups
B9S is the newest of a long list of homebrew/CFW setups. Below is a list of all the mainstream older setups, in mostly chronological order, and instructions on how to upgrade from them to B9S.
Setups marked with an (E) use an emuNAND. emuNANDs are unnecessary under boot9strap, as they were only used on these setups because modifying the sysNAND with homebrew was considered unsafe at the time. If you are upgrading from one of these setups to B9S, it is advised to move the emuNAND into your sysNAND. |
If a setup is marked as N/A, it only means there's no easier way to migrate to boot9strap. If you were using a setup marked with N/A, you can still go to our guide to 3DS custom firmware and insert your system version to install CFW normally. |
- Userland: Any exploit that allowed non-persistent Homebrew Launcher access, such as by running a modified save file from a cartridge game.
- Gateway (E): Gateway's first attempt to take control of the 3DS homebrew scene. Uses a old/downgraded sysNAND combined with one of multiple exploits to load the Gateway Menu, from which an emuNAND on a newer version (known as Gateway Mode) is used for most homebrew functionality.
- Upgrade to boot9strap: Flash NTRBoot to the blue cartridge and install boot9strap via NTRBoot.
- Sky3DS: Gateway's second attempt to take control. A piracy-focused flashcart that spoofs a legitimate game, letting it run 3DS games directly from the HOME Menu on any firmware version without installing an exploit. Has an enormous ban risk unless you add a file that can only be extracted via CFW, and is thus obsolete.
- Upgrade to boot9strap: N/A
- Stargate: Gateway’s last attempt to take control. A piracy-focused flashcart that can run 3DS games the same way Sky3DS does, but also can run DS games and ntrboot. Has the same ban risk as Sky3DS when running 3DS games.
- Upgrade to boot9strap: Usually N/A, but if you used their Easy CFW Mode pack, wipe the console's SD card and then follow Updating B9S.
- Menuhax (E): A set of secondary exploits that all triggered on Home Menu startup, allowed HBL access when opening Home Menu settings, and used a emuNAND. It was sometimes also used as an entrypoint for Gateway Mode.
- Upgrade to boot9strap: Follow Migrate from menuhax.
- A9LH (arm9loaderhax): The direct predecessor to boot9strap - also a coldboot CFW, but with reduced functionality and safety because of how it's implemented. Supports Luma3DS versions up to 7.0.5.
- Upgrade to boot9strap: Follow A9LH to B9S.
- B9S 1.0-1.3: Just older versions of boot9strap. Very few practical differences aside from the older versions not having LED status codes.
- Upgrade to (latest) boot9strap: Follow Updating B9S
- FB3DS (fastboot3ds): An alternate bootloader option to B9S, trading out LED status codes for an interactive on-boot menu, FCRAM boot (useful for That-Shortcut-Thingy), a chainloader with more flexibility and power than Luma3DS, and a system for backups of critical system files. Mainly useful for power users.
- Return to boot9strap: Follow Updating B9S.