Developer(s) | StarlitSkies, FrozenFire |
---|---|
Console | Nintendo 3DS |
Version | 3.1.1 (September 28, 2024 | )
Links | |
GitHub | nh-server/scripts |
Download | |
ctrcheck is a custom GodMode9 script that does a large number of sanity checks and checksums on a 3DS' firmware and SD card to make troubleshooting easier through fault isolation, though it can also automatically fix certain issues.
Required Reading
ctrcheck does not fix the majority of issues by itself, and instead only informs the user that they exist. Some of the issues it checks for may still require large amounts of knowledge to fix - this script is not a 'miracle cure' and should not be treated as such.
Additionally, ctrcheck cannot check whether the SD is damaged, only certain specific issues with reading its data. If you have an issue that might be caused by an SD being corrupted or formatted badly, the pages Formatting an SD card and/or Checking SD card integrity will be far more useful.
Instructions
What You Need
- The latest version of ctrcheck.gm9
- To download, right-click/long-press the link and select
Save link as...
or similar, then rename the downloaded file toctrcheck.gm9
if it is not named exactly that
- To download, right-click/long-press the link and select
- A device that you can use to transfer files to your 3DS, either via an SD slot or via FTP
Section I - Prep Work
- Power off your console and insert the SD card into your device
- Copy the downloaded
ctrcheck.gm9
intosd:/gm9/scripts
on the SD card - If GodMode9 either is not installed or is outdated (the latest version is v2.1.1), install the latest version now
- Reinsert the SD card into your console
Section II - ctrcheck
- Hold START, and while holding START, power on your console. This will launch GodMode9
- Press the HOME button, then go into Scripts... -> ctrcheck
- If ctrcheck does not appear here, go into the folder
0:/gm9/scripts
and manually rename it toctrcheck.gm9
by highlighting it and pressing R+X, then reopen the scripts menu
- If ctrcheck does not appear here, go into the folder
- Based on the type of issue you're having, select one of the top three options
- If you are even slightly unsure about what type of issue it is, pick All
- Accept any prompts to fix issues and unlock sysNAND write permissions that appear, then read the results on the top screen once the script finishes
- If you are following this guide at someone else's request, send a picture of the results to that person. Otherwise, if the results include any of the following, do the matching instructions:
______ installed to firm0/firm1
: If the result type isInformation
, you may ignore this line. If the type isWarning
orCritical
, follow either Updating B9S (if using boot9strap) or Updating fastboot3DS (if using fastboot3DS) to get the latest version of a known good bootloader. If the type isError
and both FIRM0 and FIRM1 are affected, ask for help in the Nintendo Homebrew DiscordCritical: NVRAM is inaccessible
: If your console is an old model (no ZL/ZR shoulder buttons and no C-Stick), try reseating the Wi-Fi module on the motherboard. If this does not fix it or you have a new model, download the special build of Luma linked in the fourteenth word of this sentence, rename it toboot.firm
, and put it on the root of your SD card- This build does not fix the issue, only stop it from causing system crashes. You will still be unable to play DS games, and if you were unable to use Wi-Fi it will also stay broken - fixing these entirely requires a hardware replacement
Warning: The SD title database needs to be reset
: Using this picture as a guide, reset the title database. After you reset, follow Finalizing Setup to reacquire the homebrew appsWarning: There is no boot.firm/boot.3dsx in the SD card root
: Follow Restoring / Updating CFW to reacquire the file(s)Critical: NAND is unreadable at _______...?
: Your console's internal storage is damaged in a way that may require advanced troubleshooting to fix. Ask for help in the Nintendo Homebrew Discord- One or more of movable.sed, LFCS, SecureInfo, and/or HWCAL is marked as
not found
,is an invalid size
, ordata is invalid
: If you have a NAND backup from before this happened, restore it. If you do not, then ask for help in the Nintendo Homebrew Discord Critical: n3DS has an o3DS NAND header
: If you have a NAND backup from before this happened, restore it. If you do not, then ask for help in the Nintendo Homebrew Discord
- If any other result(s) of the type
Warning
,Critical
, orError
appear, you may want to ask for help in the Nintendo Homebrew Discord and provide the full output of ctrcheck there
The results found on the top screen are also stored on the SD card in the file sd:/gm9/ctrcheck_latest.txt - however, if you run ctrcheck again, that file will be overwritten with the new results. To avoid this, enabling permanent logging will also append the results to the file sd:/gm9/ctrcheck_log.txt . |