Ultimate guide to upgrade your firmware/Atmosphère

ONLY UPDATE YOUR CONSOLE TO 2x.x.x IF ALL THE HOMEBREW YOU USE IS UPGRADED




Sometimes you need to upgrade your console, upgrade the firmware or upgrade Atmosphère, using the @l7777 's guide (https://gbatemp.net/threads/updating-hekate-atmosphere-and-hos.631739/) as base I hope to create a list of necessary steps to successful upgrade your console.

This guide uses Hekate, if you don't want to use Hekate skip the steps about it. You may loose some features.





Make a backup.​

Always make a full backup of your console, so if something goes wrong you have a know working restore point.​


  • If you are going to update your SysNAND you can create a backup using Hekate's NYX, It's the easy way.
  • For your EmuNAND there are two paths:
  1. If your EmuNAND is RAW based, you can use a tool like EmuTool (EmuTool GitHub) to backup the RAW partition to a set of files on your PC. That backup can be used later to restore the RAW partition or you can convert your setup to File based EmuNAND using that files.
  2. If your EmuNAND is file based, making a backup is so easy as copying the SDMC:/emuMMC folder to your PC.

Also is advisable to backup all files on your SD Card, You can Use Hekate's UMS for that task, so you don't remove the SD from Console and avoid the problem associated to manipulating the SD card.

Preparation.​

Before you start the process you need some steps:
  • Download latest Atmosphère files, download again from the GitHub repo no matters if you think you have it, sometimes the repo is silent updated.
  • Download latest Hekate files, download again from the GitHub repo no matters if you think you have it, sometimes the repo is silent updated.
  • Download latest Sigpatches from the GBATemp Thread no matters if you think you have the newest, they might be upgraded.
  • Download latest Sys-Patch Sysmodule some people tells is redundant but is better be safe than sorry
  • If you are going to upgrade your firmware, remove any theme you have installed! NX-Themeinstaller now have a option to remove all installed themes.
  • You can get a legally acquired firmware files:
  • Also a search engine can help you to find a correct backup, by example Firmware 18.1.0 rebootless have an ID of e7e2b68

Starting the process.​

Restart your console to Hekate's NYX and load UMS tool, or remove the card and put on your PC, is up to you, Hakate may be a little bit slower but you do not risk physically your console.
  • Delete SDMC:/atmosphere/contents or SDMC:/atmosphere/titles, you should have backed up this folder before.
  • Delete the next folders, that's because the first time you load new Atmosphère that folders will emptied and that can take a lot of time so you could think your console got frozen, so in order to avoid that false alarm it's better to delete them before start console.
    • SDMC:/atmosphere/crash_reports
    • SDMC:/atmosphere/erpt_reports
    • SDMC:/atmosphere/fatal_reports
  • If you had used INCOGNITO_RCM, is advisable to remove incognito from yours *NAND, having PRODINFO blanked via Incognito RCM can create problems on the new firmware/atmosphère versions.
  • Extract Atmosphère zip file and copy to the root of your SD, overwrite all files.

ProdInfo Blanked


If you like to kept your prodinfo blanked, restore and edit your SDMC:/exosphere.ini file and add/change the next values to «1» in order to enable Atmosphère incognito on telemetry:
Code:
blank_prodinfo_sysmmc=1
blank_prodinfo_emummc=1

DNS MiTM


Now to enable DNSMiTM, you need to restore your SDMC:/atmosphere/config/system_settings.ini file from backup, or copy the one from SDMC:/atmosphere/config_template/system_settings.ini and be sure the parameter enable_dns_mitm , enable_dns_mitm_debug_log and add_defaults_to_dns_hosts have the value u8!0x1 Also be sure you remove the «;» at start of the line. By example, your file should be something like:

Code:
[atmosphere]

.
.
.

enable_dns_mitm = u8!0x1
; Controls whether dns.mitm uses the default redirections in addition to
; whatever is specified in the user's hosts file.
; 0 = Disabled (use hosts file contents), 1 = Enabled (use defaults and hosts file contents)
add_defaults_to_dns_hosts = u8!0x1
; Controls whether dns.mitm logs to the sd card for debugging
; 0 = Disabled, 1 = Enabled
enable_dns_mitm_debug_log = u8!0x1
; Controls whether htc is enabled
; 0 = Disabled, 1 = Enabled

.
.
.

Where the dots represent other text.


Other Atmosphère Configs


Restore your SDMC:/atmosphere/config/override_config.ini (Key combos for atmosphère) & SDMC:/atmosphere/config/stratosphere.ini (Disable game cartdrige) files.


Hekate



  • Extract the downloaded Hekate zip file, and copy to the root of your SD, overwrite all files.
  • Upgrade your payload.bin file, if you use a injector on the injector, if you use a modchip replacing the file SDMC:/payload.bin file, if you use Hekate rename the file hekate_ctcaer_X.Y.Z.bin to payload.bin and copy to root of your SDCard.
  • Restore YOUR OWN CUSTOMIZED SDMC:/bootloader/hekate_ipl.ini file from the backup you did before. if is necessary remove any kip1patch=nosigchk line on it because you are not using patches.ini so far.
    Or if you like to use it on your console, download latest Sigpatches archive from the post indicated on the thread, but copy only the file SDMC:/bootloader/patches.ini and do not remove the lines on your hekate_ipl.ini. this is not necessary.

Sigpatches






Testing the console​


Put the card or turn off the console, then start your console as usual and let the HOS to load.​
If everything load fine you can now upgrade your firmware or go to next step.​
In order to upgrade your firmware, load Homebrew Loader (HBmenu) and run Daybreak. it's better to select «install (FAT32 + exFAT)» option, on this way if anytime you insert a SD card formatted on exFAT you will avoid an error. This option only install additional drivers but DO NOT modify your card. Be sure of select «Preserve settings» if you like to preserve your games and configuration.​
Your console will restart once the process end.​
Test your installed titles and verify some games to run OK.​


Finishing the setup.​


After you know your console boots correctly and everything is fine now you can reinstall SYSMODULES, cheats, and modifications. you can choose restore them from your SDMC:/atmosphere/contents backup or I do recommend to look if there is any newer version.​
Other common SYSmodules are, Emuiibo, Mission Control, FTPD, etc.​
Remember to restart your console once you upgraded any SYSMODULE​
Take a time and look for updated version of your Homebrew.​
If you use themes look if there are new versions of NXThemesInstaller and the patches needed to install them, after update all components, reinstall your themes.​


Important note for Mac Users:​


Macintosh OSes and IOS have a disgusting tendency to no adhere to standards so if you handle your card on a Mac, be sure to boot in to NYX and on tools tab select «Unset archive bit» AND «Fix archive bit - Nintendo»​

More information about the upgrade process:​


 
Last edited by impeeza,
  • You can get a legally aquiered firmware files, by example dumping them from another console using homebrew like https://github.com/mrdude2478/Switch-Firmware-Dumper or DBI, also a search engine can help you to find a correct backup, by example Firmware 18.1.0 rebootless have an ID of e7e2b68
I tried the one from the Github link, but there is only one release and it's from April 29th, 2021 and crashes on firmware 16.0.0 and newer. There's a commit from February 23rd 2023 that fixes that, but it's not compiled, so you'll have to build it yourself. Once built, it works perfectly, even on firmware 18.1.0. You can also use the fork by zdm65477730 that has a release that's already pre-compiled with the fix, but it's also changed the app's language from English to Chinese, so it might be harder to use for some. DBI is now also only published in Russian, so I have no idea how to even begin using it.

After a little Googling I found out that TegraExplorer has something called FirmwareDump.te where you can choose whether to dump SysMMC or EmuMMC. It then saves that firmware on your sd card like this "/tegraexplorer/Firmware/XX.X.X" where the XX's stand for version number. That is what I found to be the easiest and gives me the most options, so I've begun using that.
 
The easiest way to get firmware files is to download them from a certain trusted site that we aren't allowed to link to but, luckily, is extremely easy to find with the right keywords. After that, all you need to do is to connect your Switch via USB cable to your PC, go into Hekate and check USB Tools in order to activate media transfer, create a folder on the root of the SD card and extract the contents of the latest firmware archive you just downloaded from one of the trusted sites. After that, close the USB Tools, boot into Atmosphere, launch Daybreak and run the update. Reboot and you're done with the update.
 
The easiest way to get firmware files is to download them from a certain trusted site that we aren't allowed to link to but, luckily, is extremely easy to find with the right keywords. After that, all you need to do is to connect your Switch via USB cable to your PC, go into Hekate and check USB Tools in order to activate media transfer, create a folder on the root of the SD card and extract the contents of the latest firmware archive you just downloaded from one of the trusted sites. After that, close the USB Tools, boot into Atmosphere, launch Daybreak and run the update. Reboot and you're done with the update.
That is indeed the easiest thing to do, but the guy that runs that website got his Mega and Archive account banned a few weeks ago and all the Switch Firmware links turned into invalid links, and I'm not sure if he's managed to rebuild everything yet or not, but only 18.1.0 has been re-uploaded so far, so in case that ever happens again in the future, I wanna be able to dump it myself, if no alternative sites show up. Hopefully he can come back from this, because I don't remember anything like this happening to firmware hosters before, but then again, I've only been in this space for about three years.
 
  • Sad
Reactions: Blythe93
Ah, I wasn't aware of that. At least the other site wasn't affected by this as they have those firmware files hosted on GitHub.
They're not as known as the other guy, but seeing as it's on GitHub, I'm not sure for how long it will stay there. The one posting on Github also used to have a complete package-deal type thing hosted there, kinda like "BroadOcean" (not really their name, but I'm not sure how much you can even write about this before getting removed) but Nintendo got to them. They removed the patches, but still had their repository taken down, They then moved on to Gitlab and now they're at Codeberg. Codeberg is based out of Germany and seemingly immune to DMCA takedown notices, so let's hope it stays there for a while. If necessary, they can probably move the Firmware files to Codeberg as well.
 
The easiest way to get firmware files is to download them from a certain trusted site that we aren't allowed to link to but, luckily, is extremely easy to find with the right keywords. After that, all you need to do is to connect your Switch via USB cable to your PC, go into Hekate and check USB Tools in order to activate media transfer, create a folder on the root of the SD card and extract the contents of the latest firmware archive you just downloaded from one of the trusted sites. After that, close the USB Tools, boot into Atmosphere, launch Daybreak and run the update. Reboot and you're done with the update.
Yep, the instructions are there:

1727719878838.png


I really do not want to put the instructions:
  • open your web browser
  • open your preferred search engine, like google.
  • put the terms «18.1.0 e7e2b68»
  • open the first result and download the zip file.
but as we learned on the Noob Paradise, some people needs that type of instructions :rofl2: :rofl2: :wtf: :wtf: :wtf:
Post automatically merged:

I tried the one from the Github link, but there is only one release and it's from April 29th, 2021 and crashes on firmware 16.0.0 and newer. There's a commit from February 23rd 2023 that fixes that, but it's not compiled, so you'll have to build it yourself. Once built, it works perfectly, even on firmware 18.1.0. You can also use the fork by zdm65477730 that has a release that's already pre-compiled with the fix, but it's also changed the app's language from English to Chinese, so it might be harder to use for some. DBI is now also only published in Russian, so I have no idea how to even begin using it.

After a little Googling I found out that TegraExplorer has something called FirmwareDump.te where you can choose whether to dump SysMMC or EmuMMC. It then saves that firmware on your sd card like this "/tegraexplorer/Firmware/XX.X.X" where the XX's stand for version number. That is what I found to be the easiest and gives me the most options, so I've begun using that.
Thanks for the feedback, added the resources and modified the links to latest versions.
 
Last edited by impeeza,
hi, i'm having one issue updating my console ( https://gbatemp.net/threads/failed-to-run-tsec_keygen-firmware-or-failed-to-launch-hos.661665/ ), i've read the guide and for the moment i've one doubt, how can i know what kind of my EmuNAND is RAW /file based? I'll download again atmosphere, sigpatches, and so on from git and do the steps one by one, deleting all.
There are two ways:

On Hekate go to Home -> emuMMC
1728343013183.png


Then you have info about your EmuMMC:

1728343396997.png


Or on your SD Card look for the file

SDMC:\emuMMC\emummc.ini

1728343263526.png


You can see the «sector» of the emuMMC, if the sector ix 0x0 then your emuMMC is File based any other number is RAW based.
 
There are two ways:

On Hekate go to Home -> emuMMC
View attachment 463427

Then you have info about your EmuMMC:

View attachment 463430

Or on your SD Card look for the file

SDMC:\emuMMC\emummc.ini

View attachment 463429

You can see the «sector» of the emuMMC, if the sector ix 0x0 then your emuMMC is File based any other number is RAW based.
Thanks, i'm going to check it when i arrived at home, and i supose both must be the same, i don't know right now if i have even these folder on my sdcard. I think i have some folder/file missing or incompatible, i haven't use my switch for almost a year and i forgot how to update with SX Core and so on, like i put on the thread, i have HOS errors, tsc_keygen, and crashes :wacko:

EDIT:
@impeeza i've checked my sd and i don't have the folder on it, i've search in backups and i've found one folder with two files and other folder inside named SD00 empty:
emummc - oculta.ini with the next info:
[emummc]
enabled=1
sector=0x2
nintendo_path=Emutendo

emummc - archivos.ini with the next info:
[emummc]
enabled=1
path=emuMMC/SD00
nintendo_path=Emutendo

I have to check from hekate but i think i saw some red text looking for something.
Should i copy the emuMMC folder to sd and rename or edit some file?
 
Last edited by miniadri,
  • Like
Reactions: impeeza
Thanks, i'm going to check it when i arrived at home, and i supose both must be the same, i don't know right now if i have even these folder on my sdcard. I think i have some folder/file missing or incompatible, i haven't use my switch for almost a year and i forgot how to update with SX Core and so on, like i put on the thread, i have HOS errors, tsc_keygen, and crashes :wacko:

EDIT:
@impeeza i've checked my sd and i don't have the folder on it, i've search in backups and i've found one folder with two files and other folder inside named SD00 empty:
emummc - oculta.ini with the next info:
[emummc]
enabled=1
sector=0x2
nintendo_path=Emutendo

emummc - archivos.ini with the next info:
[emummc]
enabled=1
path=emuMMC/SD00
nintendo_path=Emutendo

I have to check from hekate but i think i saw some red text looking for something.
Should i copy the emuMMC folder to sd and rename or edit some file?
Seems you are using only SysNAND until now. You can restore your backflip or create a new one from your current NAND
 
Seems you are using only SysNAND until now. You can restore your backflip or create a new one from your current NAND
mmmm i'm not sure about if is sysnand or not, this has change recently? I've seen on Hekate to create emummc, i use it to backup and after that i tried to Launch both options... on SysNand i got crashes, but now on emumcn i don't get crashes but all my games are disssapeared and say to be downlosded and instslled. do I have to play now on emumcc? can i change my saves from sysnand to emumc?
 
Wrongly i updated my switch to firmware 19 and now, launching hakate, the system said "unknown pkgi version. not supported. Failed to launch HOS."
What can i do?
Post automatically merged:

Wrongly i updated my switch to firmware 19 and now, launching hakate, the system said "unknown pkgi version. not supported. Failed to launch HOS."
What can i do?
 
Wrongly i updated my switch to firmware 19 and now, launching hakate, the system said "unknown pkgi version. not supported. Failed to launch HOS."
What can i do?
Post automatically merged:

Wrongly i updated my switch to firmware 19 and now, launching hakate, the system said "unknown pkgi version. not supported. Failed to launch HOS."
What can i do?
wait until hekate and atmosphere get updated, PLEASE DO NOT START TO ASKING they will be updated WHEN will be updated. and please READ.
 
  • Like
Reactions: Blythe93
Hi, i just used this guide like a new setup. It might be me but I had to add the emummc.txt (hosts) file as I could not start any game. https://switch.hacks.guide/extras/blocking_nintendo/. Because of a 'clean' install there wasn't any host file so I figure there should be one. As this guide is an upgrade guide I guess it was assumed that there was already a hosts file available.

/edit:
Here is my personal upgrade/clean install routine. Just really clean to start with. With clean I meant a EmuNAND partition is already in place etc. but clean start like remove atmosphere and Hekate folders and 'start fresh' within the Emunand.
It begins with extracting both atmosphere and Hekate to the SD with additional instructions:

This is for me EmuNAND:

Boot files:
===========
Atmosphère
fusee.bin
Put in folder SD Card\bootloader\payloads\
Hekate
hekate_ctcaer_x.x.x.bin
Put in folder as SD Card\atmosphere\reboot_payload.bin
This so 'Reboot to payload' starts to Hekate.
Put in folder as SD Card\payload.bin

Config files:
=============
Config: SD Card\atmosphere\config\system_settings.ini
[atmosphere]
enable_dns_mitm = u8!0x1

Config: SD Card\exosphere.ini
blank_prodinfo_sysmmc=1
blank_prodinfo_emummc=1

https://switch.hacks.guide/extras/blocking_nintendo/
Put in folder SD Card\atmosphere\hosts\emummc.txt
A report will be generated in SD Card\atmosphere\logs\ called dns_mitm_startup.log.
If this file contains the redirections, the dns redirection is active

Syspatch:
=========
https://github.com/impeeza/sys-patch/releases
Extract latest syspatch ZIP\atmosphere to SD Card\atmosphere
I don't use the overlay but syspatch works this way too.

I noticed the latest syspatch 1.5.5 works (only) with AMS 1.8.0 (if on Emunand 18.1.0) but this was mentioned.
Thanks!
 
Last edited by grimson,
blank_prodinfo_sysmmc=1
Can you explain this one? Doesn't the telemetry get buffered to disk anyway, and once you go back online with prodinfo unblanked it wouldn't matter if you had it blanked at the time, since your log upload session with nintendo requires prodinfo to authenticate? And isn't that a risk, since events might log the S/N inside the payload?

Is there a reason to not do normal OTA upgrades in OFW (coldboot or via warmboot/hekate) if it's your first time doing the FW jump?
 
Can you explain this one? Doesn't the telemetry get buffered to disk anyway, and once you go back online with prodinfo unblanked it wouldn't matter if you had it blanked at the time, since your log upload session with nintendo requires prodinfo to authenticate? And isn't that a risk, since events might log the S/N inside the payload?

Is there a reason to not do normal OTA upgrades in OFW (coldboot or via warmboot/hekate) if it's your first time doing the FW jump?
Once you do something non-saint on a xNAND that NAND MUST BE KEPT OFFLINE FOREVER once you reconnect that NAND to the net and having communication with ninja's servers YOU WILL BE BANNED and there is no way to clean a dirty NAND. PERIOD.

that's why you must kept a UNTOUCHED NAND, and an EmuNAND where you do anything you like on that EmuNAND.

AND DO ONLY LEGAL things on your Untouched NAND.
 
Last edited by impeeza,
  • Like
Reactions: laz305 and Blythe93

Site & Scene News

Popular threads in this forum