Actualizar sin quemar efuses nintendo switch

Contenido

eFuses

eFuse quemado e intacto visto con un microescopio.

Un eFuse, es un fusible destinado a fundirse bajo demanda, generalmente para grabar código físicamente, de tal manera que no puede cambiarse y así evitar manipulaciones.

eFuses en Nintendo Switch

Los eFuses en Nintendo Switch, están destinados a fundirse en cada actualización principal de la consola, de tal manera, que el gestor de arranque lo lee, y es capaz de comprobar la cantidad de fusibles fundidos, y si hay mas fusibles fundidos de lo esperado, hace que la consola entre en modo pánico impidiendo que inicie de forma normal hasta que la cantidad de fusibles fundidos coincida con lo esperado, de lo contrario, fundirá los eFuses necesarios hasta que coincida con los esperados.

Es decir, por cada actualización principal, funde un eFuse, por lo que a mayor versión, espera una cantidad mayor de eFuses fundidos, si una versión inferior encuentra un numero mayor de eFuses fundidos, esta no inicia, impidiendo así que puedas bajar de versión la consola, siendo una protección física anti-downgrade.

Protección contra eFuses

La unica manera de no quemar eFuses es usando un boot personalizado como Hekate, SX OS, ReiNX, o cualquier otro CFW que tenga protección contra eFuses. Siempre que se inicie la consola de forma normal, el boot original quemará los eFuses necesarios, por lo que uno de los requisitos para no quemar eFuses es usar AutoRCM para evitar que se inicie la consola con el boot original por accidente.

Modo RCM y Fusee-Gelee

El modo RCM es una característica de Nvidia Tegra, es un modo de Recuperacion, un "Recovery Mode", en el cual puedes cargar software de forma externa, algo parecido a FastBoot en Android, o DownloadMode en Samsumg, solo que en este modo te libertad para cargar cualquier software firmado.

Fusee-Gelee utiliza una vulnerabilidad del modo RCM que permite cargar cualquier software firmado o no, por lo que desde ahí se puede ejecutar un boot personalizado antes de que la consola cargue el suyo.

  • Para entrar en modo RCM es necesario que se cumplan una de estas condiciones.
    • Que la consola no sea capaz de leer la eMMC (Memoria de la consola)
    • Que la consola no sea capaz de leer la tabla de particiones de la eMMC (Memoria de la consola)
    • Forzando la entrada en modo RCM pulsando una combinacion de botones y haciendo puentes en determinados puntos de la consola. (Jig/Joycon Mod y Vol +)
    • Forzando la entrada en modo RCM mediante software (Solo en 1.0.0)

En modo RCM, la consola esta encendida, pero no da ninguna señal visual, por lo que la consola gastará batería hasta que salga del modo RCM o se agote completamente.

Peligro.png En modo RCM la consola no carga bateria, solo carga completamente apagada, o con un CFW cargado.

AutoRCM

AutoRCM es una solución creada por la comunidad cuyo único objetivo es brickear la consola, de tal manera que no pueda leer la tabla de particiones de la consola, por lo que la consola entraría en modo RCM automaticamente.

Con AutoRCM activado la consola no iniciará sin que cargues mediante RCM un Custom Firmware como Hekate, SX OS o ReiNX, por lo que si no tienes un ordenador, dongle, movil compatible, o cualquier otro dispositivo que te permita cargar un payload, la consola no iniciará.

Fusibles fundidos por versión de la consola

Versión Fusibles fundidos consola Retail (Normal) Fusibles fundidos consola Non-Retail
1.0.0 1 0
2.0.0-2.3.0 2 0
3.0.0 3 1
3.0.1-3.0.2 4 1
4.0.0-4.1.0 5 1
5.0.0-5.1.0 6 1
6.0.0-6.0.1 7 1
6.2 8 1

Actualizar sin quemar Efuses

Peligro.png
  • Con este tutorial, corres riesgo de quemar eFuses, y no poder volver a bajar de versión a la anterior instalada.
  • Antes de seguir con el tutorial, léelo y comprende los pasos que vas a hacer, para así evitar errores.
  • Para dudas referentes a AutoRCM y eFuses, puedes hacerlas en este hilo.


Post it.png Gracias a Raugo por su trabajo de investigación y su tutorial inicial.
Peligro.png Funciona en todos los firmwares de Nintendo Switch de las consolas Pre-Mariko y con los iPatches sin parchear.

Con este tutorial podrás actualizar la consola sin quemar eFuses, y harás una copia de seguridad de la NAND y de Boot0 y Boot1 para así poder volver a bajar de versión en un futuro cuando existan exploits en firmwares bajos que permitan el uso de Warmboot o Coldboot, y así prescindir de Fusee-Gelee.


Requisitos

  • Una Nintendo Switch Pre-Mariko sin los iPatches parcheados en una versión inferior a la ultima (preferiblemente en una versión inferior o igual a 4.1.0), aunque puedes seguir este tutorial en la ultima versión, no tiene sentido. (Es decir, una consola con la que puedas entrar en modo RCM antes)
  • Un JIG fiable o el Mod del joycon derecho para que puedas entrar en modo RCM.
  • Un ordenador/dongle/movil que pueda lanzar payloads.
  • Una microSD de 64GB o mas en la consola.

Material necesario


Paso a paso

Una vez preparado el entorno y que seamos capaz de lanzar payloads, tenemos que seguir estos pasos.

PASO 1: Copia de seguridad de la NAND de la consola

Menú Tools Hekate-IPL CTCer Mod v3.2.
Menú Backup Hekate-IPL CTCer Mod v3.2.

Con este paso, haremos un backup de la NAND, Boot 0 y 1, y de Package1, sin este backup, no podras volver a una versión inferior, por lo que es muy importante.

  • Conectamos la consola a nuestro lanzador de payloads, y lanzamos el payload Hekate-IPL CTCer Mod.
  • Una vez en el menu de Hekate, nos movemos con Vol + y Vol - y pulsamos el boton de Power para confirmar.
    • Vamos a la menú Tools...
      • Vamos al menú Backup...
        • Pulsamos en Dump eMMC BOOT0/1
        • Pulsamos en Dump eMMC RAW GPP (Opcionalmente podemos hacer solo Dump eMMC SYS)
  • Una vez terminado, reinciamos la Switch y entramos al menu de forma normal.

PASO 2: Actualizar la consola y evitar quemar eFuses

Peligro.png Este paso es critico, si lo haces mal, quemaras eFuses. Sigue este paso al pie de la letra
Peligro.png Al actualizar, AutoRCM se pierde, por lo que es obligatorio el uso de JIG o el Mod del joycon.
Peligro.png Este paso es recurrente, tienes que hacerlo cada vez que actualices la consola.

Una vez hecho el backup de la NAND, tenemos que actualizar la consola de forma normal y corriente.

  • Preparamos nuestro entorno para entrar en modo RCM. (JIG o Joycon mod, NO VALE AUTORCM)
  • Vamos a ajustes de la consola.
  • Pulsamos en la pestaña consola y luego en Actualización de la consola.
  • Seguimos los pasos en pantalla y actualizamos.
  • Cuando aparezca el aviso de que ha terminado y se va a reiniciar la consola, mantenemos pulsado el boton Vol + con el Jig o el Joycon derecho con el Mod para que entre en modo RCM.

Si la consola no hace nada, has completado correctamente este paso, y no se han quemado eFuses, de lo contrario, si la consola inicia, es que no ha entrado en modo RCM y se han quemado los eFuses.

PASO 3: Instalar AutoRCM y comprobar eFuses fundidos

Con este paso vamos a instalar AutoRCM en la consola con el payload Brickmii

  • Conectamos la consola a nuestro lanzador de payloads, y lanzamos el payload Brickmii.
  • Una vez iniciado, nos saldra un mensaje en inglés que dice la cantidad de eFuses quemados:

NUMBER OF BURNT ANTI-DOWNGRADE FUSES: X (raw value: 0x00000XXX)

  • Ahora, pulsamos VOL - para instalar AutoRCM.
  • Ya tenemos AutoRCM Instalado y podemos iniciar el CFW que queramos, a la vez que podemos bajar de versión la consola a la que permita los eFuses.
Peligro.png Cada vez que actualices la consola, hay que volver a instalar AutoRCM, por lo que hay que seguir el paso 2 otra vez.
Post it.png Este artículo fue actualizado el día 1/01/2019 por yggdrassilbcn.