Hacking Homebrew Updating Switch and Installing Hacks

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
How to update the console / games without getting any issue ?

And also is installing Homebrew + Custom Firmware permanent or do I have to do that every time ?

I'm probably gonna follow the tutorial below since it seems to be the newest one. But I'll also take a look at the one on GitHub.





P.-S. : I sent a similar thread on Reddit.

 

Shadow#1

Wii, 3DS Softmod & Dumpster Diving Expert
Member
Joined
Nov 21, 2005
Messages
12,347
Trophies
2
XP
8,010
Country
United States
How to update the console / games without getting any issue ?

And also is installing Homebrew + Custom Firmware permanent or do I have to do that every time ?

I'm probably gonna follow the tutorial below since it seems to be the newest one. But I'll also take a look at the one on GitHub.





P.-S. : I sent a similar thread on Reddit.

Cfw is never permanent
 
  • Like
Reactions: TonyNESgri

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
I suppose he wants to know if it's persistent upon reboots.
no, it's not.

the internal firmware files are not moddified, you need to load the CFW from an external method every time you reboot.
if you boot without that special method, the official firmware will launch.

New doesn't mean better ! Youtube video are usually bad and wrong. don't randomly follow one, if you really want a video tutorial, look tons of them and understand what you are doing and why. don't follow the first you see without understanding.
I recommend to look at a youtube video only for visual, AFTER you read a text guide and understand the steps you have to do. the video is only for visual help and being confident, not for guide.

This video is only ONE of the possible ways, and it doesn't explain anything, it forces you to do it THEIR ways.
It also forces you to use a Windows tool (tegraRCM, and not everyone has windows). Personally, I'm using android, I can boot the console and push a CFW anywhere, not only at home :D
It also does NOT cover game launching requirement. You can't launch official games if you follow only this video. if what you want is only homebrew, then it's fine.

If you follow this video, your official OS (console's Operating System, called Horizon) will be tampered with homebrew, and you can get banned if you go online in the future !
if you don't care, fine.

If you want to keep your console clean and have access to eShop or online games for any future usage, or if you want to stop using homebrew, or sell it to someone who don't want a banned console, there are other methods :
either :
1. emulated eMMC.
you make a copy of your eMMC (chipset internal memory) to your SD card, and you boot your copy (that you keep offline!) instead of the original for homebrew and games.
You boot without CFW and launch the original eMMC when you want official access to eshop. both MMC and emuMMC are separated, like if you have 2 different consoles in one.
or
2. backup your clean eMMC. (you should do it anyway, if you break anything, you can restore it)
Keep your console offline forever (or use something to hide your consoleID) when booting CFW with your internal eMMC.
the day you want to go back to clean status, restore your backup.

If you care about banning, and want to make a backup or boot on the copy, let us know. There are already a lot of guides for that.
 
Last edited by Cyan,

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
I suppose he wants to know if it's persistent upon reboots.
no, it's not.

the internal firmware files are not moddified, you need to load the CFW from an external method every time you reboot.
if you boot without that special method, the official firmware will launch.

New doesn't mean better ! Youtube video are usually bad and wrong. don't randomly follow one, if you really want a video tutorial, look tons of them and understand what you are doing and why. don't follow the first you see without understanding.
I recommend to look at a youtube video only for visual, AFTER you read a text guide and understand the steps you have to do. the video is only for visual help and being confident, not for guide.

This video is only ONE of the possible ways, and it doesn't explain anything, it forces you to do it THEIR ways.
It also forces you to use a Windows tool (tegraRCM, and not everyone has windows). Personally, I'm using android, I can boot the console and push a CFW anywhere, not only at home :D
It also does NOT cover game launching requirement. You can't launch official games if you follow only this video. if what you want is only homebrew, then it's fine.

If you follow this video, your official OS (console's Operating System, called Horizon) will be tampered with homebrew, and you can get banned if you go online in the future !
if you don't care, fine.

If you want to keep your console clean and have access to eShop or online games for any future usage, or if you want to stop using homebrew, or sell it to someone who don't want a banned console, there are other methods :
either :
1. emulated eMMC.
you make a copy of your eMMC (chipset internal memory) to your SD card, and you boot your copy (that you keep offline!) instead of the original for homebrew and games.
You boot without CFW and launch the original eMMC when you want official access to eshop. both MMC and emuMMC are separated, like if you have 2 different consoles in one.
or
2. backup your clean eMMC. (you should do it anyway, if you break anything, you can restore it)
Keep your console offline forever (or use something to hide your consoleID) when booting CFW with your internal eMMC.
the day you want to go back to clean status, restore your backup.

If you care about banning, and want to make a backup or boot on the copy, let us know. There are already a lot of guides for that.
I am more interested by the first method (make a copy of my eMMC), since I want to use both official Switch features and Homebrew ones.

However, there's one thing I don't understand : why do I have to have two separate eMMCs, if the CFW is only active when I boot it before tuning on the console ? Can't I just update the OFW by not booting the CFW at the same time ?

Also, let's say that I want to play official games online that I got by using Homebrew. How to do that ?
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
The console logs everything you are doing, every errors encountered, etc.
the CFW is not separated from the console, it's only a boot method.

the custom firmware is not a firmware, it's a console launcher and patcher.
the CFW launches the console with additional or different features, but the console is still running Horizon (the OS of the console) firmware version that you currently have installed, and it's accessing what's on your console, your games, your files, etc.
if you are on 13.2.0 OFW, atmosphere will patch 13.2.0 before launching it. but it's still 13.2.0 which is running.

a custom firmware is not separated from your console content. you can't just choose to launch either the FW (clean official), or the CFW (homebrew, piracy, etc.) and have both separated. both are on the same place.
What you are doing is patch the firmware to allow homebrew/piracy, or run it unpatched. but it's the same.

If you launch Horizon using CFW patched, run a game you didn't buy, encounter a crash, the console logs it. the log file is stored on MMC to be sent next time you connect online.
you run without CFW, so clean FW, the log file is still present ! if you connect the console online, it will send the report to nintendo, and all the console's ID so they can ban it.

Also, let's say that I want to play official games online that I got by using Homebrew. How to do that ?
I never did that, but there are methods to hide (or delete) the unique consoleID.
I don't have lot of information on that as I don't use it. someone else will help here.
of course, installing and launching will happen in the "patched" version of the firmware, using Atmosphere to launch Horizon.
you can't install a game using Atmosphère, reboot to clean FW and launch the game, even if they share the same eMMC. the game will be listed, but can't be launched because you are missing the "ticket" that eShop provides when you buy the game.


What I recommend (but that's my own choice, not forcing you):

1. check that your console is hackable ! (serial number, etc.)
If it's an old one, you can update safely.
update the FW from online, and switch off internet. (you can disable auto-connect for more security in your network settings)

if it's a patched console, don't update. first read more information to know what you should to or shouldn't do.


2. Format a bigger than 32GB SD card to FAT32, and use hekate to make a backup of the current eMMC content (firmware files, games, config, data, etc.). it's a 1:1 sector copy of the entire console memory (32 or 64GB)
The backup will be useful in case you have to recover from a big issue, brick, crash, etc. OR if you decide to go back to a clean non-hack state later.

From here, just choose whether you want to hack the current internal memory, or make a copy and use a dual boot.

(you said you'll prefer dual boot)

so, for dual boot:
3. there are two method for eMMC copy (called emuMMC) :
- a file based copy, located on your FAT32 partition.
- a hidden partition, cloned from your eMMC.
File based used to have more issues (slower, less stable), but I think it has become quite identical now.
file based is easier to transfer into another SD card (just copy the files).
Partition based will need a tool to manage it (backup/restore).

4. dump your keys (console private keys for encryptions/decryptions), used by some homebrew.

5. setup either hekate to launch Atmosphere CFW, or launch Atmosphere without hekate. (we can see that difference later)
If an emuMMC is present, Atmosphere will use it, keeping your MMC clean, and always booting CFW on the emuMMC.

6. add additional patches to Atmosphère if you want to launch retail games.

7. choose a way to install games.
either from the SD, or from USB from the computer, or from LAN/network, using either an installer or a MTP (media transfer protocol) tool.



From here, you'll have 2 consoles :
eMMC ("console" memory is on the console chipset) and emuMMC ("console" memory is on the SD card copy of the eMMC).
always run eMMC clean (boot the console without a homebrew), and the emuMMC with CFW booter/patcher.

keep the emuMMC offline, or setup different filtering methods to allow internet access to homebrew but not games, or delete consoleID and risk going online with pirated games... your call. I'm not suggesting anything.
you'll have to manage both separately, and update both separately.
both eMMC and emuMMC can have different firmware versions. you can have the eMMC on 13.2.0 while you updated the emuMMC past that version (when available).
(you can even have more than one emuMMC partition, or a 4 in one console : eMMC, emuMMC, linux, android partitions)

if you want to go online on official FW, you'll have to update the eMMC officially (from network).
if you want to update the emuMMC, you can do it offline using Daybreak homebrew.
 
Last edited by Cyan,
  • Like
Reactions: TonyNESgri

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
sorry that's a lot of information. I hope I'm understandable, and not confusing :)
it's still info, not a guide.
I won't write a guide, there are already good ones available.

I can write in french in private if you want better explanations. or in the French group to help more people publicly :)
 
  • Like
Reactions: TonyNESgri

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
The console logs everything you are doing, every errors encountered, etc.
the CFW is not separated from the console, it's only a boot method.

the custom firmware is not a firmware, it's a console launcher and patcher.
the CFW launches the console with additional or different features, but the console is still running Horizon (the OS of the console) firmware version that you currently have installed, and it's accessing what's on your console, your games, your files, etc.
if you are on 13.2.0 OFW, atmosphere will patch 13.2.0 before launching it. but it's still 13.2.0 which is running.

a custom firmware is not separated from your console content. you can't just choose to launch either the FW (clean official), or the CFW (homebrew, piracy, etc.) and have both separated. both are on the same place.
What you are doing is patch the firmware to allow homebrew/piracy, or run it unpatched. but it's the same.

If you launch Horizon using CFW patched, run a game you didn't buy, encounter a crash, the console logs it. the log file is stored on MMC to be sent next time you connect online.
you run without CFW, so clean FW, the log file is still present ! if you connect the console online, it will send the report to nintendo, and all the console's ID so they can ban it.


I never did that, but there are methods to hide (or delete) the unique consoleID.
I don't have lot of information on that as I don't use it. someone else will help here.
of course, installing and launching will happen in the "patched" version of the firmware, using Atmosphere to launch Horizon.
you can't install a game using Atmosphère, reboot to clean FW and launch the game, even if they share the same eMMC. the game will be listed, but can't be launched because you are missing the "ticket" that eShop provides when you buy the game.


What I recommend (but that's my own choice, not forcing you):

1. check that your console is hackable ! (serial number, etc.)
update the FW from online, and switch off internet. (you can disable auto-connect for more security in your network settings)

2. Format a bigger than 32GB SD card to FAT32, and use hekate to make a backup of the current eMMC content (firmware files, games, config, data, etc.). it's a 1:1 sector copy of the entire console memory (32 or 64GB)
The backup will be useful in case you have to recover from a big issue, brick, crash, etc. OR if you decide to go back to a clean non-hack state later.

From here, just choose whether you want to hack the current internal memory, or make a copy and use a dual boot.

(you said you'll prefer dual boot)

so, for dual boot:
3. there are two method for eMMC copy (called emuMMC) :
- a file based copy, located on your FAT32 partition.
- a hidden partition, cloned from your eMMC.
File based used to have more issues (slower, less stable), but I think it has become quite identical now.
file based is easier to transfer into another SD card (just copy the files).
Partition based will need a tool to manage it (backup/restore).

4. dump your keys (console private keys for encryptions/decryptions), used by some homebrew.

5. setup either hekate to launch Atmosphere CFW, or launch Atmosphere without hekate. (we can see that difference later)
If an emuMMC is present, Atmosphere will use it, keeping your MMC clean, and always booting CFW on the emuMMC.

6. add additional patches to Atmosphère if you want to launch retail games.

7. choose a way to install games.
either from the SD, or from USB from the computer, or from LAN/network, using either an installer or a MTP (media transfer protocol) tool.



From here, you'll have 2 consoles :
eMMC ("console" memory is on the console chipset) and emuMMC ("console" memory is on the SD card copy of the eMMC).
always run eMMC clean (boot the console without a homebrew), and the emuMMC with CFW booter/patcher.

keep the emuMMC offline, or setup different filtering methods to allow internet access to homebrew but not games, or delete consoleID and risk going online with pirated games... your call. I'm not suggesting anything.
you'll have to manage both separately, and update both separately.
both eMMC and emuMMC can have different firmware versions. you can have the eMMC on 13.2.0 while you updated the emuMMC past that version (when available).
(you can even have more than one emuMMC partition, or a 4 in one console : eMMC, emuMMC, linux, android partitions)

if you want to go online on official FW, you'll have to update the eMMC officially (from network).
if you want to update the emuMMC, you can do it offline using Daybreak homebrew.
What do I copy my eMMC and dump my keys with ? With Hekate ?

And when all of that is done, I can update anything by using the clean eMMC, right ?
 

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
sorry that's a lot of information. I hope I'm understandable, and not confusing :)
it's still info, not a guide.
I won't write a guide, there are already good ones available.

I can write in french in private if you want better explanations. or in the French group to help more people publicly :)
It's okay and very helpful from you, thanks👍🏼
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
What do I copy my eMMC and dump my keys with ? With Hekate ?
copy the eMMC, yes with hekate payload.
(payload is a boot program you send to the console's RCM mode, using TegraRCM, or another RCM sending method).

dump the key with LockPick_RCM (another payload).
you can launch RCM payload with TegraRCM, or even whithin hekate.

I like to use Hekate as initial payload, it allows me to manage the console and SD content and partitions, and boot other payloads (lockpick, linux, android, Atmosphere, etc.)

I can update anything
sorry, I don't understand what you mean by "anything".
If you launch eMMC, you should be in official firmware, never run homebrew on that one (it's possible, like if you follow that youtube video you posted. but you shouldn't).
So, if you update eMMC, it means you update your official firmware using the official Nintendo's servers, or a game card, etc.
updating eMMC means updating your console officially. not "anything".

all the content of the emuMMC is separated from the eMMC.
you have different games, different savegames, different firmwares, etc.
if you want to update something on the emuMMC, you'll have to be more specific.



Oh, one thing I forgot to suggest, and that's one thing guides NEVER cover, the "after the hack" :

1 )
When you run emuMMC using Atmosphère for the first time, you might not see any differences from eMMC.
you don't know if you are running eMMC CFW, or emuMMC CFW. that would be bad if you start launching homebrew on the eMMC that you should keep clean.
they are both clones, so to be sure you are on the "emulated" one, located on the SD card, go to the console settings > console (at the bottom), and look at the firmware version.
13.2.0| AMS1.2.5|E <-- E here means emulated
once you'll have different content/games on that emuMMC, you'll see quickly if you are not on the correct one.

2)
When you are on the Emulated MMC, remember that the "console memory" where you install your games is actually on the SD card's partition copy of the eMMC. not the real "console memory".

eMMC : console data = console chipset
eMMC : SD data : SD card's "nintendo" folder.

emuMMC : console data = emulated MMC partition on SD
emuMMC : SD data = SD card's "emummc/RAW1/Nintendo" folder

remember they are completely separated.
so if you had games installed on the "SD data" that you want to get back and play while on emuMMC CFW, copy the "nintendo" folder content into the "emummc/RAW1/Nintendo" folder.
you better have a big SD card ;)

3)
There is also another thing guides don't usually covers, is installing additional homebrew in the correct folders to make it more usable, or editing the settings before first use.
for example :
copy, rename and replace hekate payload (update.bin) into atmosphere's reboot_payload.bin
it will allow you to launch hekate directly from your console, no need to push it with an RCM dongle/windows/phone.
While on Hekate, you can eject the SD card without shutting down the console, put back the SD and launch AMS again. no RCMdongle or injector needed.

Copy atmosphère's fusee.bin into hekate's payload folder.
so now, you can launch Atmosphere from hekate using "payload" > "fusée".
or you can make a hekate ipl file to add atmosphere to the "launch" menu, pointing to the fusée file. additional boot method available from hekate (using fss0 instread of fusee.bin) allows you to boot eMMC with CFW even if you have emuMMC present (why would you want that?), or stock eMMC without any CFW patches.

copy lockpick_RCM.bin into hekate's payload folder, so it unlock the "get keys" menu inside hekate.
you can also launch it manually from the "payload" folder, but hekate has a dedicated option for that payload if present in that folder.

edit Atmosphère hosts/emummc.txt config files to filter nintendo's URLs when using emuMMC. (prevents you from playing online too! if you want to play online, there is another method to hide your consoleID instead)

edit atmosphère config to enable USB3 speed support for homebrew. (it caused issues when using file based emuMMC, so it's off by default).

No guide ever cover the different Atmosphère configs the user might want and their effect, or how to use them.

4)
if you want to launch retail games you install yourself.
you need new patches for each new release of Atmosphère, check the "checkum" of the patch and AMS are matching. extract to SD root and overwrite.

5)
I recommend using DBI homebrew to access your console and SD card content over USB MTP protocol on your computer, instead of shutting down and ejecting the SD card. preserve your SD card slot spring.
DBI also let you install games faster and easily, no worries about games bigger than 4GB to split on SD card, or having the wrong bit flag, or having twice the needed space available to install a game, etc.

6)
you might want to look at a homebrew appstore.
let you browse and install homebrew directly from the console (you need internet access, so be sure you filter nintendo's urls first)

there are CFW updater homebrew you might find useful.



and finally, after all that explanation and help, here is a link to a guide :
https://nh-server.github.io/switch-guide/
and I found this one, modified to add things I said guides are missing (URL filters, hekate boot file, copy the nintendo folder, etc.) https://switch.hacked.us/ (but outdated).
 
Last edited by Cyan,
  • Like
Reactions: TonyNESgri

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
While on Hekate, you can eject the SD card without shutting down the console, put back the SD and launch AMS again
Sorry, I don't understand that part. Why would I want to eject the SD card then put it back ? Is it done to switch between the two eMMCs ?

sorry, I don't understand what you mean by "anything".
I mean updating games and console.
edit Atmosphère hosts/emummc.txt config files to filter nintendo's URLs when using emuMMC. (prevents you from playing online too! if you want to play online, there is another method to hide your consoleID instead)
What is the other method ? I guess it is mentioned in the second guide you sent me, but if it is outdated, aren't there any differences ?
 

Cyan

GBATemp's lurking knight
Former Staff
Joined
Oct 27, 2002
Messages
23,749
Trophies
4
Age
45
Location
Engine room, learning
XP
15,649
Country
France
Why would I want to eject the SD card then put it back ?
if you need to remove the SD card (for example to update Atmosphere, or Hekate), or prefer to put the SD card on your computer's SD reader, instead of using DBI homebrew to access the SD content, or a FTP homebrew (could be slower).
or switch to a different SD card (with different emuMMC and games on them). or switch to Android SD card, or Lakka (linux RetroArch image) SD card, in case you don't have all these on the same one.

I mean updating games and console.
updating game and console on official firmware : use internet.

updating games on offline emuMMC, you have to "find" the game update the same way you find the game. the NSP or XCI file.
then, use the usual game installer you like to install the update, or the DLC.
game, DLC, and updates are usually independent, you can install them in the order you want. you can start installing the update before the game, etc. it doesn't matter.

updating the console on offline emuMMC, you have to find the firmware files, or extract them from your OFW if you want.
then, use Daybreak using this guide I wrote https://gbatemp.net/posts/9564701


What is the other method ?
there are two method to launch AMS (atmosphere).
Atmosphere is run in different sequences, like a real fusée, there is stage 1, stage 2, stage 3 etc. before reaching Atmosphere.

Method 1 : using "fusée" payload to launch AMS, this is the default method. (before AMS 1.0.0 it was called "fusée primary", now it's just Fusée)
This is the method used by the youtube video on the first post, it launches "fusée.bin" to run AMS.
Hekate can do it too, as it can launch payloads.
If you run AMS this way, and you have an emuMMC present on your SD card, it will ALWAYS boot emuMMC, you will never be able to run the eMMC as CFW.

The second method (fss0) consists in launching AMS without it's official payload (fusée), but using hekate boot method. (before AMS1.0.0 it was called "fusée secondary", now it's "package3")
This allows different patching method (to patch AMS itself to make it do different/new things). and allows different boot configuration, such as booting the console from Hekate without CFW, or booting eMMC CFW even if you have an emuMMC present on SD card.

You usually don't need all these different ways of booting your console.
only fusée is enough. but some guides mix both methods. some users prefer one over the other (mainly due to historical reason about piracy patches).
But now patches are available for both methods (fusée, and fss0)

if it is outdated, aren't there any differences ?
the second guide I linked has some interesting additions (such as the URL filtering to prevent CFW from connecting to a Nintendo's server).
It also provide a Hekate boot file with all launch methods, but point to a file I suggested to change. That's not an issue if you don't follow my recommendation. I just find it too bad that it's half useful.
It's oudated because it's still referring to the folder "sept", which is not needed anymore to launch AMS. But it's not a big problem, you can follow that guide.
it's still missing the "signature patch" to allow game launching. it's mentioned in the "reinstalling atmosphere" extra guide menu, but the link is outdated too.
it's up to date in the "sigpatch" extra menu. but not included in the default guide, you have to do it at the end, while you could have prepared your SD card with these patches right from the start.
It also doesn't explain that each version of AMS requires new patches, so you need to verify the patch you are using are compatible.

another thing I noted:
the second guide tells the user to put "fusee.bin" in the payloads folder (good), but it's never used!
Then, the launch menu points to "atmosphere/reboot_payload.bin" (which is AMS fusée.bin renamed) instead of "fusée.bin" you just placed in "hekate/payloads/" folder.
So, when I suggest to replace "reboot_payload.bin" with Hekate payload .bin file, you would launch hekate in loop if you use the provided menu...

But some users might prefer "reboot payload" (launched from homebrew launcher) to actually reboot AMS, not hekate.
Like I said earlier, it's only my recommendation, not forcing you to do the same.


one final thing I forgot to tell:
Once you are running AMS, if you want to launch a homebrew, keep press R button and launch a game. it will launch Homebrew launcher instead, with full RAM access.
if you launch the album, it will launch Homebrew launcher in applet mode, without full RAM access ! some homebrew will not work. (applet mode let you run homebrew above running games, for example cheat code searcher)
if you want to launch the "real" album to see your screenshots, press R when launching album.

This "press R" and behavior is configurable in AMS setting files. it can be linked to a specific TitleID, etc.
but the default is not bad.
 
Last edited by Cyan,
  • Like
Reactions: TonyNESgri

TonyNESgri

Well-Known Member
OP
Member
Joined
Sep 16, 2021
Messages
173
Trophies
0
Age
24
XP
507
Country
France
That is a very detailed explanation of yours ! Kay, with ALL OF THAT in mind, I should now be able to find a way on how to hack my Switch and get stuff on it with minimum risks. Thanks again ! I might send you new questions in the future if anything goes wrong (But I don't plan to hack my Switch now, maybe in the next months, when I get the required material.)
 
  • Like
Reactions: Cyan

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
    AncientBoi @ AncientBoi: Que dices?