(Added a prefetch abort menu error on boot scenario after a helpee encountered it by enabling hbmenu autoboot to access menuhax67_installer.) |
(LayeredFS is not the right word here) |
||
(23 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{shortcut|3DS:EXCEPTION}} | {{shortcut|3DS:EXCEPTION}} | ||
This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues. | This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues. | ||
==Reading a Luma3DS exception screen== | |||
== Reading a Luma3DS exception screen == | |||
A Luma3DS exception has four (or five, in a few cases) different parts to it that help in finding its cause, as follows: | A Luma3DS exception has four (or five, in a few cases) different parts to it that help in finding its cause, as follows: | ||
[[File:Luma3DS_exception.png|center]] | [[File:Luma3DS_exception.png|center]] | ||
* '''Processor:''' What part of the system is causing the exception. The two processors are: | * '''Processor:''' What part of the system is causing the exception. The two processors are: | ||
**'''Arm9:''' The 'security processor' of the system. These exceptions usually | ** '''Arm9:''' The 'security processor' of the system. These exceptions are usually raised because of errors in NAND data or hardware faults in either the 3DS or its SD card. | ||
**'''Arm11:''' The 'userland' of the system. These exceptions have numerous causes but are often related to broken software or user data. | ** '''Arm11:''' The 'userland' of the system. These exceptions have numerous causes but are more often related to broken software or user data. | ||
* '''Exception type:''' | * '''Exception type:''' The type of fault that caused the exception. These categories correspond to the ARM exceptions for the [https://developer.arm.com/documentation/ddi0201/d ARM9] and [https://developer.arm.com/documentation/ddi0360/f ARM11] CPUs, as follows: | ||
**'''data abort''': | ** '''data abort''': Caused by a read or write to an invalid part of memory. Usually related to game mods/cheats/plugins, broken HOME Menu data, and/or broken CFW applications. | ||
**'''prefetch abort (svcBreak)''': | ** '''prefetch abort''': Caused by an attempt to execute a CPU instruction that was marked as invalid. Often related to conflicts between CFW and other software. | ||
**'''undefined instruction''': | ** '''prefetch abort (svcBreak)''': Caused by either Process9 or homebrew software manually halting because it tripped a pre-defined error condition. Often related to damage to NAND data, even when raised by Arm11. Can also happen when launching an out-of-region game that isn't [[3DS:SGL|locale emulated.]] | ||
*'''Fault status:''' | ** '''prefetch abort (kernel panic)''': Caused by Kernel9 detecting an unrecoverable error and forcibly halting to avoid causing damage. Can be related to any of several things, but hardware issues are the most likely. | ||
*'''Current process:''' Where the error is coming from in the system. Often the most helpful part of the exception. Some examples of processes are as follows: | ** '''undefined instruction''': Caused by an attempt to execute a CPU instruction that was unimplemented, disallowed, or unusable. Often related to software missing its required files (if not on boot) or an outdated <code>boot.firm</code> (if on boot). | ||
**'''fs''': The filesystem, i.e. either the SD card or the NAND. | * '''Fault status:''' The specific type of ARM exception that was raised. Helpful for developers, but not so much for the end user. | ||
**'''menu''': Data that is opened either as a part of the HOME Menu or at the same time as it. | * '''Current process:''' Where the error is coming from in the system. Often the most helpful part of the exception. Some examples of processes are as follows: | ||
**'''loader''': The service that opens apps, meaning the app | ** '''fs''': The filesystem, i.e. either the SD card or the NAND. | ||
**'''nwm''': Networking services, almost always | ** '''menu''': Data that is opened either as a part of the HOME Menu or at the same time as it. | ||
**'''ns''': The <u>N</u>intendo User Interface <u>S</u>hell, which handles all apps/processes/services in 3DS mode. | ** '''loader''': The service that opens apps, meaning the app most recently opened has an issue. | ||
*'''R0''': Usually just internal data that's not worth reading. There are | ** '''nwm''': Networking services, almost always Wi-Fi. | ||
** | ** '''ns''': The <u>N</u>intendo User Interface <u>S</u>hell, which handles all apps/processes/services in 3DS mode. | ||
**' | * '''Registers (R0-R12/SP/LR/PC/CPSR/FPEXC)''': Usually just internal data that's not worth reading, though R0 is the most likely of them to contain useful data. There are certain notable exceptions that aren't mentioned in the list of known errors, however: | ||
** If the value <code>000400??</code> (the ? marks can be any number) appears in any of the registers, it likely refers to the first half of a title ID - check the value of the register after it to ensure this. If it is a title ID, it can be used to narrow down the original cause of an error. | |||
** If the value of any register starts with the letter C, D, E, or F (even if it isn't in R0) and doesn't look completely random, it may be an error code - this is more likely if the value starts with C or D. You may want to check it manually, as if it is an error code, it can likely help in troubleshooting. | |||
== Known Errors == | == Known Errors == | ||
In the following list, the file prefixes on file paths refer to the starting location. <code>sd:/</code> refers to the SD card, and numbers in the format of <code>[X:]</code> refer to GodMode9's drive numbers. | In the following list, the file prefixes on file paths refer to the starting location. <code>sd:/</code> refers to the SD card, and numbers in the format of <code>[X:]</code> refer to GodMode9's drive numbers. | ||
{{info|If the below fixes do not solve your issue or you are unsure of what to do, join the [https://discord.gg/ | {{info|If the below fixes do not solve your issue or you are unsure of what to do, join the [https://discord.gg/C29hYvh Nintendo Homebrew Discord] for further assistance.}} | ||
---- | ---- | ||
=== <big>Arm9</big> === | === <big>Arm9</big> === | ||
Arm9 errors are sorted by their '''exception type'''. | Arm9 errors are sorted by their '''exception type'''. | ||
Line 34: | Line 40: | ||
<h5>Any Type</h5> | <h5>Any Type</h5> | ||
* Files on the SD are corrupted. | * Files on the SD are corrupted. | ||
** To fix, [[Checking_SD_card_integrity|verify that | ** To fix, [[Checking_SD_card_integrity|verify that the SD card is not faulty.]] If it is verified working, make a backup of all intact files, [[Formatting_an_SD_card|format the SD card]], and try booting again. | ||
* A system save located on the NAND in <code>[1:]/data</code> has a problem. | * A system save located on the NAND in <code>[1:]/data</code> has a problem. | ||
* System-unique files are missing from the NAND in <code>[1:]/rw/sys</code>. | * System-unique files are missing from the NAND in <code>[1:]/rw/sys</code>. | ||
Line 42: | Line 48: | ||
** To fix, create this folder. | ** To fix, create this folder. | ||
* System titles have been deleted. | * System titles have been deleted. | ||
** To fix, perform a [[3DS:Safe Mode|Safe Mode update]]. | ** To fix, perform a [[3DS:Safe Mode|Safe Mode update]]. If this does not work, perform a [[3DS:CTRTransfer|CTRTransfer]]. | ||
<h5>prefetch abort (svcBreak)</h5> | <h5>prefetch abort (svcBreak)</h5> | ||
Line 55: | Line 61: | ||
<h5>undefined instruction</h5> | <h5>undefined instruction</h5> | ||
* The console likely has a hardware issue. | * The console likely has a hardware issue, or corrupted sysmodules. Try performing a [[3DS:CTRTransfer|CTRTransfer]] to see if it resolves the issue. | ||
<span style="font-size:175%; display:flex; justify-content:center"><h4>Error During Use</h4></span> | <span style="font-size:175%; display:flex; justify-content:center"><h4>Error During Use</h4></span> | ||
Line 64: | Line 70: | ||
=== <big>Arm11</big> === | === <big>Arm11</big> === | ||
All Arm11 errors are sorted by their '''current process'''. | All Arm11 errors are sorted by their '''current process'''. | ||
<span style="font-size:175%; display:flex; justify-content:center"><h4>Error On Boot</h4></span> | <span style="font-size:175%; display:flex; justify-content:center"><h4>Error On Boot</h4></span> | ||
<h5>act</h5> | |||
* Your NNID(s)' stored data is misconfigured or being interfered with. | |||
** To fix, if [https://pretendo.network Pretendo] is installed, turn it off by disabling <code>Enable loading external FIRMs and modules</code> on [[3DS:Luma3DS/Configuration|the Luma configuration menu]]. | |||
*** If this does not help or Pretendo is not installed, then [[3DS:GodMode9/Usage#Restoring_a_NAND_backup|restore a NAND backup]] - especially if you recently tried to [[3DS:GodMode9/Usage#Removing_an_NNID_without_formatting_your_device|log out an NNID]]. | |||
<h5>boss</h5> | <h5>boss</h5> | ||
* The current firmware version is too old for SpotPass to work. Perform a [[3DS:Safe Mode|Safe Mode update]]. | * The current firmware version is too old for SpotPass to work. Perform a [[3DS:Safe Mode|Safe Mode update]]. | ||
** If this does not work, you may require [[3DS:CTRTransfer|a CTRTransfer.]] | ** If this does not work, you may require [[3DS:CTRTransfer|a CTRTransfer.]] | ||
<h5>camera</h5> | |||
* Potential hardware issues, or an instance of ShutTheCamUp is crashing. | |||
** Look for and delete <code>/luma/sysmodules/0004013000001602.ips</code> and <code>/luma/titles/0004013000001602/code.ips</code>. | |||
*** If this fixed the issue, then [[3dsguide:restoring-updating-cfw|update Luma3DS]] and reinstall the correct Old or New 3DS patch for [[udb:3ds/shut-the-cam-up|ShutTheCamUp]] if you wish to continue using it. | |||
*** If these don't exist, or the error occurs when booting without an SD card, it's likely hardware issues. Join the [https://discord.gg/nintendohomebrew Nintendo Homebrew Discord] and ask, in English, for help. | |||
<h5>cfg</h5> | |||
* Either the NAND [[3dbrew:Config Savegame|config savegame]] or part of your console-unique file(s) is damaged. | |||
** To fix, first boot into GodMode9, press R+A while the cursor is on the folder <code>[1:]/data/<ID0>/sysdata/00010017</code>, choose to <code>Copy to 0:/gm9/out</code>, then delete the folder. After rebooting, the console will enter initial setup again; this is intended and not an issue. | |||
*** If this does not help, delete the newly created <code>00010017</code> and copy the backup into its place, run [[3DS:ctrcheck|ctrcheck]], and replace any console-unique files marked as invalid or missing with the copies from the <code>essentials.exefs</code> backup inside <code>[S:] SYSNAND VIRTUAL</code> in GodMode9. | |||
<h5>fs</h5> | <h5>fs</h5> | ||
* Could be an SD card problem, minor NAND problem, hardware issue, or anything in between. | * Could be an SD card problem, minor NAND problem, hardware issue, or anything in between. | ||
** [[wikipedia:Fault isolation| | ** [[wikipedia:Fault isolation|Fault isolation]] will likely be required to find the true cause of this error. Start by doing [[3DS:ctrcheck|ctrcheck]] and trying to trigger the error with the SD card removed from the console.<br>If the error stops when the SD card is removed, [[Formatting an SD card|reformat the SD card]], and if that doesn't help, [[Checking SD card integrity|test it for hardware damage]]. | ||
<h5>hid</h5> | <h5>hid</h5> | ||
* Potential hardware problems, or an | * Potential hardware problems, or an instance of rehid is crashing. | ||
** First look for and delete <code>/luma/titles/0004013000001D02</code> and <code>/luma/ | ** First look for and delete <code>/luma/titles/0004013000001D02</code>, <code>/luma/titles/0004013000003302</code>, <code>/luma/sysmodules/0004013000001D02.cxi</code> and <code>/luma/sysmodules/0004013000003302.ips</code>. | ||
*** If this fixed the issue, then [[3dsguide:restoring-updating-cfw|update Luma3DS]] and reinstall the latest release of [[3DS:Rehid|rehid]] to continue using it. | |||
*** If these don't exist, or rehid has never been installed on this console, it's likely hardware issues. [[3DS:Hardware test|3ds_hw_test]] or [[3DS:ctrcheck|ctrcheck]] may help with fault isolation. | |||
<h5> | <h5>i2c/gsp/mcu/pxi/spi/</h5> | ||
* The console has a serious hardware issue that is likely not easily fixable. | * The console has a serious hardware issue that is likely not easily fixable. | ||
** | ** Run [[3DS:Hardware test|3ds_hw_test]]. If the test returns zero errors detected, join [https://discord.gg/C29hYvh the Nintendo Homebrew Discord] and ask, in English, for help. | ||
<h5>loader</h5> | |||
* <h6>prefetch abort (svcBreak)</h6> | |||
**The code or sysmodule patch Luma3DS tried to load is invalid or corrupt. | |||
***To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in <code>/luma/titles</code> or <code>/luma/sysmodules</code>.) Alternatively, you may disable <code>loading external FIRMs and modules</code> as well as <code>Enable game patching</code> in the [[3DS:Luma3DS/Configuration|Luma3DS configuration menu]]. | |||
<h5>mset</h5> | <h5>mset</h5> | ||
Line 102: | Line 130: | ||
*** To fix, either perform a [[3DS:Safe Mode|Safe Mode update]], attempt to enter System Settings before the crash occurs and delete the application in Data Management, or [[Formatting an SD card|reformat the SD card]]. | *** To fix, either perform a [[3DS:Safe Mode|Safe Mode update]], attempt to enter System Settings before the crash occurs and delete the application in Data Management, or [[Formatting an SD card|reformat the SD card]]. | ||
* <h6>prefetch abort</h6> | * <h6>prefetch abort</h6> | ||
** An installation of | ** An installation of Menuhax is conflicting with the custom firmware. | ||
*** To fix, follow the directions [[3DS:Troubleshooting/removing_menuhax67|on this page]]. | *** To fix, follow the directions [[3DS:Troubleshooting/removing_menuhax67|on this page]]. | ||
**If this occurs on boot, | **If this occurs on boot, set '''Hbmenu autoboot''' in the [[3DS:Luma3DS/Configuration|Luma configuration menu]] to 3DS, then follow the above instructions and turn '''Hbmenu autoboot''' back off once it has been removed. | ||
***Ensure in <code>sd:/luma/config.ini</code> that hbldr_3dsx_titleid is set to 000400000d921e00 and <code>boot.3dsx</code> is in the root. | |||
* <h6>prefetch abort (svcBreak)</h6> | * <h6>prefetch abort (svcBreak)</h6> | ||
** The <code>f000000b</code> folder in <code>SYSNAND CTRNAND</code> is broken, its exact location being at <code>[1:]/data/<ID0>/extdata/00048000/f000000b</code>. | ** If <code>R5</code> contains <code>D900458B</code>: The <code>f000000b</code> folder in <code>SYSNAND CTRNAND</code> is broken, its exact location being at <code>[1:]/data/<ID0>/extdata/00048000/f000000b</code>. | ||
*** To fix, backup <code>f000000b</code> by pressing R+A while highlighting it, then selecting <code>Copy to 0:/gm9/out</code>. Once it is backed up, delete the folder. If this does not fix the issue, copy the folder back where it was. | *** To fix, backup <code>f000000b</code> by pressing R+A while highlighting it, then selecting <code>Copy to 0:/gm9/out</code>. Once it is backed up, delete the folder. If this does not fix the issue, copy the folder back where it was. | ||
**System titles are missing. Perform a [[3DS:Safe Mode|Safe Mode update]]. | |||
**If you have a recent NAND backup, try restoring it with [[3DS:GodMode9/Usage#Restoring_a_NAND_backup|this guide]] | |||
<h5>ns</h5> | <h5>ns</h5> | ||
* The [[3DS:Luma3DS/Configuration|Luma configuration]] setting | * The [[3DS:Luma3DS/Configuration|Luma configuration]] setting '''Hbmenu autoboot''' is set to boot to a title that does not exist. | ||
** To fix, disable the option | ** To fix, disable the option, install an application with the title ID in <code>sd:/luma/config.ini</code>, or change the set title ID to match an application that does exist. | ||
<h5>nwm</h5> | <h5>nwm</h5> | ||
* The WiFi chipset's hardware is damaged or dead. | * The WiFi chipset's hardware is damaged or dead. | ||
** To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on. | ** To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on. | ||
*** If the 3DS is an old model, you can disable WiFi | *** If the 3DS is an old model, you can disable WiFi using an external switch. New models do not have this switch disable it through the HOME Menu Settings or Rosalina. Repeatedly pressing the keycombo for Rosalina while powering on might let you access Rosalina before it can crash. | ||
<h5>pm</h5> | <h5>pm</h5> | ||
Line 125: | Line 156: | ||
<h5>3dsx_app</h5> | <h5>3dsx_app</h5> | ||
* The <code>.3dsx</code> file | * The <code>.3dsx</code> file that was most recently opened is corrupted. | ||
** To fix, download a new copy of the <code>.3dsx</code> file. If this error happens when | ** To fix, download a new copy of the <code>.3dsx</code> file. If this error happens when opening the Homebrew Launcher, download a new copy of <code>boot.3dsx</code>. | ||
**: If the error still happens, [[Checking SD card integrity|test | **: If the error still happens, [[Checking SD card integrity|test the SD card for errors.]] | ||
<h5>app/CtrApp</h5> | <h5>app/CtrApp</h5> | ||
* The app | * If not <code>prefetch abort (svcBreak)</code>: The app most recently opened is trying to use broken software. | ||
** To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. | ** To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. | ||
**: If the error still happens, then the game itself is likely faulty. If it is a system app, [[3DS:CTRTransfer|perform a CTRTransfer]]. Otherwise, if it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | **: If the error still happens, then the game itself is likely faulty. If it is a system app, [[3DS:CTRTransfer|perform a CTRTransfer]]. Otherwise, if it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | ||
* If <code>prefetch abort (svcBreak)</code>: The app most recently opened is out-of-region and relies on locale-specific data. Activate [[3DS:SGL|locale emulation]] for it. | |||
<h5>GARDEN</h5> | <h5>GARDEN</h5> | ||
Animal Crossing's game data or savedata is having issues. | * Animal Crossing's game data or savedata is having issues. | ||
* To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, then the game itself may be faulty. If it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | ** To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, then the game itself may be faulty. If it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | ||
** If the error yet still happens, ensure that you have not used a save editor before the error started happening. If you have used a save editor, the edits are broken and you will need to restore a backed-up save, or wipe the save and start over if you have no backup. | *** If the error yet still happens, ensure that you have not used a save editor before the error started happening. If you have used a save editor, the edits are broken and you will need to restore a backed-up save, or wipe the save and start over if you have no backup. | ||
<h5>fs</h5> | <h5>fs</h5> | ||
* Could be an SD card problem, minor NAND problem, hardware issue, or anything in between. | * Could be an SD card problem, minor NAND problem, hardware issue, or anything in between. | ||
** [[wikipedia:Fault isolation|fault isolation]] will likely be required to find the true cause of this error. Start by doing [[3DS:ctrcheck|ctrcheck]], [[Formatting an SD card| | ** [[wikipedia:Fault isolation|fault isolation]] will likely be required to find the true cause of this error. Start by doing [[3DS:ctrcheck|ctrcheck]] and trying to recreate the error without the SD card inserted.<br>If the error stops after the SD card is removed, [[Formatting an SD card|reformat the SD card]], and if that doesn't help, [[Checking SD card integrity|test it for hardware damage]]. | ||
<h5>Kujira/Joker/niji_loc</h5> | <h5>Kujira/Joker/niji_loc</h5> | ||
* The app | * The app most recently opened has an issue of some kind. | ||
** To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, ensure the game is the same region as the console - if it is not, [[3DS:SGL| | ** To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, ensure the game is the same region as the console - if it is not, [[3DS:SGL|activate locale emulation for the game.]] | ||
*** If the error yet still happens, then the game itself is likely faulty. If it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it. If it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it. If it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | *** If the error yet still happens, then the game itself is likely faulty. If it is a [[3DS:Dump titles and game cartridges#Dumping a Game Cartridge|cartridge dump]], redump it. If it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it. If it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol. | ||
<h5>loader</h5> | <h5>loader</h5> | ||
* The app | |||
** Most of the possible error codes | * <h6>undefined instruction</h6> | ||
** The app most recently opened has an issue. If the value of R0 starts with C or D, it is an error code, and has a chance of being an error code if the value starts with E or F. Here are some common values for R0: | |||
*** <code>D9004587</code>: When trying to open a game: The game is corrupted, or it's seed is not imported. | |||
**** See: [[3DS:Fixing corrupted games]] | |||
*** <code>C8804478</code>: If trying to open the Homebrew Launcher: <code>boot.3dsx</code> is missing from the root of your SD card. | |||
**** To fix: Download the latest Homebrew Launcher from [https://github.com/devkitPro/3ds-hbmenu/releases/latest here] | |||
*** <code>D96077FA</code>/<code>FFFFFFFF</code>: The <code>.3dsx</code> that Luma3DS tried to load is corrupted. | |||
**** To fix, redownload the app you are trying to launch. If this happens when you try to open the Homebrew Launcher itself, see the error above. | |||
*** Most of the other possible error codes that can appear here are listed on [[3DS:Error_screens/Luma3DS_ErrDisp|the ErrDisp page]]. | |||
* <h6>prefetch abort (svcBreak)</h6> | |||
**The code or sysmodule patch Luma3DS tried to load is invalid or corrupt. | |||
***To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in <code>/luma/titles</code> or <code>/luma/sysmodules</code>.) Alternatively, you may disable <code>loading external FIRMs and modules</code> as well as <code>Enable game patching</code> in the [[3DS:Luma3DS/Configuration|Luma3DS configuration menu]]. | |||
<h5>mset</h5> | <h5>mset</h5> | ||
* System Settings is broken in some way - this may indicate that the console has a hardware issue. | * '''If not caused in Nintendo DS Profile:''' System Settings is broken in some way - this may indicate that the console has a hardware issue. | ||
** To fix, perform a [[3DS:CTRTransfer|CTRTransfer]], or a [[3DS:CTRTransfer/Manual|Manual CTRTransfer]] if that does not work. | ** To fix, perform a [[3DS:CTRTransfer|CTRTransfer]], or a [[3DS:CTRTransfer/Manual|Manual CTRTransfer]] if that does not work. | ||
*** If neither of these work, the console has a serious issue. Join the [https://discord.gg/nintendohomebrew Nintendo Homebrew Discord] and ask, in English, for help. | *** If neither of these work, the console has a serious issue. Join the [https://discord.gg/nintendohomebrew Nintendo Homebrew Discord] and ask, in English, for help. | ||
* '''If caused in Nintendo DS Profile:''' Your NVRAM is either corrupted or damaged in hardware. Run [[3DS:ctrcheck|ctrcheck]] - if its results do not include <code>Critical: NVRAM is inaccessible</code>, then follow [[3DS:NVRAM|the Fix NVRAM guide]]. | |||
<h5>nwm</h5> | <h5>nwm</h5> | ||
Line 161: | Line 205: | ||
** To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on. | ** To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on. | ||
*** If the 3DS is an old model, you can disable WiFi with an external switch. New models must instead disable it through the HOME Menu Settings or Rosalina. Repeatedly pressing the keycombo for Rosalina while powering on might let you access Rosalina before it can crash. | *** If the 3DS is an old model, you can disable WiFi with an external switch. New models must instead disable it through the HOME Menu Settings or Rosalina. Repeatedly pressing the keycombo for Rosalina while powering on might let you access Rosalina before it can crash. | ||
<h5>pxi</h5> | |||
* Could be anything from a faulty cartridge to damaged internal components, but will almost always be some type of hardware issue. | |||
<h5>pm</h5> | |||
* The software you have launched may be missing required files. If the value in R0 is <code>E0E01BF5</code>, this is extremely likely to be the cause. | |||
<h5>qtm/cam</h5> | <h5>qtm/cam</h5> | ||
Line 166: | Line 216: | ||
** To fix, replace the camera with a new one. To avoid the error until then, disconnect the camera or avoid using anything that activates the camera. | ** To fix, replace the camera with a new one. To avoid the error until then, disconnect the camera or avoid using anything that activates the camera. | ||
<h5>swkbd</h5> | |||
* The software keyboard is broken in some way - this may indicate that the console has a hardware issue. | |||
** To fix, perform a [[3DS:CTRTransfer|CTRTransfer]], or a [[3DS:CTRTransfer/Manual|Manual CTRTransfer]] if that does not work. | |||
*** If neither of these work, the console has a serious issue. Join the [https://discord.gg/nintendohomebrew Nintendo Homebrew Discord] and ask, in English, for help. | |||
[[Category:Unbricking]] | [[Category:Unbricking]] | ||
{{Short description|Guide to the CFW error handler}} | {{Short description|Guide to the CFW error handler}} |
Latest revision as of 21:21, 6 October 2024
This page lists possible causes and fixes of Luma3DS exception screens. They are not applicable to every situation, but cover most common known issues.
Reading a Luma3DS exception screen
A Luma3DS exception has four (or five, in a few cases) different parts to it that help in finding its cause, as follows:
- Processor: What part of the system is causing the exception. The two processors are:
- Arm9: The 'security processor' of the system. These exceptions are usually raised because of errors in NAND data or hardware faults in either the 3DS or its SD card.
- Arm11: The 'userland' of the system. These exceptions have numerous causes but are more often related to broken software or user data.
- Exception type: The type of fault that caused the exception. These categories correspond to the ARM exceptions for the ARM9 and ARM11 CPUs, as follows:
- data abort: Caused by a read or write to an invalid part of memory. Usually related to game mods/cheats/plugins, broken HOME Menu data, and/or broken CFW applications.
- prefetch abort: Caused by an attempt to execute a CPU instruction that was marked as invalid. Often related to conflicts between CFW and other software.
- prefetch abort (svcBreak): Caused by either Process9 or homebrew software manually halting because it tripped a pre-defined error condition. Often related to damage to NAND data, even when raised by Arm11. Can also happen when launching an out-of-region game that isn't locale emulated.
- prefetch abort (kernel panic): Caused by Kernel9 detecting an unrecoverable error and forcibly halting to avoid causing damage. Can be related to any of several things, but hardware issues are the most likely.
- undefined instruction: Caused by an attempt to execute a CPU instruction that was unimplemented, disallowed, or unusable. Often related to software missing its required files (if not on boot) or an outdated
boot.firm
(if on boot).
- Fault status: The specific type of ARM exception that was raised. Helpful for developers, but not so much for the end user.
- Current process: Where the error is coming from in the system. Often the most helpful part of the exception. Some examples of processes are as follows:
- fs: The filesystem, i.e. either the SD card or the NAND.
- menu: Data that is opened either as a part of the HOME Menu or at the same time as it.
- loader: The service that opens apps, meaning the app most recently opened has an issue.
- nwm: Networking services, almost always Wi-Fi.
- ns: The Nintendo User Interface Shell, which handles all apps/processes/services in 3DS mode.
- Registers (R0-R12/SP/LR/PC/CPSR/FPEXC): Usually just internal data that's not worth reading, though R0 is the most likely of them to contain useful data. There are certain notable exceptions that aren't mentioned in the list of known errors, however:
- If the value
000400??
(the ? marks can be any number) appears in any of the registers, it likely refers to the first half of a title ID - check the value of the register after it to ensure this. If it is a title ID, it can be used to narrow down the original cause of an error. - If the value of any register starts with the letter C, D, E, or F (even if it isn't in R0) and doesn't look completely random, it may be an error code - this is more likely if the value starts with C or D. You may want to check it manually, as if it is an error code, it can likely help in troubleshooting.
- If the value
Known Errors
In the following list, the file prefixes on file paths refer to the starting location. sd:/
refers to the SD card, and numbers in the format of [X:]
refer to GodMode9's drive numbers.
If the below fixes do not solve your issue or you are unsure of what to do, join the Nintendo Homebrew Discord for further assistance. |
Arm9
Arm9 errors are sorted by their exception type.
Error On Boot
Any Type
- Files on the SD are corrupted.
- To fix, verify that the SD card is not faulty. If it is verified working, make a backup of all intact files, format the SD card, and try booting again.
- A system save located on the NAND in
[1:]/data
has a problem. - System-unique files are missing from the NAND in
[1:]/rw/sys
.
data abort
- The
shared2
folder in[2:] SYSNAND TWLN
is missing.- To fix, create this folder.
- System titles have been deleted.
- To fix, perform a Safe Mode update. If this does not work, perform a CTRTransfer.
prefetch abort (svcBreak)
- The system movable,
[1:]/private/movable.sed
, is 288 bytes but a flag is enabled that expects a size of 320 bytes.- To fix, boot into GodMode9 and select
SYSNAND CTRNAND
, then go into theprivate
folder.
Inside this folder, you will see a file namedmovable.sed
. Select it, and under the options menu, select Show in Hexeditor.
Green-colored numbers will appear in the middle of the screen - press A and then unlock writing to sysNAND (lvl2).
At the beginning of the file, look for the set of numbers53 45 45 44 00 01
. Once you find these numbers, hold A and press D-PAD DOWN while the01
value is highlighted to change it to00
. Press B, then A, then B to save changes and exit from the hexeditor, then press START to reboot your console.
- To fix, boot into GodMode9 and select
SYSNAND CTRNAND
has bad CMACs.- To fix, press R+A on the
SYSNAND CTRNAND
drive andFix CMACs for drive
. The console will act like it has been formatted after this, and this is intended.
- To fix, press R+A on the
- If none of the above have worked, perform a Manual CTRTransfer.
prefetch abort (kernel panic)
- The console likely has a hardware issue.
undefined instruction
- The console likely has a hardware issue, or corrupted sysmodules. Try performing a CTRTransfer to see if it resolves the issue.
Error During Use
data abort
- Files on the SD are corrupted.
- To fix, verify that your card is not faulty. If it is verified working, make a backup of all intact files, format the SD card, and try again.
Arm11
All Arm11 errors are sorted by their current process.
Error On Boot
act
- Your NNID(s)' stored data is misconfigured or being interfered with.
- To fix, if Pretendo is installed, turn it off by disabling
Enable loading external FIRMs and modules
on the Luma configuration menu.- If this does not help or Pretendo is not installed, then restore a NAND backup - especially if you recently tried to log out an NNID.
- To fix, if Pretendo is installed, turn it off by disabling
boss
- The current firmware version is too old for SpotPass to work. Perform a Safe Mode update.
- If this does not work, you may require a CTRTransfer.
camera
- Potential hardware issues, or an instance of ShutTheCamUp is crashing.
- Look for and delete
/luma/sysmodules/0004013000001602.ips
and/luma/titles/0004013000001602/code.ips
.- If this fixed the issue, then update Luma3DS and reinstall the correct Old or New 3DS patch for ShutTheCamUp if you wish to continue using it.
- If these don't exist, or the error occurs when booting without an SD card, it's likely hardware issues. Join the Nintendo Homebrew Discord and ask, in English, for help.
- Look for and delete
cfg
- Either the NAND config savegame or part of your console-unique file(s) is damaged.
- To fix, first boot into GodMode9, press R+A while the cursor is on the folder
[1:]/data/<ID0>/sysdata/00010017
, choose toCopy to 0:/gm9/out
, then delete the folder. After rebooting, the console will enter initial setup again; this is intended and not an issue.- If this does not help, delete the newly created
00010017
and copy the backup into its place, run ctrcheck, and replace any console-unique files marked as invalid or missing with the copies from theessentials.exefs
backup inside[S:] SYSNAND VIRTUAL
in GodMode9.
- If this does not help, delete the newly created
- To fix, first boot into GodMode9, press R+A while the cursor is on the folder
fs
- Could be an SD card problem, minor NAND problem, hardware issue, or anything in between.
- Fault isolation will likely be required to find the true cause of this error. Start by doing ctrcheck and trying to trigger the error with the SD card removed from the console.
If the error stops when the SD card is removed, reformat the SD card, and if that doesn't help, test it for hardware damage.
- Fault isolation will likely be required to find the true cause of this error. Start by doing ctrcheck and trying to trigger the error with the SD card removed from the console.
hid
- Potential hardware problems, or an instance of rehid is crashing.
- First look for and delete
/luma/titles/0004013000001D02
,/luma/titles/0004013000003302
,/luma/sysmodules/0004013000001D02.cxi
and/luma/sysmodules/0004013000003302.ips
.- If this fixed the issue, then update Luma3DS and reinstall the latest release of rehid to continue using it.
- If these don't exist, or rehid has never been installed on this console, it's likely hardware issues. 3ds_hw_test or ctrcheck may help with fault isolation.
- First look for and delete
i2c/gsp/mcu/pxi/spi/
- The console has a serious hardware issue that is likely not easily fixable.
- Run 3ds_hw_test. If the test returns zero errors detected, join the Nintendo Homebrew Discord and ask, in English, for help.
loader
prefetch abort (svcBreak)
- The code or sysmodule patch Luma3DS tried to load is invalid or corrupt.
- To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in
/luma/titles
or/luma/sysmodules
.) Alternatively, you may disableloading external FIRMs and modules
as well asEnable game patching
in the Luma3DS configuration menu.
- To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in
- The code or sysmodule patch Luma3DS tried to load is invalid or corrupt.
mset
- System Settings is broken in some way - this may indicate that the console has a hardware issue.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.
- If neither of these work, the console has a serious issue. Join the Nintendo Homebrew Discord and ask, in English, for help.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.
data abort
- The installed theme is corrupted or otherwise broken.
- To fix, go into the folder
sd:/Nintendo 3DS/<ID0>/<ID1>/extdata/00000000/
and delete the folder matching your region, one of the following:
- USA:
000002cd
EUR:000002ce
JPN:000002cc
- To fix, go into the folder
- The HOME Menu's extra data is corrupted.
- To fix, go into the folder
sd:/Nintendo 3DS/<ID0>/<ID1>/extdata/00000000/
and delete the folder matching your region, one of the following:
- USA:
0000008f
EUR:00000098
JPN:00000082
KOR:000000A9
- To fix, go into the folder
- An installed application is corrupted or otherwise broken.
- To fix, either perform a Safe Mode update, attempt to enter System Settings before the crash occurs and delete the application in Data Management, or reformat the SD card.
- The installed theme is corrupted or otherwise broken.
prefetch abort
- An installation of Menuhax is conflicting with the custom firmware.
- To fix, follow the directions on this page.
- If this occurs on boot, set Hbmenu autoboot in the Luma configuration menu to 3DS, then follow the above instructions and turn Hbmenu autoboot back off once it has been removed.
- Ensure in
sd:/luma/config.ini
that hbldr_3dsx_titleid is set to 000400000d921e00 andboot.3dsx
is in the root.
- Ensure in
- An installation of Menuhax is conflicting with the custom firmware.
prefetch abort (svcBreak)
- If
R5
containsD900458B
: Thef000000b
folder inSYSNAND CTRNAND
is broken, its exact location being at[1:]/data/<ID0>/extdata/00048000/f000000b
.- To fix, backup
f000000b
by pressing R+A while highlighting it, then selectingCopy to 0:/gm9/out
. Once it is backed up, delete the folder. If this does not fix the issue, copy the folder back where it was.
- To fix, backup
- System titles are missing. Perform a Safe Mode update.
- If you have a recent NAND backup, try restoring it with this guide
- If
ns
- The Luma configuration setting Hbmenu autoboot is set to boot to a title that does not exist.
- To fix, disable the option, install an application with the title ID in
sd:/luma/config.ini
, or change the set title ID to match an application that does exist.
- To fix, disable the option, install an application with the title ID in
nwm
- The WiFi chipset's hardware is damaged or dead.
- To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on.
- If the 3DS is an old model, you can disable WiFi using an external switch. New models do not have this switch disable it through the HOME Menu Settings or Rosalina. Repeatedly pressing the keycombo for Rosalina while powering on might let you access Rosalina before it can crash.
- To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on.
pm
- The installed version of Luma3DS likely does not support the current firmware version. This is guaranteed to be true if the contents of R0 are
E0E01BF5
.- To fix, update CFW.
Error During Use
3dsx_app
- The
.3dsx
file that was most recently opened is corrupted.- To fix, download a new copy of the
.3dsx
file. If this error happens when opening the Homebrew Launcher, download a new copy ofboot.3dsx
.- If the error still happens, test the SD card for errors.
- To fix, download a new copy of the
app/CtrApp
- If not
prefetch abort (svcBreak)
: The app most recently opened is trying to use broken software.- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause.
- If the error still happens, then the game itself is likely faulty. If it is a system app, perform a CTRTransfer. Otherwise, if it is a cartridge dump, redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol.
- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause.
- If
prefetch abort (svcBreak)
: The app most recently opened is out-of-region and relies on locale-specific data. Activate locale emulation for it.
GARDEN
- Animal Crossing's game data or savedata is having issues.
- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, then the game itself may be faulty. If it is a cartridge dump, redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol.
- If the error yet still happens, ensure that you have not used a save editor before the error started happening. If you have used a save editor, the edits are broken and you will need to restore a backed-up save, or wipe the save and start over if you have no backup.
- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, then the game itself may be faulty. If it is a cartridge dump, redump it, if it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it, or if it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol.
fs
- Could be an SD card problem, minor NAND problem, hardware issue, or anything in between.
- fault isolation will likely be required to find the true cause of this error. Start by doing ctrcheck and trying to recreate the error without the SD card inserted.
If the error stops after the SD card is removed, reformat the SD card, and if that doesn't help, test it for hardware damage.
- fault isolation will likely be required to find the true cause of this error. Start by doing ctrcheck and trying to recreate the error without the SD card inserted.
Kujira/Joker/niji_loc
- The app most recently opened has an issue of some kind.
- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, ensure the game is the same region as the console - if it is not, activate locale emulation for the game.
- If the error yet still happens, then the game itself is likely faulty. If it is a cartridge dump, redump it. If it is an eShop game, click the Repair button at the bottom of its eShop page or delete and reinstall it. If it is a cartridge, clean the cartridge and the 3DS cartridge reader with isopropyl alcohol.
- To fix, disable all game mods, cheat codes, and plugins to ensure they are not the cause. If the error still happens, ensure the game is the same region as the console - if it is not, activate locale emulation for the game.
loader
undefined instruction
- The app most recently opened has an issue. If the value of R0 starts with C or D, it is an error code, and has a chance of being an error code if the value starts with E or F. Here are some common values for R0:
D9004587
: When trying to open a game: The game is corrupted, or it's seed is not imported.C8804478
: If trying to open the Homebrew Launcher:boot.3dsx
is missing from the root of your SD card.- To fix: Download the latest Homebrew Launcher from here
D96077FA
/FFFFFFFF
: The.3dsx
that Luma3DS tried to load is corrupted.- To fix, redownload the app you are trying to launch. If this happens when you try to open the Homebrew Launcher itself, see the error above.
- Most of the other possible error codes that can appear here are listed on the ErrDisp page.
- The app most recently opened has an issue. If the value of R0 starts with C or D, it is an error code, and has a chance of being an error code if the value starts with E or F. Here are some common values for R0:
prefetch abort (svcBreak)
- The code or sysmodule patch Luma3DS tried to load is invalid or corrupt.
- To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in
/luma/titles
or/luma/sysmodules
.) Alternatively, you may disableloading external FIRMs and modules
as well asEnable game patching
in the Luma3DS configuration menu.
- To fix: Redownload any recently installed patches (eg. Nimbus (Pretendo), Wumiibo, or anything else that goes in
- The code or sysmodule patch Luma3DS tried to load is invalid or corrupt.
mset
- If not caused in Nintendo DS Profile: System Settings is broken in some way - this may indicate that the console has a hardware issue.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.
- If neither of these work, the console has a serious issue. Join the Nintendo Homebrew Discord and ask, in English, for help.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.
- If caused in Nintendo DS Profile: Your NVRAM is either corrupted or damaged in hardware. Run ctrcheck - if its results do not include
Critical: NVRAM is inaccessible
, then follow the Fix NVRAM guide.
nwm
- The WiFi chipset's hardware is damaged or dead.
- To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on.
- If the 3DS is an old model, you can disable WiFi with an external switch. New models must instead disable it through the HOME Menu Settings or Rosalina. Repeatedly pressing the keycombo for Rosalina while powering on might let you access Rosalina before it can crash.
- To fix, replace the WiFi chipset with a new one. To avoid the error until then, disable WiFi on the 3DS and do not turn it back on.
pxi
- Could be anything from a faulty cartridge to damaged internal components, but will almost always be some type of hardware issue.
pm
- The software you have launched may be missing required files. If the value in R0 is
E0E01BF5
, this is extremely likely to be the cause.
qtm/cam
- The camera's hardware is damaged or dead.
- To fix, replace the camera with a new one. To avoid the error until then, disconnect the camera or avoid using anything that activates the camera.
swkbd
- The software keyboard is broken in some way - this may indicate that the console has a hardware issue.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.
- If neither of these work, the console has a serious issue. Join the Nintendo Homebrew Discord and ask, in English, for help.
- To fix, perform a CTRTransfer, or a Manual CTRTransfer if that does not work.