Table des matières

Prendre le contrôle d'un Honor 5X

Cette fiche détaille les 4 étapes par lesquelles il faut passez pour en reprendre le contrôle, en partant d'un smartphone acheté en magasin, dans sa configuration d'origine.

  1. Établir un connexion “développeur” entre un ordi et le smartphone
  2. Déverrouiller le bootloader
  3. Installer un recovery custom
  4. Installer une ROM rootée

Heureusement, on n'est pas obligée d'enchaîner les 4 d'un seul coup. Si l'on n'est pas spécialiste du rootage des smarphones sous Android, il est conseillé de faire une pause (de 10 minutes à plusieurs jours) entre chaque étape. Avant l'étape 4, l'utilisation quotidienne de votre smartphone n'est en rien modifiée.

Dans cette fiche, j'ai privilégié la fiabilité des sources. En effet, le but étant de prendre le contrôle de son smartphone, il faut être certaine que la qualité du logiciel que l'on va installer dessus. Si vous télécharger n'importe quoi, juste parce que quelqu'un⋅e, dans un forum, dit que c'est bien, ayez conscience des risques que vous prenez : blocage du smartphone, installation de virus, intrusions, etc. Bien sûr, vous n'allez pas contrôler vous-même le code informatique ni le packaging de ce que vous utilisez. Mais en ne téléchargeant que depuis des sources fiables, où le logiciel est exposé au contrôle public de la communauté open source, vous minimiserez les risques1) et vous rapprocher autant que possible de l'objectif initial.

Établir une connexion ordi-smartphone

Préalable

On aura pris soin d'avoir configuré UDEV afin d'avoir les droits nécessaires sur le smartphone. Ce dernier sera vu comme un périphérique !

Logiciel à installer

S'agissant d'opérations de maintenance évoluée mais non de développement, on n'est pas obligées d'installer sur son ordi la totalité du kit de développement d'Android (SDK). On peut se contenter des deux seuls composants que nous utiliserons :

sudo apt-get install android-tools-adb
sudo apt-get install android-tools-fastboot

Connexion

Prérequis côté Honor 5X

Pour que la connexion puisse se faire, il faut :

  1. activer les Options pour développeurs
    1. dans Paramètres > À propos du téléphone
    2. taper rapidement 7 fois sur le Numéro de build (ça ne s'invente pas !), un message vous signale que vous devenez développeurs
  2. dans Paramètres > Options pour développeurs (qui s'affiche désormais)
    1. activer les Options pour développeur
    2. autoriser le deboggage USB
    3. déverrouiller OEM2)

Établissement

$ adb devices
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
List of devices attached 
IMTP1F2JDYJK02051        offline

où “IMTP1F2JDYJK02051” est le numéro de série de votre Honor 5X. Votre smartphone a du vous demander d'autoriser votre ordi à se connecter… Bien sûr, vous accordez cette autorisation en prenant soin d'autoriser pour toujours (cocher la case) !

Si la “List of devices” affiche quelque chose comme :
List of devices attached 
????????????	no permissions

c'est probablement parce que vous avez négligé le préalable concernant la configuration UDEV, mentionné précédemment.

Une fois l'autorisation accordée, on relance la commande précédente :

$ adb devices
List of devices attached 
IMTP1F2JDYJK02051        device

pour constater que offline s'est mué en device, indiquant que la connexion est établie.

Déverrouiller le bootloader d'origine

Sur le Honor 5X, le déverrouillage du bootloader4) stock est un préalable incontournable à toute autre action visant à contrôler votre smartphone.

Pour y parvenir, il faut :

Prérequis

Pour aller au bout du déverrouillage vous aurez besoin de disposer d'un compte Huawei. Si vous avez eu la sagesse de décliner les propositions hasardeuses d'inscriptions diverses que vous a fait votre Honor 5X5) vous ne disposez probablement pas d'un tel compte. Il va pourtant falloir le créer :-\ Pour limiter les intrusions, faites-le depuis votre ordi et non depuis le smartphone 6).

Collecter

On prendra soin de réunir toutes les informations dans un fichier texte ce qui permettra de vérifier les informations et d'éviter les erreurs de saisie lorsqu'on remplira le formulaire Web. Il faut réunir :

Vous trouverez ces informations comme indiqué ci-après :

Récupérer le code de déverrouillage

La récupération du code de déverrouillage n'est pas une sinécure ! La configuration des sites de Huawei rend l'opération extrême aléatoire, au point de décourager les plus persévérantes. D'où la section consacrée aux précautions techniques qui vise à minimiser le risque d'échec7). Je vous suggère fortement de la suivre à la lettre sans négliger aucun des pré-requis.

Techniquement, la récupération du code de déverrouillage devrait être une opération banale :

  1. créer un compte sur un site web
  2. remplir un formulaire en ligne

On a toutes fait ça des dizaines, voire des centaines de fois… Dans ce cas, il va falloir être extrêmement vigilante sur la manière dont on va s'y prendre.

Précautions techniques

Voici les précautions recommandées8) :

Obtention du code de déverrouillage

  1. lancer le navigateur
  2. valider le formulaire des conditions de déverrouillage (unlock conditions)
  3. à l'affichage du formulaire d'authentification, choisir de créer un compte
  4. remplir le formulaire de création de compte pour une inscription par email
  5. récupérer le code de validation de compte, envoyé par mail à l'adresse fournie
  6. saisir ce code et valider le formulaire de création de compte
  7. ressaisir l'URL du début
  8. re-valider le formulaire des conditions de déverouillage
  9. à l'affichage du formulaire d'authentification, saisir les identifiants (email, mot de passe) créés précédemment ainsi que le Captcha et valider
  10. le formulaire de déverrouillage doit s'afficher10)
  11. remplir le formulaire de déverrouillage et le valider
  12. en réponse, le site affiche le code numérique de déverrouillage du bootloader de votre smartphone (enfin !)
  13. noter ce code par le moyen que vous maîtriser le mieux11).

Munie de ce code, vous allez enfin pouvoir déverrouiller votre Honor 5X :-)

En cas d'échecs répétés, il se peut que vous n'arriviez même plus à afficher la page des conditions de déverrouillage : vous aboutissez systématiquement sur un formulaire d'authentification ou sur une page d'erreur. N'insistez pas ! Revenez demain ou, mieux, après-demain et recommencez à l'étape 8, après vous être assurée que vous remplissez bien les prérequis techniques.

"Alternatives"

Malgré sa simplicité théorique, on constate que la récupération du code s'avère, en pratique, particulièrement délicate, voire aléatoire. Cette difficulté explique le fleurissement de “solutions” dites alternatives à la démarche présentée ici12).

Toutes ces alternatives ont en commun de vous proposer de faire un saut dans l'inconnu. Qu'il s'agisse d'installer un programme incontrôlable sur votre ordi, de lui donner un accès incontrôlé à votre smartphone, de l'autoriser à communiquer avec un serveur incontrôlable, de transmettre vos codes à un prestataire ou un internaute inconnu, à chaque fois, vous prenez un risque incalculable13).

Je ne détaille aucune de ces “alternatives” ne souhaitant pas vous inciter à y avoir recours. Si vous choisissez d'en passez par là, au moins le ferez-vous en connaissance de cause.

Sources :

Déverrouiller l'appareil

Pour mémoire, il est indispensable que Paramètres > Options développeurs > deverouillage OEM soit activé. Si vous aviez basculé votre Honor 5X en anglais-US, vous pouvez revenir à votre langue préférée ;)

  1. vérifier la charge de votre appareil (15% mais pas moins)
  2. s'il y a un câble USB, l'enlever
  3. redémarrer l'appareil
  4. attendre qu'Android ait fini de se charger
  5. comme vu précédemment, ouvrir un terminal sur l'ordi
  6. relier le Honor 5X à l'ordi par le cable USB

Partant de là, vous allez concrètement déverrouiller le bootloader en tapant les commandes suivantes :

  1. adb devices
  2. adb reboot bootloader
  3. fastboot oem unlock <le_code_de_deverouillage>

pour les raisons suivantes :

  1. vise à s'assurer que la connexion ordi/smarphone fonctionne
  2. place le smartphone en position d'écoute des commandes “fastboot” envoyées par l'ordi; votre smartphone redémarre et affiche le robot Android
  3. déverouille le bootloader ; cela provoquera le redémarrage du smartphone ainsi que la perte de tous les réglages et de toutes les données

Concrètement, voilà ce qui devrait apparaître dans la fenêtre du terminal, sur votre ordi :

$ adb devices
List of devices attached 
IMTP1F2JDYJK02051        device

$ adb reboot bootloader
$ fastboot oem unlock 6816658007779137
...
(bootloader)  Unlock success , the device will reboot and factory reset 
OKAY [  0.015s]
finished. total time: 0.015s
$ 

Bien sûr, les codes alphanumériques14) seront ceux qui correspondent à votre smartphone.

Comme le montre la trace de déverrouillage, l'opération doit être instantanée. Si tel n'est pas le cas c'est le signe d'un dysfonctionnement15).

Installer un custom recovery

Préparation

Installer une ROM officielle récente

Cette opération n'est pas indispensable à l'installation du custom recovery. Toutefois, elle sera nécessaire pour s'engager dans l'étape suivante. Ce type de mise à jour effaçant le recovery existant, il est impératif de la faire avant d'installer le custom recovery, sinon il faudra réinstaller le custom recovery.

L'installation est décrite sur la page consacrée à la mise à jour du Honor 5X. Comme indiqué dans cette page, j'ai choisi d'installer la ROM KIW-L21 B330 disponible sur les serveurs de Huawei.

Se procurer un custom recovery

Le recovery custom est un mini-système de dépannage que l'on installe sur le smartphone. Il existe plusieurs systèmes et chaque système est disponible en plusieurs versions.

Concernant le système, mon choix s'est porté sur TWRP car c'est un projet open source, il existe une version officielle pour le Honor 5X, TWRP jouit d'une excellente réputation et le développement est très actif.

Procédure (depuis votre ordi) :

  1. pointer votre navigateur web sur le site officiel de TWRP
  2. dans le champs de recherche, taper “honor” (la page se met à jour dynamiquement)
  3. suivre le lien Huawei Honor 5X (kiwi)
  4. suivre le lien vers la page de téléchargement consacrée au Honor 5X (plusieurs versions sont proposées)
  5. suivre le lien sur la version la plus récente
  6. cliquer sur le lien de téléchargement et enregistrer le fichier
  7. cliquer également sur le lien (un peu avant dans la page) “md5 for …” et enregistrer le fichier
Le fichier .md5 vous permet de vérifier l'intégrité du fichier .img que vous implanterez sur votre smartphone. Cette vérification ne doit jamais être négligée et vous devez toujours vous assurer que le fichier .md5 provient d'une source sûre16) !

Implantation

Source : TWRP for Huawei Honor 5X (TWRP (en)

Le fichier .img va maintenant pouvoir être implanté sur le Honor 5X. Il remplacera le recovery d'origine et vous permettra ensuite d'installer la ROM de votre choix. L'implantation se fait nécessairement en utilisant la connexion ordi-smartphone17) vue précédemment.

La procédure d'implantation est la suivante :

  1. allumer le Honor 5X comme pour une utilisation ordinaire
  2. le relier à l'ordi par le câble USB
  3. établir la connexion, puis grâce à cette connexion (donc, depuis l'ordi)
    1. redémarrer le smarphone en mode spécial (fastboot)
    2. implanter le fichier .img du nouveau recovery
    3. redémarrer le smartphone en mode ordinaire

Les commandes à passer (dans un terminal) à partir de l'étape 3 seront :

adb devices
adb reboot bootloader
fastboot flash recovery mon_recovery.img
fastboot reboot

où “mon_recovery.img” sera remplacé par le nom du fichier .img correspondant au recovery que vous aurez téléchargé. N'hésitez pas à renommer le fichier avant de taper la commande, par exemple en “twrp.img”.

Concrètement, voilà ce qui devrait apparaître dans la fenêtre du terminal, sur votre ordi :

$ adb devices
List of devices attached 
IMTP1F2JDYJK02051        device

$ adb reboot bootloader
$ fastboot flash recovery twrp.img
target reported max download size of 266338304 bytes
sending 'recovery' (45202 KB)...
OKAY [  1.419s]
writing 'recovery'...
OKAY [  0.645s]
finished. total time: 2.064s
$ fastboot reboot
rebooting...

finished. total time: 0.001s
$

On note que :

Vérification

Le smartphone ayant été redémarré en mode ordinaire, il faut l'arrêter pour pouvoir le démarrer en mode recovery :

  1. arrêter le smartphone (attendre de sentir la vibration d'arrêt)
  2. débrancher le câble USB du smartphone (impératif18) si ce n'est pas déjà le cas)
  3. appuyer sur Vol+ puis, sans le relâcher, sur Power (marche-arrêt)
  4. maintenir les deux boutons enfoncés jusqu'au moment où vous ressentez la vibration de démarrage
  5. si l'implantation a réussi, l'écran d'accueil de votre recovery s'affiche (dans mon cas TWRP)
  6. redémarrer le smartphone en mode ordinaire en suivant les indication de votre nouveau recovery (dans le cas de TWRP : Reboot > System)

Installer une ROM rootée

Avant de commencer cette étape, assurez-vous que votre Honor 5X est déjà équipé d'Android 6.0 “Marshmallow”. C'est le cas si vous avez suivi les indications précédentes concernant l'installation de TWRP (préparation). Si tel n'est pas le cas, effectuer une mise à jour vers une ROM officielle Marshmallow puis réinstaller TWRP comme indiqué précédemment.

On va enfin pouvoir remplacer le système pré-installé sur le smartphone19) par un système respectueux des utilisatrices/teurs. J'ai choisi d'installer la ROM Cyanogenmod20) car c'est un projet open source, les fonctionnalités proposées me conviennent, le Honor 5X est officiellement maintenu21).

Le projet CyanogenMod ayant été arrêté, j'ai basculé à LineageOS qui en a pris la suite et dans lequel le Honor 5x est toujours officiellement maintenu. Je n'ai pas vérifié si d'autres ROM Custom étaient adaptée au Honor 5x.

Se procurer la ROM

In fine, le fichier contenant la nouvelle ROM devra être transféré sur une carte SD insérée22) dans le Honor 5X. On peut donc télécharger ce fichier depuis le smartphone connecté à internet ou depuis l'ordi. Dans les deux cas, la carte SD doit disposer d'un espace libre conséquent (~ 700Mo auxquels vous ajouterez la taille de votre système actuel si vous souhaitez en faire une sauvegarde). Pour des tas de raisons, je préfère passer par l'ordi et vous suggère de faire de même.

Procédure :

  1. pointer le navigateur sur la page du projet CyanogenMod dédiée au Honor 5X
  2. suivre le lien “Release channel”
  3. télécharger la version la plus récente disponible ; le lien ne doit pas contenir le mot “recovery”23)

Compléments

CyanogentMod ne contient aucune application Google. Et oui, c'est possible ! Si on souhaite disposer ne serait-ce que de l'app Google Play Store24), il faut pré-installer un ensemble minimum d'applications Google. D'autre part, le système que l'on va installer étant rooté (déverrouillé) il est recommandé d'installer un utilitaire facilitant la gestions de droits sur un tel système 25).

Open GApps

On va donc se procurer une version open source des applications Google. Le site Open GApps permet de télécharger le cocktail d'applications que l'on souhaite pré-installer sur son Honor 5X. Le cocktail “pico” contient le minimum vital. Vous pourrez toujours compléter ultérieurement, via Google Play Store.

Procédure :

  1. pointer le navigateur sur la page de téléchargement du projet Open GApps
  2. selectionner ARM64 + Android 6.0 + nano (ou le cocktail qui vous convient)
  3. télécharger le fichier zip correspondant

SuperSU

SuperSu permet de choisir quelle application a accès aux droits étendus ouverts par le déverrouillage du système. Comme pour les autres téléchargements, le plus sûr est de télécharger à la source, au lieu de récupérer un fichier “gentiment” proposé par un site douteux ou par une internaute inconnue26).

Procédure :

  1. pointer son navigateur sur la page de téléchargement officielle de SuperSU
  2. télécharger le fichier zip proposé (bien qu'il soit nommé UPDATE…, ce n'est pas un fichier de mise à jour)

Installer le nouveau système

Copier les zip sur la carte SD

Les fichiers contenant les morceaux de notre futur système doivent être transférés sur la carte mémoire. Il doivent être placés à la racine du système de fichiers de la carte. Ne pas hésiter à renommer les fichiers pour leur donner des noms courts et parlants.

Pour réaliser ce transfert, chacune utilisera la technique de son choix. Je préfère passer par la connexion ordi-smartphone puisqu'elle fonctionne :

$ adb push cm13.zip /storage/sdcard1/
1618 KB/s (511379618 bytes in 308.529s)
$ adb push gapps.zip /storage/sdcard1/
1635 KB/s (140399286 bytes in 83.855s)
$ adb push SuperSU.zip /storage/sdcard1/
1302 KB/s (4973493 bytes in 3.727s)
$

Les temps indiqués montrent que les deux premiers transferts sont loin d'être instantanés. Donc, pas de panique…

Flasher les zips récoltés

Source : How to Install CyanogenMod on the Huawei Honor 5X (CynogenMod) (en)

Le Honor 5X dispose de tout ce qu'il lui faut pour installer le nouveau système, de manière autonome.

Le flashage du nouveau système va effacer toutes vos applications, vos données et vos réglages. Si vous souhaitez transférer des choses depuis votre système actuel, il est encore temps d'effectuer une sauvegarde à l'aide d'une ou plusieurs applications spécialisées. Le problème est qu'une sauvegarde efficace27) requiert de votre smartphone qu'il soit déjà rooté :-(

Les opérations doivent impérativement être réalisées dans l'ordre indiqué, y compris le flashage des zips :

  1. charger le smartphone (mini 60%)
  2. débrancher le smartphone (impératif !)
  3. arrêter le smartphone
  4. démarrer le smartphone en mode recovery (Vol+ et Power)
  5. effectuer une sauvegarde, bouton Backup (cette sauvegarde vous permettra de revenir en arrière si vous rencontrez un problème ou n'êtes pas satisfaites par le nouveau système)
    1. sélection de la carte mémoire externe, bouton Select Storage > sélection dans la liste de choix
    2. enregistrer en conservant les réglages par défaut
  6. revenir aux réglages d'usine, bouton Wipe > Swipe to Factory Reset
  7. installer le nouveau système, bouton Install
    1. naviguer jusqu'à afficher le contenu de la carte mémoire
    2. flasher CynogenMod, sélection du fichiers zip + bouton Install Image
    3. flasher Open GApps, sélection du fichiers zip + bouton Install Image
    4. flasher SuperSU, sélection du fichiers zip + bouton Install Image
  8. redémarrer sur le nouveau système, bouton Reboot > bouton System

Le premier démarrage peut vous sembler long. C'est normal…

Bien que le nouveau système soit rooté, la connexion ordi-smartphone ne fonctionne plus. En effet, les réglages l'autorisant ont été effacés, comme tout le reste… Il suffit de reprendre les réglages concernés :
  1. Paramètres > À propos du téléphone, taper sur Numéro de build jusqu'à affichage du message de déverrouillage des Options développeurs
  2. Paramètres > Options pour les développeurs, activer Débogage Android</note>
1)
Le risque zéro n'existe pas ;-).
2)
Il n'y a pas d'option “déverrouiller OEM” sous emui 4.0 mais il y a une protection contre l'effacement. Il faut supprimer le compte Google et remettre à zéro le téléphone, il sera alors possible de déverrouiller le bootloader. Source : Déverrouiller le bootloader de votre Honor
3)
L'ordi se rend compte qu'on vient de lui ajouter un périphérique et peut vous proposer plusieurs actions que vous prendrez soin de décliner.
4)
Il se que certains sites parlent de déverrouillage du recovery. C'est un abus de langage. En effet, c'est le bootloader qui assure le verrouillage de la partition contenant le recovery, interdisant ainsi qu'on écrase le recovery d'origine (stock).
5)
Vmall, Huawei ID, etc.
6)
Bien que certaines apps ou réglages vous le demandent !.
7)
On pourrait rédiger des pages entières sur les obstacles - nombreux et invraisemblables - qui peuvent surgir.
8)
Il se peut que certaines conditions ne soient pas nécessaires mais je ne vous conseille pas de prendre le risque d'improviser.
9)
Sans que cela constitue un pré-requis, il est vivement recommandé de disposer d'une bonne connexion à internet (4G, Wifi-ADSL, etc.).
10)
Si le formulaire ne s'affiche pas, inutile d'insister. Vider l'historique du navigateur, fermer toutes les fenêtres du navigateur, relancer le navigateur et reprendre à l'étape 8.
11)
À la main, en faisant une capture d'écran… L'idée est de ne faire aucune manipulation qui risque d'écraser la page de navigateur où s'affiche votre code si durement acquis.
12)
Via les serveurs web de Huawei, le fabricant du Honor 5X.
13)
Au sens propre où ne savez pas si le risque est colossal ou nul.
14)
Ici, IMTP1F2JDYJK02051 et 6816658007779137.
15)
Par exemple, un oubli d'activation de l'option OEM, dans les paramètres développeurs.
16)
En effet, contrôler en s'appuyant sur un fichier de contrôle qui n'est pas sûr équivaut à ne rien contrôler :-).
17)
Il n'existe pas de procédure permettant d'implanter un nouveau recovery (TWRP ou autre) en le copiant sur la carte SD ou la mémoire interne du smartphone.
18)
En effet, le smartphone dispose de 2 recovery… Celui qui vient d'être installé et une copie de recovery d'origine. Lorsqu'on démarre le smartphone en mode recovery, le Honor 5X choisit lequel il lance en fonction de la présence du câble USB. Pas d'USB : custom recovery. USB : copie du recovery d'origine.
19)
Qui contient toutes les saletés de Google et de Huawei réunis ; ces trucs qui n'arrêtent pas de tenter de prendre le contrôle de smartphone et de vos données personnelles, en vous posant sans arrêt les mêmes question même si vous répondez “non” !
20)
Souvent appelée CM.
21)
On dispose ainsi d'une ROM dite “officielle” donc largement contrôlée et améliorée par la communauté open source et bénéficiant de mises à jour automatiques ;-) !
22)
Si vous n'utilisez pas de carte mémoire avec votre smarphone, il vous faudra en emprunter une, le temps d'installer la nouvelle ROM.
23)
En effet, CyanogenMod propose également un custom recovery dont on n'a pas besoin puisqu'on a choisi TWRP.
24)
Indispensable pour accéder à la boutique des applications…
25)
Une fois pré-installée, elle ne risquera pas d'être désintallée par mégarde.
26)
Dans un forum, une contributrice sérieuse indiquera un lien vers la source. Toute autre proposition est suspecte.
27)
Comme le permet Titanium Backup, par exemple.