Accès nvFlash sur l’Asus Transformer Prime TF700T

Avertissement : cette bidouille a le pouvoir de transformer votre tablette en brique technologique complètement inerte sans moyen de récupération. Ce tutoriel n’est pas destiné aux apprentis sorciers sans le sou et je ne pourrais pas être tenu pour responsable des conneries qui pourraient arriver à votre téléphone.

Description

Ce billet détaille la procédure permettant d’avoir un accès nvFlash à la tablette Asus Transformer Prime TF700T. La procédure a été testée avec succès sur ma tablette en Jelly Bean, plus précisément avec le firmware 10.6.1.14.10, le dernier mis à disposition à l’heure où j’écris. Jusqu’à récemment, il n’était possible de bénéficier de cet accès qu’avec la tablette en version ICS (Ice Cream Sandwich).

L’accès nvFlash, est un accès très bas-level, dont le principal intérêt est de pouvoir récupérer sa tablette quelque soit son état, notamment et surtout suite à un flash moisi. En d’autre terme, on bénéficie ainsi d’une tablette « brick-safe ».

Vu qu’ASUS permet de déverrouiller suffisamment le bootloader pour installer des roms customs, mais pas suffisamment pour éviter de la transformer en brique, l’accès nvFlash est donc plutôt recommandé, bien que la procédure soit risqué.

Pré-requis

Vous avez besoin :

  • des pilotes Windows. Ceux-ci sont signés afin de pouvoir les utiliser simplement sous Windows 8. Il s’agit des pilotes fournit par Google, auxquels j’ai ajouté les identifications de l’ASUS Transformer Prime TF700T et du Nexus 4, que j’ai signé avec mon propre certificat. Etant donné la nature de mon certificat, ces pilotes expireront en 2015.
  • de nvFlash (à télécharger sur le site de AndroidRoot)
  • un recovery spécialement modifié (à télécharger sur le site de AndroidRoot)
  • une tablette déverouillée

Déverrouiller la tablette

Installez et exécutez l’application Unlock_v8. Elle n’est officiellement compatible qu’avec Jelly Bean. Pour Ice Cream Sandwich, il vous faut la version v7, disponible sur les serveurs d’Asus.

Obtention de l’accès APX

La procédure n’est à faire que la première fois. Elle permet de construire un blob permettant de déverrouiller les commandes en mode APX. Ce blob est nécessaire à chaque fois qu’on désire accéder au mode APX.

  1. Sauvegardez tout ce dont vous avez besoin sur la tablette, y compris la mémoire interne ; on n’est jamais trop prudent
  2. Branchez la tablette au PC si ce n’est déjà fait
  3. Démarrez la tablette en bootloader.
    • A partir de la tablette éteinte, appuyez sur Power, puis sur Volume-Down jusqu’à voir trois icônes au milieu : RCK (pour accéder au recovery), Android (pour démarrer Android), et la dernière icône pour une réinitialisation de la tablette
    • A partir de la tablette allumée, envoyez la commande adb reboot-bootloader , c’est le plus simple
  4. Flashez le recovery spécial: fastboot flash boot flatline_tf700.img . Si le transfert dure plus de 5 min, vérifier les points suivants :
    1. la tablette est bien reconnue sous Windows. Si ce n’est pas le cas, le câble USB est peut-être mal enfichée, ou il faut tester avec une autre prise USB, ou bien tentez de passer dans le bootloader avec la commande adb.
    2. sinon tentez de renommer le fichier en tf700.img  (sans underscore) et réessayez
  5. Redémarrez la tablette complètement dans le bootloader (c’est à dire, n’accédez pas directement au recovery // normalement (avec Volume-Up pour sélectionnez l’item du milieu, puis Volume-Down pour valider) , sous Android, puis repassez dans le bootloader
  6. Accédez au recovery en validant l’item RCK
  7. Sélectionnez dans les menus : Advanced > Wheelie
  8. Acceptez l’avertissement, puis sélectionnez l’étape 1 : « Step 1: Flash AndroidRoot BL »
  9. La tablette devrait s’éteindre. Allumez-la normalement sous Android, puis repassez dans le recovery (via le bootloader ou bien avec la comande @@adb reboot recovery@@)
  10. Dans le recovery, sélectionnez Advanced > Wheelie
  11. Acceptez à nouveau l’avertissement, puis sélectionnez l’étape 2 : « Step 2: Generate wheelie blobs ». L’opération va prendre un certain temps…
  12. Une fois terminez, récupérez les blobs avec la commande indiqué dans la console. Gardez les au moins en double exemplaire, ils sont indispensable pour accéder au mode APX, et ce dernier est le seul moyen permettant de récupérer sa tablette sans l’envoyer en SAV.
  13. Vérifiez que vous avez bien accès au mode APX en passant à la section suivante

Accès au mode APX

Le mode APX n’est accessible qu’à partir de la tablette à l’état éteint. La combinaison de touche est la suivante : Power suivit de Volume-Up.
Si la combinaison a bien été réalisée, l’écran de la tablette devrait s’éteindre, et le PC devrait reconnaître un nouveau périphérique intitulé APX.

Le déverrouillage des commandes APX se fait à ce moment là en tapant la commande suivante : wheelie --blob blob.bin  où blob.bin  correspond à l’un des fichiers récupérés avec le recovery modifié. Si le blob est reconnu et accepté par la tablette, wheelie  devrait afficher l’id de la tablette et l’écran devrait afficher le bootloader.

Si c’est la première fois que vous accédez au mode APX, il est vivement conseillé de sauvegarder également certaines partitions :

  • une image utile dans la récupération de sa tablette : nvflash -r --rawdeviceread 0 2944 bricksafe.img
  • la configuration d’usine avec la commande nvflash -r --read 14 14_factory-config.img
  • le token de déverrouillage du bootloader nvflash -r --read 7 07_unlock-token.img
  • d’autres partitions peuvent être sauvegardées avec le paramètre read, en spécifiant le numéro de la partition. La liste des partitions est décrite ci-dessous.

On quitte le mode APX avec la commande nvflash -r --go .

Table de partitions

La tablette TF700T contient au moins 18 partitions :

  • Partition 02 : BCT, le Boot Configuration Table.
  • Partition 03 : PT, le Partition Table
  • Partition 04 : EBT, le Encrypted Bootloader
  • Partition 05 : SOS, le recovery kernel
  • Partition 06 : LNX, le kernel linux
  • Partition 07 : CER, le bootloader unlock token
  • Partition 08 : IMG
  • Partition 09 : GP1, espace libre pour une table de partition GP1
  • Partition 10 : APP, partition /system, ext4
  • Partition 11 : CAC, partition /cache, ext4
  • Partition 12: MSC, partition /misc, ext4
  • Partition 13 : USP, Upgrade Staging Partition, monté sur /stating et au format ext3. Utilisé durant les mises à jour du firmware
  • Partition 14 : PER, partition /btmac monté durant le boot, au format fat32. Contient des données système spécifique au périphérique
  • Partition 15 : YTU, contient peut-être des données de chiffrage pour les DRM.
  • Partition 16 : CRA, usage inconnu
  • Partition 17 : UDA, /data, ext4.

Ces partitions peuvent être sauvegardées

Le Bootloader

Le bootloader est accessible en appuyant sur Power puis Volume-Down lorsque la tablette est éteinte. Il est également possible d’y accéder depuis Android en tapant adb reboot-recovery .
Une fois dedans, 4 options sont disponibles :

  • la commande fastboot, à condition que la tablette soit déverrouillée
  • le recovery (la première icône RCK)
  • la continuation du démarrage normal sous Android (la seconde icône Android)
  • la réinitialisation de la tablette (wipe data/cache, c’est la dernière icône)

On navigue entre les différentes icônes avec Volume-Down, et on valide l’item sélectionné avec Volume-Up.
A partir d’un certain temps, le bootloader peut sembler être planté ou super long, mais tant qu’on n’a pas bidouillé avec fastboot, c’est juste qu’il est très long.

Voir aussi