Tutorial  Updated

Fuseless firmware update.

Complete guide Fuseless Update.


IMPORTANT DISCLAIMER:

Gbatemp community or me IS NOT responsible if you BRICK your console or EVEN if you are banned. We still don't know if Nintendo will ban consoles having executed any custom code, and as you know, things are moving fast.

You will need a dumped firmware, and there will be no link here for that. The firmware you want to install has to be an official one not a leaked one (Like 6.0.0-4.0), be careful. The A4-A5 Section will help you to dump your own.

This tutorial to restore your dump restore also your save and isn't always safe to operate, ask someone who knows if you went ouf of boundaries of it.

This tutorial will make you install AutoRCM which force you to be able to load a payload for booting your switch from power OFF state.



Introduction


Purpose:

This tutorial will teach you how to use Hekate, backup/restore Nand and how to update your switch without burning fuses to play Online and keep the possibility to downgrade, FROM SCRATCH AND FOR NEWBIES.

Another, more exhaustive and more complicated tutorial exists >> here << made by @rajkosto , many thanks to him and to all the devs around switch hacking. His tutorial covers this whole tutorial but is a bit outdated. The goal here is to have a total noob friendly tutorial that we can use from scratch and that will bring you to a full updated Switch that you can play Online while still being able to downgrade.

If you have errors, you may want to look that link, at the whole Switch forum or even ask!

If you have SX OS, you may want to not follow this tutorial at all as I don't have one and I don't know about it!


I'm sorry but I may add, this thread will not support SX OS. The goal of this thread is to do that the more Open Source way. Having someone executing code against your hardware IS NOT nice.

One of the goal of this tutorial is to get people to understand what Switch hacking is about and not spreading knowledge about people hiding their code.

You shouldn't use SX OS as it is not required, and if you want things faster, go out there on wikis and git reporsitories there is TONS of infos and nice things to do with you Switches!



Requirements:

1) A Switch.
Hardware compatibility: Check here.
Firmware compatibility: Potentially all, search for people who have already tested if not sure. I will try to test them. (tested from a stock 3.0.0 to 6.0.0 and a stock 4.0.1 to 6.0.0/6.0.1)

2) USB-A to USB-C cable.

2) A MicroSD card (I recommend 64GB to make sure your nand fit)

3) An other MicroSD card (1 GB is okay) if your original firmware is non-exFAT (it means you have the "Unable to access SDcard" prompt when trying to read exFAT card on your switch)
NOTE: If you don't have a second MicroSD, you may want to check A3) Section.
4) A MicroSD card reader on your computer

5) A Windows computer (sorry, Linux later, MacOs never from me)

6) I highly recommend to have fight mode ON, automatic system update disabled and report disabled before beginning this guide. The state of your switch before this tutorial will be the state of your switch after restoring. So I recommend setting up your switch like that to avoid any accidental update.

7) A lot of patience, some coffee/tea



Downloads:

1) Archive with content for your SDcardV3


It contains:
-A raw copy of Hekate ctcaer v4.2 without the bin from >>>here<<<. (at archive:/)
-A raw copy of atmosphere from rajNX available >>>here<<<. (at archive:/)
-A raw copy of hbl.nsp from rajNX (at archive:/rajNX/)
-A raw copy of sm.kip, loader.kip and pm.kip from rajNX. (at archive:/cfw/)
-A raw copy of hbmenu.nro from rajNX. (at archive:/)
-A raw copy of ChoixduJourNX from >>>here<<<. (at archive:/switch/)
-An empty /stock_FW_update/ where you will put your official firmwares update folder. (at archive:/)
-A modified hekate_ipl.ini. (at archive:/bootloader/) to avoid getting lost which contains:
Code:
[config]
autoboot=0
bootwait=0
customlogo=0
verification=2
hbTitleId=010000000000100D
hbTitleName=Album
hbKeyCombo=!R
{-------- Stock -------}
[Stock]
[Stock (Prevent GC access)]
kip1patch=nogc
{-- Custom Firmwares --}
[AtmoHB]
kip1=cfw/loader.kip
kip1=cfw/sm.kip
kip1=cfw/pm.kip
[AtmoHB (Prevent GC access)]
kip1=cfw/loader.kip
kip1=cfw/sm.kip
kip1=cfw/pm.kip
kip1patch=nogc
# edited from hekate - CTCaer mod v3.0 .ini template from https://github.com/CTCaer/hekate/blob/master/res/hekate_ipl_template.ini
New files added on 11/10/2018 for dumping your own update. (WIP)
-A raw copy of memloader's sample content's folder from >>>here<<< (at archive:/)


2) Archive with content for your windows PC V2


It contains:
-A raw copy of Hekate ctcaer v4.2 bin from >>>here<<<. (at archive:/)
-A raw copy of guiformat from >>>here<<<. (at archive:/)
-A raw copy of TegraRcmGui from >>>here<<< (at archive:/)
New files added on 11/10/2018 for dumping your own update. (WIP)
-A raw copy of memolader.bin from >>>here<<< (at arhive:/)
-A raw copy of TegraRcmSmash from >>>here<<< containing itself a raw copy of biskeydump.bin from th same place. (at arhive:/)
-Both folders of memloader and biskeydump with readmes and licenses.
-A raw copy of HacDiskMount from >>>here<<< (at archive:/)
-A Created bat file that uses then TegraRcmSmash/biskeydump command to dump your BIS keys containing:
Code:
TegraRcmSmash.exe -w -r biskeydump.bin
pause

NOTE: archives' password is "RajIsAwesome" without the quotes.



Where to start:

If you never did a backup go to P) then Step I).

If you ever did a backup (DON'T SKIP IT!!!) and you never executed any unofficial code since your last restore to a clean nand then go to Step II).

If you ever did a backup (DON'T SKIP IT!!!) and you ever executed any unofficial code since your last restore to a clean nand then go to Step AI) then Step II).

About Step A1): If you stay in the bounds of this tutorial, I know you can restore as you want, but if you did other things, check with someone that knows!!!



P) Prepare your SD card(s) and your windows folder.


1) Prepare your MicroSDcard for NAND backup and ChoixdujourNX (the big or only one):

/!\ You will lose all data on that drive so BE CAREFUL with that.


a) Put MicroSD card, in your MicroSD card reader

b) Go to Start>>Computer>>(Right click) on SD card letter>>Format.

c) The file system size should be exFAT and the allocation unit size should be 128k, let it like that, then click "Start".

d) Put the content of the archive 1) at the root of your exFAT sdcard.

e) [exFAT users] Fill the /stock_FW_update/ folder with the folder containing firmware update's content.
2) Extract the content from Archive 2) somewhere in a forlder on your computer.

NOTE: If you don't have a second MicroSD, you may want to check A3) Section.


3) [non-exFAT user] If your original FW is non-exFAT, Prepare your FAT32 MicroSDcard (the small one) for choixdujourNX:

/!\ You will lose all data on that drive so BE CAREFUL with that.


a) Put your FAT32 MicroSD card, in your MicroSD card reader

b) Go to Start>>Computer>>(Right click) on MicroSD card letter>>Format.

c) The file system and the allocation unit size should respectively be FAT32 and 32k, let it like that, then click "Start".

d) Put the /atmosphere/, /bootloader/, /cfw/, /rajNX/, /switch/, /stock_FW_update/ and hbmenu.nro folders and file from the archive 1) at the root of your FAT32 sdcard.

e) Fill the /stock_FW_update/ folder with the folder containing firmware update's content.
OR

NOTE: If you don't have a second MicroSD, you may want to check A3) Section.


3) [non-exFAT user] If your original FW is non-exFAT but you can't format to FAT32 because windows don't let you do so:

/!\ You will lose all data on that drive so BE CAREFUL with that.


a) Find guiformat.exe in the /fat32format/ in the archive 2) and unpack it wherever you want.

b) Double click "guiformat.exe", and select the letter of your MicroSDcard.

c) The allocation unit size should be 32768, let it like that, then click "Start".

d) Put the /atmosphere/, /bootloader/, /cfw/, /rajNX/, /switch/, /stock_FW_update/ and hbmenu.nro folders and file from the archive 1) at the root of your FAT32 sdcard

e) Fill the /stock_FW_update/ folder with the folder containing firmware update's content.​


I) Use Hekate and Backup your NAND (MANDATORY).


1) Put your exFAT MicroSDcard inside your Switch.

2) Boot in RCM, Tutorials >>>in this big thread<<.

NOTE: your computer should start seeing an APX device.

3) Start TegraRCMGUI.exe from archive 2) on your computer. (it may prompt your for a driver, coming soon).

NOTE: TegraRCMGUI.exe will tell you RCM DETECTED if you have the right setup.

4) Browse to Hekate payload "hekate_ctcaer_4.2.bin" and click inject.

NOTE: In Hekate, don't mess around, it's your recovery and you can break things fast.

5) In Hekate, use vol up/down to navigate to Tools and Power to choose it.

6) Then choose Tools...>>Backup..>>Backup eMMC BOOT0/1, this one is fast.

NOTE: Hekate will create /backup/your_switch_id/BOOT0.bin and /backup/your_switch_id/BOOT1.bin.

7) Then choose Tools...>>Backup..>>Backup eMMC RAW GPP, this one takes 1 Hour~.

NOTE: Hekate will create /backup/your_switch_id/rawnand.bin.
/!\ Don't Skip Verify.
/!\ Make sure the Switch has enough battery or is in charge.

8) Save this Nand on 2 offline supports and one online, for more security I md5check the sdcard (as it's been verified by the console) and my nand backups (maybe a section on that later).

/!\ This backup is your ULTIMATE FALLBACK don't loose it !
NOTE: If you don't have a second MicroSD, you may want to check A3) Section.



II) Use ChoixduJourNX and Update your Switch Firmware.


This step will make you install AutoRCM which force you to be able to load a payload for booting your switch from power OFF state.

1) Start Hekate by repeating Step I) 1-4) but non-exFAT users have to do it with their FAT32 MicroSDcard.

NOTE: If you don't have a second MicroSD, you may want to check A3) Section.


2) Choose Launch...>>AtmoHB.

3) Once your firmware is started, choose the Album button to start HBmenu.

4) Choose ChoixduJourNX.

5) Choose /stock_FW_update/ Folder.

6) Choose the folder where you extracted your firmware's update.

7) Click Choose, let it analyse and follow the prompt, if you have NCAs errors, search for a better update source.

WARNING WARNING WARNING: Running a FIRMWARE >= 4.0.0 WITHOUT REPLACEMENT FS_XXX_nogc.kip1 ACTIVE WILL MAKE YOUR CARTRIDGE PORT UNUSABLE ON EARLIER FIRMWARES. forwarded from @rajkosto's post



A1) Restoring your Nand.


About Step A1): If you stay in the bounds of this tutorial I know you can restore as you want, but if you did other thing, check with someone that knows!!!

1) Transfer BOOT0.bin, BOOT1.bin, rawnand.bin in the (exFAT)sd:/backup/your_switch_id/restore/ folder.​

2) Boot your Switch in RCM.

3) Choose Tools...>>Restore...>>Restore eMMC RAW GPP (exFAT only).

/!\ Don't Skip Verify.
/!\ Make sure the Switch has enough battery or is in charge.


4) Choose Tools...>>Restore...>>Restore eMMC BOOT0/1.

/!\ This will disable Auto-RCM make sure you have a jig and your firmware will correspond to your fuses.
/!\ Don't Skip Verify.
/!\ Make sure the Switch has enough battery or is in charge.



A2) Do the loop.


After unofficial execution before going online:

1) Restore your switch Step A1).

2) Use choixdujourNX to update your switch Step II)

3) Repeat after any unofficial code.

/!\ It will also restore your save so you will loose progression, and I've no solution for now, probably later.




A3) FAT32/ExFAT, 2 MicroSDcards, some knowledge about how it works.


SOME KNOWLEDGE: For backup you are forced to use exFAT. You can't have a 32Go file on a FAT32 card.
Hekate act at the Bootloader level of the console and it doesn't require any driver to work with exFAT even if your Horizon OS (so the Switch's firmware) doesn't have exFAT support.
You have to backup your Nand with an exFAT card even on non-exFAT system.



HOW TO:
If you have 2 MicroSDcards, then use the big one as exFAT and the small one as FAT32
1) You prepare both MicroSDcards with the same archive and add your update in the (FAT32)sd:/stock_FW_update/ (Step P)

2) First you backup (Step I) with the exFAT one

3) Then you use ChoixdujourNX (Step II) with the FAT32 one
If you have only 1 MicroSDcard, then use it as exFAT first
1) You prepare this MicroSDcard with the same archive (Step P)1)

2) First you backup (Step I) with your only SDcard as exFAT

3) Then you put that MicroSDcard back in your computer to backup your nand backups (still make sense?) (end of Step I)

4) Format it as FAT32 with Step P)3) [non-exFAT users]

5) You re-prepare this MicroSDcard with the same archive and add your update in the (FAT32)sd:/stock_FW_update/ (end of Step P)3) [non-exFAT users])

6) Finally you use ChoixdujourNX (Step II) with the same and only card but as FAT32

That's where 2 MicroSDcards comes handy, because if you have to restore you will loose exFAT from you OS but you will need your exFAT card for restoring your nand. which means you will have to format 2 times your MicroSDcard per restore, while if you have a old but functionnal and STABLE 1GB microSD to load your firmware in FAT32 it's way enough as the update is 300MB~

A4) Dumping your BIS keys (needed only once).


1) Boot your switch in RCM connected to you computer

2) Find in the new Windows' archive /TegraRcmSmash/xxx/ShowMykeys.bat

NOTE: Your command prompt will show you your bis keys.
/!\ Don't show it to anyone

3) Copy from the line that start with "HWI" to the line containing "BIS KEY 3 (tweak)" included into a file name "keys.txt" that you created.

4) Push POWER button to turn of you switch then copy that keys.txt file at the root of your SDCard (exFAT/FAT32 doesn't matter here).

NOTE: These keys, will allow you to read (and write, but we will not here) your nand by USB with HacDiskMount


A5) Using your keys, memloader and HacDiskMount to dump your downloaded update.


1) Boot your Horizon OS and let it connected to Internet until you can see in System Menu "Update is Ready".

NOTE: It means files are on your Switch which is waiting your confimation to update /!\ Don't Confirm and turn off you Switch

2) Start TegraRCMGUI.exe from archive 2) on your computer. (it may prompt your for a driver, coming soon).

NOTE: TegraRCMGUI.exe will tell you RCM DETECTED if you have the right setup.

4) Browse to Memloader payload "memloader.bin" and click inject.

NOTE: Memloader is really powerful and will allow you to mount your Nand's partition if you provided it your BIS keys(keys.txt from A4 at the root of you SDcard).
NOTE: Memloader controls' are the same as Hekate's, VOL UP for UP, VOL DOWN for DOWN and POWER to CONFIRM.

5) Choose ums_emmc.ini on your switch to expose your switch's nand to your computer.

NOTE: Your Switch's screen should turn black while still being backlighted.
/!\ From there windows will prompt MULTIPLE TIMES you to format volume that it can't read, NEVER DO IT
/!\ If at some point you want to unplug your switch after doing that ALWAYS safely eject "USB download gadget"

6) Start HacDiskMount.exe (with >right click>>"Run as Admin") from archive 2) on your computer.

/!\ I ask you to be EXTRA CAREFUL with this software, YOU CAN MESS EVERYTHING UP AND RUIN YOUR DAY IN BUNCH OF CLICKS.
/!\ Stay in the Boundaries of this Tutorial and nothing bad can happen.
/!\ If you go out of it I will not be able to support you.
NOTE: It need Admin Right to mount and manage volumes.

7) Click "File" at top left then "Open Physical Drive", then CHOOSE EXACTLY "Linux UMS Disk 0 (29.121GiB)"

NOTE: You can see the partition list of your switch.

8) Double click the SYSTEM partition.

NOTE: A property menu should appear, asking you for BIS 2 keys.

9) Put your keys, then choose a drive letter and TICK READ-ONLY, so you don't mess up.

10) Go to your SYSTEM's drive letter that you just set, and find the Content folder.

11) Copy that content folder to your computer and rename it to what you want (possibly the firmware version you're trying to install)

12) Unmount your SYSTEM in HacDiskMount, then in HacDiskMount again "File>>Exit", and safely eject "USB download gadget".

12) Take back your MicroSD to your computer then copy that renamed folder to your (FAT32 for non-exFAT users) sd:/stock_FW_update/

13) Go back to II) to install the new update.​

Conclusion


Future update(s)

* things as I find time.



Thanks To:

* @rajkosto for his cool exhaustive tutorial and his dedication to the scene.
* Devs around cfws, SDFiles, and Switch hacking in general.
* All users from both @rajkosto 's threads who explained lot of stuff about switch hacking.
* All developers creating tools to make those operation easier.
* All people that have been waiting silently and patiently for a good exploit on Switch without complaining (That's my personnal add, because they need to be thanked).
* DarckCrystale for the template of this post.



Changelog

22/10/2018: make SDFilesV3 to add an option to prevent GC access on cfw.
10/10/2018: Add Section A4 and A5 to dump your keys and dump your own updates, and updated archives with V2.

10/10/2018: Add forgotten archives' password in 'Downloads' section. Add section A3) for 1 MicroSD setup. Tested on 6.0.1

09/10/2018: Original post.



NOTE: the changelog date format is dd/mm/yyyy.

 
Last edited by scyllahydre,

Draxzelex

Well-Known Member
Member
Joined
Aug 6, 2017
Messages
18,986
Trophies
2
Age
29
Location
New York City
XP
13,326
Country
United States
Why only guide users towards using Atmosphere with ChoiDujourNX? This seems to imply that its the only one compatible which is not the case. Both ReiNX and SX OS V2.0+ support ChoiDujourNX, both of which are easier to configure and setup on the SD card than Atmosphere.
 

scyllahydre

Active Member
OP
Newcomer
Joined
Jun 3, 2015
Messages
33
Trophies
0
Age
32
XP
221
Country
France
@Draxzelex lack of infos and lack of time I would say. I'll try to complete it, bring detailed steps and I'll integrate it and obviously add you to the credits. I would like too, to keep SX OS out of there, it is not needed and has malware code, I can't support that.

@Lunalik Thank you :P
 
Last edited by scyllahydre,

scyllahydre

Active Member
OP
Newcomer
Joined
Jun 3, 2015
Messages
33
Trophies
0
Age
32
XP
221
Country
France
@Don Jon The tutorial consider that, as it has been tested on a non-exFAT original FW. So, read around, there's even a piece of the tutorial to format big SDcard in FAT32 ;P
 

Don Jon

Well-Known Member
Member
Joined
Nov 20, 2015
Messages
1,057
Trophies
0
Age
38
XP
1,496
Country
United States
@Don Jon The tutorial consider that, as it has been tested on a non-exFAT original FW. So, read around, there's even a piece of the tutorial to format big SDcard in FAT32 ;P
im sorry
i meant there is no info on how to back up a 64gb NAND, when sd card only has access for 32gb(because current firmware does not have ex support)
 

scyllahydre

Active Member
OP
Newcomer
Joined
Jun 3, 2015
Messages
33
Trophies
0
Age
32
XP
221
Country
France
@Don Jon It doesn't work like that. For backup you are forced to use exFAT. You can't have a 32Go file on a FAT32 card.

Hekate act at the Bootloader level of the console and it doesn't require any driver to work with exFAT even if your Horizon OS (so the Switch's firmware) doesn't have exFAT support.

You have to backup you Nand with an exFAT card even on non-exFAT system.

So let me put that short, if you are non-exFAT user:
If you have 2 MicroSDcards, then use the big one as exFAT and the small one as FAT32
You prepare both MicroSDcards with the same archive and add your update in the (FAT32)sd:/stock_FW_update/ (Step P)
First you backup (Step I) with the exFAT one
Then you use ChoixdujourNX (Step II) with the FAT32 one​
If you have only 1 MicroSDcard, then use it as exFAT first
You prepare this MicroSDcard with the same archive (Step P)1)
First you backup (Step I) with your only SDcard as exFAT
Then you put that MicroSDcard back in your computer to backup your nand backups (still make sense?) (end of Step I)
Format it as FAT32 with Step P)3) [non-exFAT users]
You re-prepare this MicroSDcard with the same archive and add your update in the (FAT32)sd:/stock_FW_update/ (end of Step P)3) [non-exFAT users])
Finally you use ChoixdujourNX (Step II) with the same and only card but as FAT32

That's where 2 MicroSDcards comes handy, because if you have to restore you will loose exFAT from you OS but you will need your exFAT card for restoring your nand. which means you will have to format 2 times your MicroSDcard per restore, while if you have a old but functionnal and STABLE 1GB microSD to load your firmware in FAT32 it's way enough as the update is 300MB~
 
Last edited by scyllahydre,
  • Like
Reactions: klear and Don Jon

heyd_s

Member
Newcomer
Joined
Jun 7, 2018
Messages
9
Trophies
0
Age
33
XP
244
Country
United Kingdom
once the update is finished which option should i choose under launch if i plan to go online (ofw or atmos cfw)? thanks
 
Last edited by heyd_s,

scyllahydre

Active Member
OP
Newcomer
Joined
Jun 3, 2015
Messages
33
Trophies
0
Age
32
XP
221
Country
France
@heyd_s You launch stock preventGCUpdate for ofw/online.
And launch AtmoHB for cfw. But BECAREFUL you don't have EmuNand (which's tutorial will be available soon after EmuNand itself is ready) and if you edit your nand while on cfw (so with 90DNS or Flight ON to avoid poking Nintendo's servers), you HAVE TO restore your nand before going back on Nintendo's online to prevent being banned. I would wait for EmuNand if I were you, as it will be way more safer (but still risky since you use RCM and it could be detected).
 

heyd_s

Member
Newcomer
Joined
Jun 7, 2018
Messages
9
Trophies
0
Age
33
XP
244
Country
United Kingdom
think i screwed myself, i did the inital configuration with atmos, and then change to boot from stock
if i choose to launch stock preventGCUpdate will i still be able to play gamecards that require higher firmwares?
 
Last edited by heyd_s,

scyllahydre

Active Member
OP
Newcomer
Joined
Jun 3, 2015
Messages
33
Trophies
0
Age
32
XP
221
Country
France
It avoids you gamecart port to be updated but also accessed, and I think it prevents you to use it. (I don't have any physical games to test it)
I edited the ini file so you can preventGC access on cfw either. I don't know what the GCUpdate does, beside updating gamecart port's firmware, I should get infos on that.
 

KHANV1CT

Well-Known Member
Member
Joined
May 22, 2013
Messages
130
Trophies
1
Age
36
XP
444
Country
United States
Purpose: I hate Team Xecuter and therefore you should too because they're a bunch of doodoo heads.
 

adrenochrome

Well-Known Member
Newcomer
Joined
Sep 12, 2009
Messages
51
Trophies
0
XP
465
Country
France
@shremi oops, corrected =)
it still ask for a password :
Code:
@8570w:~/Téléchargements/FuselessSDFilesV3$ unzip ../FuselessSDFilesV3.zip
Archive:  ../FuselessSDFilesV3.zip
   creating: FuselessSDFiles/
   creating: FuselessSDFiles/atmosphere/
   creating: FuselessSDFiles/atmosphere/exefs_patches/
   creating: FuselessSDFiles/atmosphere/exefs_patches/SUCCulent fake tickets/
[../FuselessSDFilesV3.zip] FuselessSDFiles/atmosphere/exefs_patches/SUCCulent fake tickets/7135C20E752183914606CCE81293F24B738C3AEF.ips password:
password incorrect--reenter:

edit : ok, i finally noticed the note ;)
NOTE: archives' password is "RajIsAwesome" without the quotes.
 
Last edited by adrenochrome,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    SylverReZ @ SylverReZ: @salazarcosplay, Morning