Reparar Black Brick (Full Brick) usando Infectus
En este tutorial se explicarán los pasos para reparar un
Black Brick (o
Full Brick) de una Wii usando el modchip
Infectus 2 como programador de
NAND.
NOTA: Hay multitud de programadores de
NAND igualmente válidos para esta tarea y con cualquiera de ellos los pasos serán similares a los presentados aquí, aunque obviamente ni el conexionado ni el software de PC utilizado serán los aquí expuestos.
¡¡ AVISO !!El método detallado en este tutorial sólo se recomienda a consolas con
Black Brick (
Full Brick).
Si no tienes este tipo de brick hay métodos más sencillos y efectivos para recuperar tu consola.
1.- ¿¿Qué tipo de Brick tengo??Para saber que tipo de brick tiene una Wii se pueden seguir los
diagramas de flujo de SaveMii (en inglés) o leer la amplia información del
HILO OFICIAL: Tengo un semibrick, ¿Que puedo hacer? (en español).
2.- Ahora que estoy seguro de que tengo un Black Brick ¿¿Qué puedo hacer??Depende, veamos los casos posibles:
- BootMii instalado como boot2
¡¡Si tienes BootMii instalado como boot2 estás de suerte porque hay muchas formas de recuperar tu consola!!
NOTA: Si no sabes entrar en BootMii es posible que no tengas los archivos adecuados en tu SD, puedes encontrar información en el hilo de HackMii Installer v0.6 o en la web oficial de BootMii.
- Si tienes una copia de la NAND la solución más fácil es restaurarla desde BootMii.
- Si no tienes una copia de la NAND y puedes entrar al HomeBrew Channel tendrás que usar alguna aplicación que te ayude a deshacer lo que hiciste para conseguir un brick (por ejemplo Any Title Deleter o Wad Manager).
- Si no tienes copia de tu NAND y no puedes entrar en HomeBrew Channel tendrás que usar alguna aplicación que corra sobre MINI para arreglar tu brick (por ejemplo NAND formatter de Comex o cboot2 + wad manager) (en el punto 6 del tutorial se explica cómo usar NAND formatter de Comex).
- BootMii NO instalado como boot2
- Si tienes una copia de la NAND usaremos el programador Infectus 2 para programarla en la NAND de la Wii.
En el punto 4 veremos como preparar e instalar Infectus 2 y en el punto 5a veremos como programar la NAND. - Si no tienes copia de la NAND:
- Si tienes el boot1 vulnerable (se explica cómo reconocer si el boot1 es vulnerable en el punto 3).
Usaremos el método de inyectar el boot2 de otra consola.
En el punto 4 veremos como preparar e instalar Infectus 2 y en el punto 5b veremos como inyectar los 8 primeros bloques de la NAND. - Si no tienes el boot1 vulnerable pero tienes las keys de tu consola.
La solución pasa por conseguir la NAND de otra consola, cambiarle las keys por la de tu consola con el programa BetWiin y luego proceder a programarla. En el punto 4 veremos como preparar e instalar Infectus 2 y en el punto 5a veremos como programar la NAND. - Si no tienes el boot1 vulnerable y no tienes las keys de tu consola.
Lo siento mucho, pero es el único caso que no es recuperable a día de hoy... Tus únicas opciones son comprar una placa base nueva (se puede encontrar por unos 75 euros en Internet) o mandarla al SAT de Nintendo para que te reemplacen la consola (te saldrá gratis si estás en garantía y si la garantía se acabó te cobrarán en torno a los 80 euros, si no me equivoco).
3.- ¿¿Es mi boot1 vulnerable??Las consolas fabricadas antes de mediados de 2008 tienen el
boot1 vulnerable, por lo tanto si tu consola fue comprada en el 2009 o 2010 lo más probable es que no lo tenga.
NOTA: Si el
BootMii te daba la opción de instalarse como
boot2 (aunque si estás en este paso quiere decir que no lo hiciste) significa que tienes el
boot1 vulnerable.
Como la fecha anterior es aproximada, se puede verificar físicamente si el
boot1 es vulnerable. Para ello debemos desmontar la consola y mirar el "date code" del chip
Hollywood (son los 4 primeros dígitos de la última línea escrita en el chip). El "date code" tiene que ser menor que 0830.
El motivo de que el método sólo funcione en consolas con el
boot1 vulnerable es por la forma en que funciona la cadena de confianza del arranque de la Wii. Si tenéis curiosidad podéis encontrar más información en cualquier de estos 2 enlaces:
4.- Preparación e instalación de Infectus 2NOTA: Como se ha comentado al princio hay muchas formas de programar la
NAND sin usar
Infectus 2. Hay gente que usa otros programadores e incluso hay gente que saca la
NAND completa y la programa a parte, pero nosotros en este tutorial nos centraremos en el
Infectus 2.
Antes de instalar el
Infectus 2 en la consola Wii tenemos que programarlo para que funcione como un programador de
NAND. Para ello descargamos el software
Infectus Programmer (en el momento de escribir este tutorial va por la versión
3.9.9.0) de la
sección descargas de la web oficial.
Cuando conectamos la primera vez el
Infectus 2 al USB del ordenador nos pedirá el driver USB, y tendremos que elegir el driver que viene junto con el software que hemos descargado.
Una vez que tengamos el driver correctamente instalado arrancamos el programa y en
Actel firmware elegimos la opción
NAND Programmer y pulsamos
Program, como se ve en la imagen siguiente:
NOTA: Si el driver no está correctamente instalado, o el
Infectus 2 no está correctamente conectado por USB, el programa no nos dejará pulsar
Actel firmware (la opción aparecerá deshabilitada).
Tras unos minutos (hay una barra de progreso en la parte de abajo de la aplicación) ya tendremos nuestro
Infectus 2 configurado como un programador de
NAND (que es lo que necesitamos en este caso).
La instalación del
Infectus 2 para leer y escribir en la
NAND de la Wii se hace según el siguiente esquema oficial:
Hay que tener algunas consideraciones al soldar el
Infectus 2:
- Tanto la alimentación como la masa deben ser muy estables.
(por lo que se recomienda usar un cable grueso, en mi caso he usado 2 cables AWG 30) - Además del punto marcado como GND también hay que conectar a masa el punto que está a la izquierda de RST aunque no aparezca en el esquema.
(sin este punto conectado a masa obtuve lecturas/escrituras erroneas) - Es recomendable que los cables que conectan el Infectus 2 con la NAND sean de tamaños parecidos.
A modo de ejemplo, mi instalación se puede ver en la siguiente fotografía:
NOTA: Para la gente que no se sienta cómoda soldando en un sitio tan pequeño DeadlyFoez ofrece una solución sin soldaduras en
este post de GBATemp, aunque obviamente es menos fiable.
5a.- Programando la NAND completaSi tenemos una copia de la
NAND de la Wii antes del brick (o hemos convertido la
NAND de otra consola en una
NAND válida para la nuestra usando el programa
BetWiin para cambiar las KEYS) tendremos que programar la
NAND completa.
A la hora de elegir el software del PC para leer/escribir en la
NAND de la Wii a través de
Infectus 2 tenemos 2 posibilidades:
- Infectus NAND Flasher de NDT
- XavProg de gbonx
El tutorial se centrará en el
Infectus NAND Flasher 1.03 por ser el que yo he usado. Lo podéis descargar de
aquí. El motivo principal de mi recomendación es porque es compatible con el driver USB que ya hemos instalado en un paso anterior. Toda la información sobre este software está en
este post.
NOTA IMPORTANTE: Para que el
Infectus NAND Flasher funcione necesitamos instalar previamente
libusb.
Si preferís usar el
XavProg 1.0.0.7 (mucha gente lo recomienda) podeís descargarlo
aquí. Casi toda la información está en
este post. El principal inconveniente que le veo es que hay que cambiar el driver USB como explican
aquí. Además a mi no me funcionó muy bien...
De todas formas, sea cual sea el software que usemos, el proceso es muy parecido (pongo en detalle cómo se haría con el
Infectus NAND Flasher 1.03 que es el que yo usé):
- Encendemos la Wii (luz verde)
(NOTA: Se recomienda encarecidamente tener puenteado D0 a MASA durante el arranque para que la Wii "se cuelgue" y no haga lecturas/escrituras en la NAND que nos puedan estropear el proceso) - Conectamos el USB al ordenador.
- Ejectuamos el software Infectus NAND Flasher 1.03
- Elegimos el driver correspondiente de la lista desplegable.
- Pulsamos Connect.
- Si todo es correcto aparecerá el nombre del chip de la NAND en el desplegable Sel. Flash.
(si no apareciera habría que buscar posibles fallos en las soldaduras o reprogramar el Infectus 2) - En el desplegable Sel. Operation elegimos la opción DUMP para guardarnos una copia de la NAND de la Wii brickeada, el programa nos preguntará el nombre del fichero que queremos darle a la NAND extraída.
- Nos aseguramos de que las lecturas de la NAND son correctas extrayéndola varias veces y comparándola con un comparador hexadecimal (el proceso de extracción de la NAND completa es lento así que podemos comparar sólo partes de la misma para tardar menos. Aunque es recomendable extraer por lo menos una NAND completa porque nunca se sabe si la vamos a necesitar.)
- Una vez que estamos seguros que las lecturas son correctas procedemos a programar la NAND de la Wii usando el archivo con la NAND correcta.
- En el desplegable Sel. Operation elegimos la opción WRITE y le indicamos al programa la ruta del archivo que contiene la NAND que queremos escribir.
La Wii debería funcionar cuando el programa finalice la escritura. Es recomendable conenectarla a la TV para probar el funcionamiento de la consola antes de desoldar el
Infectus 2 por si el proceso no hubiera funcionado y tuviéramos que hacer alguna otra lectura o escritura de la
NAND.
NOTA: Tanto el módulo de Wifi como el de Bluetooth tienen que estar conectados a la consola al probarla, porque podría no arrancar porque le falte alguno de los citados módulos y nos llevaría a confusión haciéndonos creer que el problema sigue estando en la
NAND.
5b.- Inyectando BootMii como boot2La idea es inyectar en la consola
brickeada el
boot2 de una consola "sana" que tenga el
BootMii instalado. Lo haremos escribiendo en la NAND de la consola brickeada usando el modchip
Infectus 2 como programador de
NAND.
IMPORTANTE: La Wii "sana" tiene que tener la misma versión de boot1 y un boot2 igual o superior a la Wii brickeada.Antes de comenzar a hablar sobre cómo programar la
NAND es interesante conocer su estructura. Pego un fragmento de la
wiki de WiiBrew en el que se habla de su estructura (gracias Waninkoko por la pista):
The NAND flash device is divided into 4096 blocks of 8 clusters. Each cluster is 8 pages. Each page is 2048 bytes of data and 64 bytes of "spare data" (used for error-correction (ECC) data and HMAC signatures on individual clusters).
- Block 0 (pages 0-0x3F): boot1
- boot1 is the second-stage bootloader; it is decrypted by boot0, which resides on a read-only mask rom inside the Starlet coprocessor. Its primary function is to load and decrypt boot2.
- Block 0 is guaranteed by the manufacturer to be valid, so there is no bad block map necessary.
- Blocks 1-7 (Pages 0x40 - 0x1ff) : boot2 (two copies and blockmaps)
- boot2 is the third-stage bootloader; it is stored in a modified WAD format, including a ticket that is encrypted with the common key and signed.
Por lo tanto, inyectaremos en la
NAND de la Wii brickeada los 8 primeros bloques (el
boot1 y el
boot2 con
BootMii) de la
NAND de la Wii "sana".
Con el programador
Infectus NAND Flasher 1.03 se haría de la siguiente manera:
- Encendemos la Wii (luz verde)
(NOTA: Se recomienda encarecidamente tener puenteado D0 a MASA durante el arranque para que la Wii no arranque y no haga lecturas/escrituras en la NAND que nos puedan estropear el proceso.) - Conectamos el USB al ordenador.
- Ejectuamos el software Infectus NAND Flasher 1.03
- Elegimos el driver correspondiente de la lista desplegable.
- Pulsamos Connect.
- Si todo es correcto aparecerá el nombre del chip de la NAND en pantalla.
(si no apareciera habría que buscar posibles fallos en las soldaduras o reprogramar el Infectus) - Elegimos la opción DUMP para guardarnos una copia de la NAND de la Wii brickeada.
(es recomendable, aunque es un proceso lento, porque puede sernos util en algún momento) - Comprobamos con un editor hexadecimal que el bloque 0 de la NAND extraida de la Wii brickeada coincide con el bloque 0 de la NAND de la Wii "sana" (hasta el offset 135168 en decimal).
(esto indicaría que tienen la misma versión del boot1 y que por lo tanto podemos inyectar el boot2 sin problemas) - Si todo es correcto hasta aquí escribimos en la NAND de la Wii brickeada los primeros 8 bloques de la NAND de la Wii "sana".
(rango de 0 a 1081344 decimal. Esto escribirá boot1 y boot2 en la NAND)
Arrancar BootMii:Una vez que hayamos sobreescrito los 8 primeros bloques de la
NAND de la Wii brickeada vamos a probar si el procedimiento ha tenido éxito, para ello:
- Introducimos la tarjeta SD con la carpeta bootmii y los archivos de nuestra región.
(sin la carpeta y los archivos correctos no arrancará BootMii aunque esté bien instalado en la NAND) - Conectamos la Wii al televisor.
- Encendemos la Wii.
Si todo ha salido bien deberíamos ver en pantalla el menú de
BootMii. Si no es que hemos hecho mal alguno de los pasos o nuestras soldaduras del
Infectus no son buenas.
NOTA (añadida por
varicela): Si no tenemos SD y hemos conectado el frontal de la Wii, podemos saber si
BootMii está bien instalado como
boot2 porque el led frontal hace la secuencia: enciende, apaga y flashea una vez.
6.- Recuperar el sistema:Una vez que el
BootMii ha arrancado, practicamente podemos considerar la Wii salvada.
Como bien sugiere
varicela lo PRIMERO que hay que hacer es un backup de la
NAND en la SD usando
BootMii, pues de esta forma obtendremos las keys y eso nos da un monton de posibilidades.
Ahora lo que necesitamos es ejecutar algún software desde el
BootMii (que funcione sobre
MINI) que sea capaz de reparar nuestra Wii.
NOTA: De entre las distintas posibilidades yo usé el
NAND formatter de Comex, pero hay gente que prefiere usar
cboot2 + wad manager u otras opciones.
Usando
NAND formatter se perderán todos los datos de la Wii (savegames, miis, canales,...) y nos quedaremos con un sistema mínimo en 3.1 con lo que posteriormente tendremos que usar algún juego que tenga un
firmware upgrade con una versión posterior para que restaure todos los canales perdidos.
erikie ha colgado la versión del
NAND formatter que él uso para recuperar una consola europea en
rapidshare Su paquete, además del formatter, contiene los wads:
- EULA-NUS-v2.wad
- IOS30-64-v1040.wad
- Region Select-NUS-v1.wad
- System Menu-NUS-v258.wad
IMPORTANTE: si la consola fuera de otra región habría que cambiar los wads por los de la región correspondiente.
Con el paquete de erikie se me quedaba la Wii congelada instalando el wad del EULA, después de unas cuantas pruebas conseguí que me funcionara usando su mismo formatter.elf pero con los siguientes wads:
- EULA-NUS-v1.wad
- IOS17-64-v512.wad
- IOS30-64-v1040.wad
- IOS31-64-v1037.wad
- Region Select-NUS-v1.wad
- System Menu-NUS-v258.wad
NOTA: Los wads los podéis descargar desde el PC usando el programa
NUS Downloader.
Advertencia:Derechos de autor:Agradecimientos:NOTA: