sábado, 9 de julio de 2011

Resucitar un LG Optimus 2X

Son muchas las ocasiones en las que nos ponemos a enredar con nuestros smartphones y nos pasamos de "enredas", o hay un corte de luz en mal momento, o cualquier otro acontecimiento aleatorio extraño...

Es normal que a veces la liemos, es lo que tiene "enredar", pero lo más importante es no perder la calma y descubrir cómo solucionarlo.

En el caso de la gran mayoría de smartphones, hay un punto donde es imposible resucitarlo, y es lo que llamamos un Full Brick, que en español vendría siendo la expresión "te has quedado con un ladrillo/pisapapeles".
El LG Optimus 2X tiene una gran ventaja al respecto, y es que, a no ser que haya algún daño hardware por alguna caída o defecto de fabricación, si el fallo lo hemos producido intentando rootearlo o hacerle cualquier "perrería", es posible despertarlo en prácticamente cualquier situación de Brick.

En primer lugar tenemos que saber que el LG Optimus 2X, al tener un "corazón" NVIDIA, cuenta con un modo de restauración adicional con la que la gran NVIDIA dota a sus dispositivos. Este modo se denomina modo APX y nos permitirá acceder y escribir directamente en la ROM del dispositivo, a muy bajo nivel.

Empezamos:

Requisitos
- Ordenador con Windows. Si nuestro Windows es Vista o 7, para utilizar NVflash tendremos que deshabilitar el control de cuentas de Windows (UAC), ya que si no no podremos flashear a nivel bajo.
Para desactivar el UAC, hay que ir a Panel de control > Cuentas de usuario > Cambiar control de cuentas de usuario > Desplazar el control a la parte inferior (Nunca notificar).
Tras hacer cualquier cambio en el UAC, hay que reiniciar obligatoriamente.

Preparando el software
1. Descargamos NVflash y la ROM original de LG (stock ROM) versión 10b de aquí (o aquí si el anterior falla) y extraemos su contenido. Por ejemplo en C:\nvflash
(Actualización: Podemos encontrar las ROMs más actualizadas en este enlace de XDA. Por ejemplo, aquí están las de Vodafone Spain. Las mejoras introducidas básicamente son que corrige más errores y mejora aspectos de fluidez. También mete las aplicaciones de Vodafone, que bueno, ya sabemos cómo quitarlas)
2. Descargar el driver del recovery de arranque de NVidia (modo APX) de aquí (o aquí) y extraemos su contenido en otro directorio. Por ejemplo en C:\apxdriver

Preparando el teléfono
1. Apagar el teléfono
2. Quitar la batería
3. Para entrar en modo APX hemos de hacer exactamente lo siguiente: Con la batería quitada, mantener pulsados los botones "volumen más" y "volumen menos" y enchufar el cable USB al ordenador. El ordenador debería detectar un nuevo dispositivo, aunque si intenta instalarlo fallará, ya que aún hemos instalado el driver.
4. Abrir el Administrador de Dispositivos de Windows (En Windows Vista y 7: Botón inicio > Botón derecho sobre Equipo > Administrar > Administrador de dispositivos).
5. En la lista del administrador de dispositivos deberíamos ver un elemento con un nombre similar a "APX device" con un símbolo de error (ya que no encuentra driver para hacerlo funcionar).
6. Hacemos clic derecho en él, y le damos a "Actualizar driver/software". Le decimos que queremos escoger uno manualmente y buscamos donde extrajimos anteriormente el driver (C:\apxdriver). Debería aparecer un archivo cuyo nombre es algo como: "NVIDIA USB boot recovery driver for mobile devices".
7. Aceptamos y debería empezar a instalar el driver. Si aparece alguna advertencia o warning debemos seguir adelante.
8. Si todo ha ido correctamente, Windows nos dirá que el driver se ha instalado de forma satisfactoria.

Flasheando la ROM
En este momento tenemos el teléfono en modo APX y con el driver instalado, por lo que podemos seguir adelante:
1. Accedemos a la carpeta donde descomprimimos el NVflash y la ROM (C:\nvflash) y ejecutamos flash.bat.
2. Cuando termine el proceso, desconectamos el teléfono del ordenador, le ponemos la batería y lo arrancamos. Tras unos instantes deberíamos tener el teléfono tal y como llegó la primera vez que lo recibimos.

Referencias:
NVflash stock ROM [MoDaCo]
NVflash Setup instructions [MoDaCo]
- ROMs oficiales (XDA)