[Switch] - Tutos simplifiés, manipulations courantes

 

Introduction

On va ici simplifier quelques tutoriels ou pointer directement certains tutoriels histoire de clarifier des démarches basiques pour les débutants. Pour la plupart de ces démarches vous pouvez aussi utiliser l'Ultimate-Switch-Hack-Script, celui-ci permettant de simplifier grandement beaucoup de choses. Avant tout la lecture de ce sujet pose de bonnes bases, ainsi que ce sujet contenant pas mal d'infos sur le bannissement de la console. Enfin, pour aller plus loin, vous avez également la FAQ qui contient tout un tas d'informations régulièrement mises à jour, il est vivement conseillé la lecture des parties "Lexique adapté à la Switch", "Structure de la SD", "Combinaisons de touches hardware:", "Injecter un payload", "Informations générales", "Bootloaders et CFWs", "Homebrews" (au moins le début de la section) ainsi que les infos au début de cette même FAQ. Ça fait beaucoup de lecture mais il n'est pas nécessaire de tout comprendre, cela permet de se familiariser un peu avec le hack Switch et les conceptes qui l'englobe. Enfin notez également la partie "Liste des tutos/sujets importants" qui, comme son nom l'indique, vous donnera une bonne liste de tutos divers concernant certains points du hack Switch. Notes sur les consoles Mariko: S'il vous plaît veuillez impérativement lire cette page, vous y apprendrez les choses à ne vraiment pas faire sur ce genre de consoles. Note sur les consoles (ou plutôt nand/emunand) utilisant un PRODINFO donneur: Il se peut qu'une erreur se produise lors de la mise à jour en 14.0.0 ou supérieur (erreur avec le programme "0100000000000025" affichée par le crash d'Atmosphere), dans ce cas il sera nécessaire de recréer le PRODINFO avec la dernière version du payload Prodinfo_gen (mode "donor" si on souhaite pouvoir utiliser le port cartouche, sinon le mode "scratch" fonctionne; lire le readme du projet pour savoir comment cela fonctionne), de le chiffrer avec les clés de la console avec NXNandManager ou la Nand Toolbox de mon Ultimate-Switch-Hack-Script et de l'injecter dans la nand/emunand avec NXNandManager ou la Nand Toolbox de mon Ultimate-Switch-Hack-Script. Vous pouvez regarder ce sujet dans lequel on parle de ce souci.

Compatibilité du hack

Pour les consoles dont le numéro de série ne commence pas par "XA" (consoles Mariko) la seule possibilité est de passer par une puce à souder type SX Core/Lite ou HWFly. Pour les autres consoles (consoles Erista) voir ce sujet, notamment la base de données Beta qui est plutôt complète. Pour les consoles non patchée l'injection d'un payload peut se faire via les différentes méthodes d'injection de payloads répertoriées dans la FAQ (voir la partie consacrée à ce point dans la FAQ) et pour les consoles patchées se sont les mêmes conditions que pour les consoles Mariko. Un cas particulier, une console patchée en firmware 4.1.0 ou inférieur peut être hackée via la méthode Pegascape (méthode logiciel) mais ce genre de console est très rare et cette méthode de hack présente quelques limites puisque la sysnand ne doit ni être connectée aux serveurs de Nintendo, ni mise à jour. Pour plus d'infos sur la méthode Pegascape voir cette page dans la partie qui y est consacrée.

Dump de la nand et des clés de la console, à faire absolument

C'est la première chose à faire avant tout hack et il ne faut surtout pas négliger de le faire. Pour dumper la nand, vous avez ce tuto ou encore ce tuto. Pour le dump des clés: Utiliser le payload Lockpick-RCM. Le fichier "prod.keys" obtenu dans le dossier "switch" de la SD contient donc tout un tas de clés qui sont utilisées dans la manipulation de fichiers comme les XCI, NSP, NCA, PFS0, HFS0... On se réfère souvent à ce fichier quand on parle d'outils comme Hactool ou ses dérivés et le fichier est parfois nommé "keys.txt" ou "keys.dat". Il n'est pas nécessaire de mettre à jour le firmware pour récupérer les dernières clés. Notons aussi que le dump des clés peut être fait sur l'emunand sauf pour l'emunand via fichiers de SXOS et pour l'emunand via partition de SX OS voir ce message pour savoir comment faire pour que cela soit possible. Pour utiliser les Bis Keys avec HacDiskMount, il sera nécessaire de couper en deux parties de 32 caractère la Bis Key souhaitée pour l'entrer dans le logiciel. Notez que le fichier obtenu est lié à votre console donc ne le partagez pas. Rappelons que si vous souhaitez savoir quelles clés sont communes et lesquelles sont uniques vous pouvez utiliser la fonction d'analyse d'un fichier de clés dans l'Ultimate-Switch-Hack-Script. Autre point qui est à souligner, par exemple si vous utilisez NSC_Builder pour refaire du contenu (NSP/XCI, supers NSP/XCI, etc...) seul les clés communes sont utilisées donc votre contenu pourra être installé sur n'importe quelle console hackée.

Sauvegardes à faire avant de vous lancer dans des choses incertaines

Lorsque l'on découvre le hack d'une console on est pas toujours rassuré par les étapes à faire, ici vous seront donc donné les choses à faire avant tout quand vous souhaitez jouer les apprentis sorcier. Primo, sauvegarder la nand et les clés, même si vous avez déjà un backup refaites-en un pour pouvoir revenir facilement où vous en étiez juste avant vos modifications et même si la console ne marche pas et que vous essayez de débricker commencez toujours par ces deux choses. Ensuite, sauvegardez vos sauvegardes de jeu via le homebrew JKSV ou DBI, c'est toujours chiant de perdre sa progression dans les jeux. Une fois cela fait, sauvegardez le contenu de la SD quelque part. Si vous avez une emunand via partition, vous devrez la sauvegarder via le logiciel NXNandManager (ou la "Nand toolbox" de l'Ultimate-Switch-Hack-Script) et via le payload Hekate et sa fonction permettant de monter la SD sur le PC via l'USB (aller dans "tools", "usb tools"). Une fois que vous avez sauvegardé tout çà proprement vous êtes paré, le retour en arrière sera toujours possible, cela fait partie des gros avantages de la Switch d'être quasiment impossible à bricker de manière logiciel (attention tout de même pour les consoles Erista patchées ou les consoles Mariko, n'activez pas l'auto-RCM sur la sysnand et n'activez pas Incognito avec n'importe quel logiciel sur celles-ci non plus, si vous avez sauvegardé les éléments avant comme suggéré c'est réparable mais ça peut être assez fastidieux quand même).

Installation d'un CFW et de contenu

Voici ce tuto qui vous donnera les démarches pour installer un CFW. Vous pouvez également vous aider de la section "Bootloaders et CFWs" de la FAQ qui contient des informations complémentaires sur des détails de fonctionnement de chacun des CFWs. Enfin pour la mise à jour d'un CFW c'est à peut prêt la même chose que pour son installation, parfois un nettoyage des dossiers du CFW est nécessaire mais cela reste assez rare (par contre à faire si vous downgrader la version du CFW) et la plupart du temps un simple écrasement des anciennes données suffit. il est également a rappelé que l'Ultimate-Switch-Hack-Script contient une fonction de préparation d'une SD très poussée vous permettant de personnaliser le contenu de votre SD et facilitant grandement l'installation ou la mise à jour d'éléments sur celle-ci via les différents profiles que vous pouvez créer. Pour les consoles Erista il est aussi préférable d'avoir Incognito d'activé sur la partie dédiée à votre CFW (attention si sur sysnand ne perdez pas votre dump original de PRODINFO), ceci peut être fait via le payload Incognito-RCM (ceci n'est normalement à faire qu'une seule fois tant que la nand ou que le dump de PRODINFO n'est pas restaurée (par exemple si vous recréez une emunand à partir de la sysnand il faudra réappliquer Incognito sur l'emunand)). Sur les consoles Mariko il est possible d'activer une option dans le fichier "exosphere.ini" permettant de faire plus ou moins la même chose qu'Incognito à la volé (donc modification activée au lancement du CFW et non permanente), ceci ne sera pas détaillé ici mais vous pouvez regarder le template de ce fichier dans le dossier "atmosphere\config_templates" pour en savoir plus (fonctionne aussi sur Erista mais la fonction étant peu approuvée par le développeur d'Atmosphere je la recommande moins). Enfin vous pouvez aussi vous protéger grâce à 90DNS, des infos sur cela se trouve dans la FAQ ou dans le tuto d'installation d'un CFW; le service dns_mitm d'Atmosphere peut aussi être utilisé (normalement activé par défaut, voir le fichier "atmosphere\config_templates\system_settings.ini" les valeurs "enable_dns_mitm" et "add_defaults_to_dns_hosts" pour savoir comment le configurer dans le fichier "atmosphere\config\system_settings.ini" le cas échéant) pour ajouter une protection supplémentaire via le fichier "atmosphere\hosts\default.txt" contenant les lignes suivantes:
# 90dns redirection 127.0.0.1 *nintendo* # Nintendo telemetry servers 127.0.0.1 receive-%.dg.srv.nintendo.net receive-%.er.srv.nintendo.net # 90dns server for passing wifi connection test, replace the IP with your own if you host the server by yourself 95.216.149.205 conntest.nintendowifi.net ctest.cdn.nintendo.net
Enfin, pour ceux souhaitant passer de SXOS à Atmosphere il suffit de regarder ce tuto si une emunand est utilisée sous SXOS et ensuite il suffit de suivre le tuto d'installation d'un CFW indiqué au début de cette section. Et pour ceux utilisant un dongle SX Pro ou une puce démarrant SXOS directement (hors SX Core) il faut utiliser les fichiers du SX Gear (recommandé) ou encore utiliser ce genre d'outil qui permet de convertir un payload en fichier "boot.dat". Note sur les modules: Tout comme les thèmes, certains modules peuvent poser problème lors de la mise à jour du CFW ou du firmware, si la console a un comportement anormal lors d'une mise à jour de l'un ou l'autre de ces éléments il faut commencer par regarder cela, sur Atmosphere le "title id" du module posant problème sera affiché durant l'erreur, vous pourrez alors tenter de le rechercher dans le dossier "atmosphere\contents" et si vous le trouvez, soit mettre à jour le module ou soit le supprimer (sur SXOS le dossier est "sxos/titles").

Mise à jour du firmware

On connait surtout ChoiDuJour-NX car il est présent sur la scène depuis longtemps mais l'utilisation de celui-ci ne doit pas être faite sur les consoles Mariko, sysnand surtout ou emunand aussi car cela brick BOOT0 et pourrait empêcher le démarrage d'Atmosphere entre autres. Et puis de toutes façons ce homebrew ne fonctionne plus sur les dernières versions d'Atmosphere donc son utilisation doit être de plus en plus à bannir. Du coup il est préférable d'utiliser Daybreak qui lui est adapté au fonctionnement des consoles Mariko et Erista mais ce homebrew nécessitera de passer par Atmosphere et surtout il nécessite une configuration des fichiers du firmware qui n'est pas toujours faite par les sites de distribution de ceux-ci. Pour le faire vous avez ceci ou encore cela qui permet d'automatiser les choses (notez que votre fichier de clés à jour sera requis). Vous pourrez également trouver une fonction complète de téléchargement, conversion du firmware et préparation sur la SD dans l'Ultimate-Switch-Hack-Script. Vous pourrez trouver les firmwares à télécharger via cette page (firmwares compatibles avec Daybreak). Pour l'utilisation du homebrew elle est plutôt simple et détaillée dans ce tuto. Note importante: Le firmware qui sera mis à jour sera celui de la nand sur laquelle est lancée le CFW (sysnand ou emunand). Note: L'utilisation de ChoiDuJour-NX se fait à peu prêt de la même façon que Daybreak, il faudra juste décocher une case durant l'installation si l'auto-RCM n'est pas souhaité. Note à propos des thèmes: Si vous utilisez un thème il se peut que la mise à jour du firmware pose problème avec celui-ci, provoquant une erreur au démarrage du CFW. Si tel est le cas il faudra supprimer le thème pour pouvoir redémarrer le CFW. Note sur les modules: Tout comme les thèmes, certains modules peuvent poser problème lors de la mise à jour du CFW ou du firmware, si la console a un comportement anormal lors d'une mise à jour de l'un ou l'autre de ces éléments il faut commencer par regarder cela, sur Atmosphere le "title id" du module posant problème sera affiché durant l'erreur, vous pourrez alors tenter de le rechercher dans le dossier "atmosphere\contents" et si vous le trouvez, soit mettre à jour le module ou soit le supprimer (sur SXOS le dossier est "sxos/titles").

Conclusion

Voilà, normalement vous avez à peu près se qu'il faut pour vous lancer sans trop de risques.