At the time of writing, there are several issues (#1124, #1145, #1173, #1256, #1491) opened into Atmosphere-NX/Atmosphere regarding the following error:

A fatal error occurred when running atmosphere
Title ID: 0100000000000002b
Error Desc: std: abort () (called 0xffe)

I encountered it out of nowhere on SW 15.0.1|AMS 1.4.0, but have heard of others facing it as a result of a bad microSD (already tested mine), or as the result of uncleanly shutting down Atmosphere.

Besides restarting from scratch with setting up a new emuNAND, I’ve also heard of success by restoring from an entire backup emuNAND.

Both of these are too nuclear for my tastes – let’s look into how we can recover an existing Atmosphere emuNAND by partially recovering from an eMMC (sysNAND) backup.

You made an eMMC backup for this very purpose

Besides a properly backed-up eMMC as documented almost everywhere when first homebrewing the Nintendo Switch (e.g. NH Switch Guide), you’ll also need:

Should note that the files we’ll be recovering from eMMC don’t seem to change much across Switch versions – in recovering my switch, I ended using an eMMC backup made on SW 9.0.1.

To summarize

The process boils down to a few key steps:

  1. Using Hekate, boot into biskeydump and dump Switch BIS keys to SD card
  2. Using NxNandManager, configure keyset to the dumped keyfile from biskeydump
  3. Using NxNandManager, mount eMMC backup SYSTEM partition in read-only
  4. Copy the following files to some local folder – we’ll be recovering TO these
    /saves/8000000000000050
    /saves/8000000000000052
  5. Using NxNandManager, mount emuNAND SYSTEM partition in read/write
  6. Copy the following files to some local folder, then delete from emuNAND
  7. Copy the local files from step #4 into your emuNAND /saves/ folder

Step-by-step

1. Dump Switch BIS Keys

Using Hekate, launch biskeydump payload. You can also directly inject it via TegraRcm like any other binary.

Hit VOL- key to save keys as a text file to root of microSD card (https://alvinr.b-cdn.net/device.keys)

Shut off the console and get the microSD plugged into your Windows host.

2. Recover /saves/80…50 and /saves/80…52 from eMMC backup

Using NxNandManager, configure keyset by importing exported BIS keys from Switch microSD card (/device.keys).

NxNandManager
NxNandManager | Configure keyset

Load backup eMMC and mount SYSTEM as Read-Only – we don’t want to modify our backup.

If this is the first time doing so, you might be prompted to install the Dokan dokan1 DiskDrive driver. Next through the Windows Device Driver Installation Wizard to do so.

NxNandManager
NxNandManager | Open file (choose starting rawnand.bin.00)
NxNandManager | Partition view
NxNandManager | Mounting SYSTEM partition in read-only

From whatever mount path SYSTEM is at, copy the following files to some local folder:

  • SYSTEM (NxNandManager)/save/8000000000000050
  • SYSTEM (NxNandManager)/save/8000000000000052

Return back to NxNandManager and Unmount system.

NxNandManager | Unmount SYSTEM
NxNandManager | Close eMMC

3. Restore /saves/80…50 and /saves/80…52 to emuNAND

Mount our switch microSD card and load emuNAND from device. Ensure that when mounting SYSTEM that Read-Only is unchecked.

NxNandManager
NxNandManager | Open drive (emuNAND typically the smaller 30GB volume)
NxNandManager | Partition view
NxNandManager | Mount SYSTEM in read/write

Copy the following files to some local folder on your Windows host – they’re most likely bad files, but we don’t want to delete them in the event that recovering from eMMC makes things worse and we end up needing to recover from them.

  • SYSTEM (NxNandManager)/save/80000000000000d1
  • SYSTEM (NxNandManager)/save/8000000000000050
  • SYSTEM (NxNandManager)/save/8000000000000052

Delete the following file from emuNAND:

  • SYSTEM (NxNandManager)/save/80000000000000d1

Copy the files restored in step #2 to your emuNAND:

  • SYSTEM (NxNandManager)/save/8000000000000050
  • SYSTEM (NxNandManager)/save/8000000000000052

Unmount, close device (similar process at the end of Step #2), and unmount your microSD from Windows.

At this point, you can insert your microSD back into the switch console, boot into RCM, and inject your favourite payload to launch Atmosphere.

Wrapping up

The concept of mounting + partially recovering from eMMC seems to be a sacrilegious topic in the switch homebrew community. I’m hoping that this guide not only helps you fix the ‘A fatal error occured when running Atmosphere’ Title ID: 010000000000002b panic, but also serves as a beacon to fixing similar issues where the solution involves recovering specific files from eMMC.

Join the conversation

2 Comments

  1. This helped a lot! Thank you! I don’t understand why the community refuses a more surgical approach. It’s like one person with clout said a thing and now everyone blindly regurgitates it. This obviously proves the entire partition isn’t corrupt. I am curious how you determined those two files were to blame and, since this issue has affected multiple users, what corrupted the files in the first place.

Leave a comment

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.