Tutorial  Updated

Multiple emuMMC setup, including restoring a clean NAND for online use

I know there are several topics about setting up the emuMMC, but I decided to publish this tutorial because people keep asking about the creation / recognition of multiple emuMMC in Hekate.

The purpose of this tutorial is to provide an easy way to setup two (or more) emuMMC, being one of them your emulated clean backup, THAT IS ABLE TO RUN ONLINE (clean emuMMC) and the other an emulated copy of your current real sysnand (dirty emuMMC).

Your real sysnand must be maintained at the lowest firmware possible, so you can start Hekate without a dongle (DejaVu is already a reality from 1.0.0 to 4.0.1).

At first I tried this steps when going for an Android + 2 emuMMC setup but Android didn't boot, so I advise following this tutorial only for a multiple emuMMC setup.

P.S. From 5.2.0 on Hekate introduced a "SD Card Partition Manager", wich allows the selection of up to 2 emuMMC + Linux + Android (I didn't try it yet).

I had some trouble flashing the NANDs with Windows applications so I used a virtual machine (Oracle VM VirtualBox) + a Linux distro (Linux Mint) because in my opinion it handles better formatting / resizing partitions (with Gparted Live) and flashing NAND backups to specific partitions (with the dd command line tool).

Some people (@annson24 and @ben_dover) reported they were able to format / resize using Minitool Partition Wizard or DiskGenius and to flash using dd for Windows, so I included their instructions.

How to:

1. Delete all partitions from the SD card.

2. Create three partitions using your prefered application:

- first: SD card data, wich is recommend to be FAT32 (for homebrew). This partition size = SD card total size – (2x 29856 MB)
- second: emuMMC1 = RAW1, with exactly 29856 MB (if using Gparted Live: may be unformatted, but not unallocated)
- third: emuMMC2 = RAW2, with exactly 29856 MB (if using Gparted Live: may be unformatted, but not unallocated)

3. Join the files BOOT0, BOOT1 and RAWNAND.bin of your clean NAND backup:

- Linux: cat BOOT0 BOOT1 rawnand.bin > emummc.bin
- Windows: copy /b BOOT0+BOOT1+rawnand.bin emummc.bin

4. This is the key step: you have to flash that big file (emummc.bin) to the THIRD partition of your SD card (emuMMC2) using dd.

Linux
Run a terminal and type the following dd command:

sudo dd if=/media/sf_Shared_Folder/emummc.bin of=/dev/sdb3 bs=512M status=progress

P.S.1 The "if" path is MY Linux Mint shared folder path, you need to use your emummc.bin location
P.S.2 The "of" path is MY third SD card partition, you can check your driver identifier on Gparted Live (mine was "b")

Windows
1. Copy dd.exe (or ddrelease64.exe) to a folder of your choosing (I put it directly in C:\)
2. Disable your anti-virus software (it may prevent dd from having write access to the SD card)
3. Run diskmgmt.msc (Windows Disk Management) and find your SD card. Take note of the Disk # associated to it. This will help you with your dd command.
4. Right-click on your SD card FAT32 partition and select “Change Drive Letter…”. Remove the driver letter associated to it. This is equivalent to unmounting the drive. (not sure if this is needed to prevent access issues for dd but I did this step)
5. Open a command prompt window as an administrator and go to the folder where your dd.exe is located
6. Type the command “dd --list”. This will show all drives and partitions on your computer. Scroll down towards the bottom of the generated list and look for a Device with the Harddisk # you have taken note of earlier in Windows Disk Management. This Device will have 3 partitions: your FAT32 partition and the two RAW partitions. To confirm you are looking at the right Device, the two raw partitions will have the same size. The partition you want to dd to will be Partition3
7. Type the command to flash your emummc.bin to the RAW partition on your SD card:
“dd bs=512M if=drive:\folder\emummc.bin of=\\?\Device\Harddisk#\Partition3 --progress”

Here’s an example of the command with actual parameters:
“dd bs=512M if=c:\Nintendo_Switch_backup\emummc.bin of=\\?\Device\Harddisk3\Partition3 --progress”
- If you are using ddrelease64.exe replace “dd” in the command by “ddrelease64”

5. Grab your SD card, insert it on the Switch, start Hekate, tap emuMMC and then "Migrate emuMMC": voilà, now you have RAW2!

6. For the RAW1 select "Create emuMMC" > "SD partition" (this emuMMC will be an emulated copy of your current sysnand)

----------

In my case (stock firmware = 1.0.0):

- Turn on the Switch (no dongle)
- Reswitched link in the News (installed by Fake News) starts PegaScape
- Nereba takes me to Hekate
- From there I choose between RAW1 and RAW2

Hekate showing installed RAW1 and RAW2:
raw1-2.jpg

RAW1 Home screen
(emuMMC1, dirty, 90DNS, updated using ChoiDujourNX)
raw1.jpg

RAW2 Nintendo Shop
(emuMMC2, clean, no 90DNS, updated using Nintendo official servers)
raw2.jpg



*** Last system tested/working online: clean emuMMC 11.0.1 x Atmosphere 0.16.1 pre-release ***

Common concerns:

1. Even in the clean emuMMC Atmosphere is running in the background.
Simply running Atmosphere isn't a problem and doesn't generate a ban.

E.g. : If you check your system's version, Atmosphere's version will appear next to it ; you can access Hbmenu through Album ; in my case even the BootSoundNX sysmodule sound plays at startup (that hang is expected, I should use a shorter sound sample).

2. You don't need to move any files from your SD card when choosing one of the two emuMMC.
I have Kosmos Toolbox, Tesla, sysmodules and overlays in storage.

3. Fuses burn when updating + booting the real sysnand.
We are using the real sysnand only to start Hekate = no fuses burnt.

With that in mind I suggest:
- turning off nogc in Atmosphere and Hekate (there's no use for it)
- deleting any sysnand boot setup from hekate_ipl.ini (there's no use for it)

4. Apparently the burnt fuse count isn't sent to Nintendo.
I've had this configuration for several months now and my real sysnand is 1.0.0 = one burnt fuse.

Additional tips:

1. To facilitate switching between emuMMC configure Power options > Restart to initiate Hekate:
- confirm this is in atmosphere > config > system_settings.ini: power_menu_reboot_function = str!payload
- use Hekate's payload as your reboot_payload.bin in atmosphere's folder.

2. I recommend using latest "pure" Hekate and Atmosphere + only this patches: https://github.com/ITotalJustice/patches/releases

3. Change the emuMMC's backgrounds so you don't confuse them.

4. Change the dirty emuMMC's DNS (I use 90dns).
I didn't try Atmosphere's "blanking PRODINFO" new option because I think it will prevent online use on the clean emuMMC.

5. ChoiDujourNX only works in applet mode (to update the dirty emuMMC's firmware)

6. After updating the clean emuMMC make a new backup and delete the older one.
Hekate still can only backup the first 0xE0 partition that it finds (RAW1) so the easiest way to backup RAW2 is using dd, inverting the source and destination locations. In my case (for RAW2 = third partition):

- flash emuMMC: sudo dd if =/media/sf_Shared_Folder/emummc.bin of=/dev/sdb3 bs=512M status=progress
- backup emuMMC: sudo dd if =/dev/sdb3 of =/media/sf_Shared_Folder/emummc.img bs=512M status=progress

The extension (I used .img) probably doesn't matter, and may not even be needed.
I tested the generated file on NXNandManager (https://github.com/eliboa/NxNandManager) and it was recognized perfectly.

7. My clean emuMMC only booted with fusee-secondary. The dirty one was ok with fusee-primary, and I highly recommend its use because it allows Tinfoil to work.

8. Here's my simple and functional hekate_ipl.ini:

[config]
autoboot=0
autoboot_list=0
autohosoff=0
autonogc=0
backlight=100
bootwait=3
updater2p=0
verification=1

[CFW]
emummcforce=1
emupath=emuMMC/RAW1
payload=bootloader/payloads/fusee-primary.bin
icon=bootloader/res/atmosphere.bmp
logopath=bootloader/bootlogo.bmp
{}

[OFW]
emummcforce=1
emupath=emuMMC/RAW2
fss0=atmosphere/fusee-secondary.bin
icon=bootloader/res/icon_switch_custom.bmp
logopath=bootloader/bootlogo.bmp
{}
 
Last edited by kassio69,

scandal_uk

Not Really There
Member
Joined
Oct 3, 2005
Messages
322
Trophies
0
Location
UK
XP
580
Country
United Kingdom
Correct. Don't install/run NSP on the clean NAND.
I get that - I was more concerned if there were NSPs (installed from the dirty NAND) on the SD data partition.

I'm thinking that it's probably best not to install NSPs to the SD data partition if that space is shared by both clean and dirty NANDs...
 

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
I get that - I was more concerned if there were NSPs (installed from the dirty NAND) on the SD data partition.

I'm thinking that it's probably best not to install NSPs to the SD data partition if that space is shared by both clean and dirty NANDs...

All my NSP were installed to the SD data partition from the dirty emuMMC.
And I also have lots of homebrew on that partition.
Until now there's no problem going online in the clean emuMMC.
You shouldn't install/run NSP/homebrew from the clean emuMMC.
 
Last edited by kassio69,
  • Like
Reactions: scandal_uk

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
Is it possible for either emuMMC1 = RAW1 or emusMMC2 = RAW2 to be bigger than 29856 MB?

I'm not sure but I think you can set higher values for the emuMMC partitions when formatting the SD card.
29856 MB would be the minimum necessary to flash a NAND in its original size?
Higher values would be, however, just a waste of your SD card space (the NAND's usable space hasn't been changed).

If you want more NAND space you must edit its USER partition size.
The only way I know for doing that is using Nx NAND Manager (https://github.com/eliboa/NxNandManager).
Obviously this will make the size of your emuMMC partitions also have to be bigger.

But:

- I can't tell if that's a bannable behavior (problably not)
- In my opinion it would be more useful to decrease the USER partition size to the mininum possible (1 GB is problably more than enough) and use the extra SD card space (more than 20 GB per emuMMC) for NSP/homebrew.

If you have the guts to try it tell us here!
 
Last edited by kassio69,

illest

Active Member
Newcomer
Joined
Dec 25, 2016
Messages
28
Trophies
0
XP
214
Country
United States
Hello im on dd.exe step and i get this message when i do the dd prompt "Error native opening file: 0 The operation completed successfully" is this what its suppose to say?
 

leon315

POWERLIFTER
Member
Joined
Nov 27, 2013
Messages
4,097
Trophies
2
Age
124
XP
4,075
Country
Italy
a question here:

I've lost my clean nand (the vergin one created the 1st time i launched Hekate) due to HDD reformatting, is there still any methods to create a clean nand for online?

I have never connected Switch online, and only use choidujournx from 3.0.1.
 
Last edited by leon315,

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
Hello im on dd.exe step and i get this message when i do the dd prompt "Error native opening file: 0 The operation completed successfully" is this what its suppose to say?

As I used the dd command in Linux I can't help you here.
But a quick Google search shows that something isn't right.
Here's a possible solution: https://serverfault.com/questions/321473/dev-zero-equivalent-in-windows

a question here:

I've lost my clean nand (the vergin one created the 1st time i launched Hekate) due to HDD reformatting, is there still any methods to create a clean nand for online?

I have never connected Switch online, and only use choidujournx from 3.0.1.

How many burnt fuses do you have?
Check it using Hekate.
 

leon315

POWERLIFTER
Member
Joined
Nov 27, 2013
Messages
4,097
Trophies
2
Age
124
XP
4,075
Country
Italy

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
my switch comes with 3.0.1 FW , always been used choidoujou, so none were burnt so far.

This is the expected number of burnt fuses according to your firmware:

1.0.0 = 1
2.0.0-2.3.0 = 2
3.0.0 = 3
3.0.1-3.0.2 = 4
4.0.0-4.1.0 = 5
5.0.0-5.1.0 = 6
6.0.0-6.1.0 = 7
6.2.0 = 8
7.0.0-8.0.1 = 9
8.1.0 = 10
9.0.0-9.0.1 = 11
9.1.0-9.2.0 = 12
10.0.0-10.0.4 = 13

Would you mind to check using Hekate?
IF you have 4 burnt fuses (3.0.1) and IF you never went online with this NAND you can safely factory reset you Switch.
There's your virgin 3.0.1 NAND, DejaVu ready!
 
  • Like
Reactions: leon315

leon315

POWERLIFTER
Member
Joined
Nov 27, 2013
Messages
4,097
Trophies
2
Age
124
XP
4,075
Country
Italy
This is the expected number of burnt fuses according to your firmware:

1.0.0 = 1
2.0.0-2.3.0 = 2
3.0.0 = 3
3.0.1-3.0.2 = 4
4.0.0-4.1.0 = 5
5.0.0-5.1.0 = 6
6.0.0-6.1.0 = 7
6.2.0 = 8
7.0.0-8.0.1 = 9
8.1.0 = 10
9.0.0-9.0.1 = 11
9.1.0-9.2.0 = 12
10.0.0-10.0.4 = 13

Would you mind to check using Hekate?
IF you have 4 burnt fuses (3.0.1) and IF you never went online with this NAND you can safely factory reset you Switch.
There's your virgin 3.0.1 NAND, DejaVu ready!
thanks, man, now i remember that my Switch has based FW 3.0.0 then i updated long time ago to 3.0.1 using Mario odyssey's card, then i should have 4 efuse burnt, i will post later the result of check, when i take off.
Can i back up all saves before factory reset then restore then later?
 
Last edited by leon315,

Jhonfer21

Member
Newcomer
Joined
Jun 20, 2020
Messages
13
Trophies
0
Age
29
XP
98
Country
Colombia
Does this process still work? No problem if I update the latest official version of nintendo in clean emummc? Currently my switch is in 4.0.1 sysnand stock, I want to get ready to play official online, as they announced apex legends
 

illest

Active Member
Newcomer
Joined
Dec 25, 2016
Messages
28
Trophies
0
XP
214
Country
United States
So when you said you updated via offical nintendo servers for the clean emunand you updated via system settings correct?
 

Sparky076

Well-Known Member
Newcomer
Joined
Jan 4, 2016
Messages
72
Trophies
0
Age
32
XP
303
Country
United States
Hey. New to this whole emuMMC thing and I got a few questions I hope can be answered.. I have a Switch, OFW 4.1.0 right now, with a clean NAND. fusee gelee exploit works on it. Here are my questions.

1) If I patch in a clean emuMMC through a game cart or Nintendo servers, will that burn the fuses in the consoles?

2) Should I worry about fuses being burnt in the console?

Edit: I have a lot more questions now.

3) When making the 2 separate partitions for emuMMC1 and emuMMC2, what should the File System be? Obviously not FAT32. Should it be Linux Swap? Using Disk Genius if that helps.

4) If I make emuMMC1 my "Clean NAND", and install official games through it, where is that data saved? For example. I have a 1TB microSD card. 895.2GB allocated to FAT32. 29856MB, or 29.2GB for emuMMC1, and another 29856MB, or 29.2GB, allocated for emuMMC2. Homebrew applications and software would need to be installed on the FAT32 partition, but what about official Nintendo games. Where would they go? Would they too be on the FAT32 partition?

5) When you say that BOOT0/1 and rawnand must be joined, how can I do that on Windows 10? I have rawnand in 16 parts, and I also have it combined into a single rawnand file as well. Should I used the combined rawnand or the split rawnand files?

6) You said I had to "flash" the emummc.bin file to the 3rd partition, emuMMC2, using "dd". What is "dd"? Is it the same as the "ddrelease64.exe" that you mentioned, or is it something else? I'm guessing you do this through Windows.

7) If I want to do Raid Den hacking in Pokemon Sword and Shield, how would I be able to go online and not get banned? Would I play my legit copy of the Pokemon games (I have the game carts), on my clean emuMMC, save it, boot into my dirty emuMMC, grab the save data, edit it, and replace it, then boot back into the clean emuMMC and go back online with the hacked data?
 
Last edited by Sparky076,

Jhonfer21

Member
Newcomer
Joined
Jun 20, 2020
Messages
13
Trophies
0
Age
29
XP
98
Country
Colombia
the emummc.bin file where I get it from. in the backup that hekate leaves me, no emummc.bin appears only boot0, bot1 and rawnand.bin00-14
?
 

Attachments

  • upload_2020-6-21_19-29-46.png
    upload_2020-6-21_19-29-46.png
    312 bytes · Views: 150
  • upload_2020-6-21_19-29-52.png
    upload_2020-6-21_19-29-52.png
    312 bytes · Views: 154
  • upload_2020-6-21_19-30-44.png
    upload_2020-6-21_19-30-44.png
    312 bytes · Views: 158

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
Does this process still work? No problem if I update the latest official version of nintendo in clean emummc? Currently my switch is in 4.0.1 sysnand stock, I want to get ready to play official online, as they announced apex legends

Yes, it still works. Update the clean emuMMC as if it was your real NAND. With a 4.0.1 real NAND you can use DejaVu.

So when you said you updated via offical nintendo servers for the clean emunand you updated via system settings correct?

Yes.

Hey. New to this whole emuMMC thing and I got a few questions I hope can be answered.. I have a Switch, OFW 4.1.0 right now, with a clean NAND. fusee gelee exploit works on it. Here are my questions.

Your questions are already answered on the first post, you just need to pay more attention..

1. No, fuses are burnt only when you update and reinitialize your real NAND (here we are updating emulated NANDs).

2. No, read above.

3. The 1st partition shoul be FAT32. The 2nd (emuMMC1) and 3rd (emuMMC2) partitions can have any extension, as they will be overwritten.

4. Games are installed on the NAND itself or on the SD card. In the second case they will be in the first partition, but hidden from your access. Games installed using one emuMMC won't be accessible on the other.

5. Combined. You can combine splitted files with:
https://github.com/CTCaer/hekate/releases/download/v5.3.0/joiner_scripts_for_windows_linux_macos.zip

6. Google says: "dd is a command-line utility for Unix and Unix-like operating systems whose primary purpose is to convert and copy files".
In this case dd is being used to flash/backup specific partitions to/from the SD card.
I explained how to use it on Linux and Windows, it's your choice.

7. I recommend not juggling with saved games among the emuMMCs, because there is potential for banning.
Editing, replacing, etc is totally safe on the dirty emuMMC.

the emummc.bin file where I get it from. in the backup that hekate leaves me, no emummc.bin appears only boot0, bot1 and rawnand.bin00-14
?

Read answer number 5 above.
 
Last edited by kassio69,

Jhonfer21

Member
Newcomer
Joined
Jun 20, 2020
Messages
13
Trophies
0
Age
29
XP
98
Country
Colombia
Thank you very much for answering my concerns. I am new but little by little I learn more. . I have a doubt is that my sd information does not appear well. I can't find partition 3 ..



eh I do the partitions by minitool partition, I don't have how to do them any other way
 

Attachments

  • cap.png
    cap.png
    34.5 KB · Views: 177

Jhonfer21

Member
Newcomer
Joined
Jun 20, 2020
Messages
13
Trophies
0
Age
29
XP
98
Country
Colombia
my other question is can i perform the process from hekate creating the 3 partitions 1 with fat32. and 2 raw partitions. and I create the 2 emummc. with one using clean emummc with official nintendo updates and the other with choidjurn for nsp? or does it necessarily have to be copying the backup files with dd ...?
 

kassio69

Well-Known Member
OP
Newcomer
Joined
Nov 20, 2011
Messages
81
Trophies
1
XP
1,157
Country
Brazil
I have a doubt is that my sd information does not appear well. I can't find partition 3

It seems you already have 3 partitions in "Disco 1", now you have to identify them correctly.
I can't help much in this step if you use Windows, try following the first post instructions with attention.

my other question is can i perform the process from hekate creating the 3 partitions 1 with fat32. and 2 raw partitions. and I create the 2 emummc. with one using clean emummc with official nintendo updates and the other with choidjurn for nsp? or does it necessarily have to be copying the backup files with dd ...?

I wrote this tutorial before Hekate had the option to create / manage partitions, so I can't say for sure.
If it is possible to create three partitions, the first being FAT32 and the other two copies of the real (virgin) NAND, it should work.
And in this case you can even choose which of the emuMMC will be the clean / dirty one.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    K3Nv2 @ K3Nv2: Ending to the fallout series was lame could've gave us a bit more