2015-03-05
Je possède un smartphone HTC One (M8), et récemment, il m'a proposé d'effectuer une mise à jour OTA (Over The Air) pour passer d'Android 4.4 (Kitkat) à Android 5.0 (Lollipop). Ce genre de mises à jour, proposées par le constructeur ne pose normalement pas de souci : on appuie sur "OK", la mise à jour se fait, puis le téléphone redémarre sur le nouveau système. Je n'ai malheureusement pas eu cette chance. Au lieu de redémarrer sur le nouveau système, mon téléphone est resté bloqué sur un écran affichant un petit logo rouge-qui-n-annonce-rien-de-bon. De plus, plus aucune commande ne répondait, je ne pouvais même pas éteindre le téléphone (avant de trouver une combinaison de touche pas du tout intuitive grâce à @kyriog).
combinaison de touche pas du tout intuitive
Un peu dépité et n'obtenant pas d'informations utiles du côté de HTC, je me suis dit qu'il était temps d'essayer autre chose. Je me suis donc lancé dans l'installation de CyanogenMod sur le téléphone, et c'est bien sur de ça dont nous allons parler dans cet article.
--------------------------------------------------------------------------------
⚠️ Warning
--------------------------------------------------------------------------------
ARTICLE OBSOLÈTE : Le présent article est aujourd'hui totalement obsolète. CyanogenMod a depuis disparu et a été remplacé par LineageOS. La plupart des liens de cet article sont donc cassés et les informations fournies ne sont plus garanties de fonctionner. Je laisse cependant cet article en ligne pour référence, vous êtes prévenus. 😉️
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
⚠️ Warning
--------------------------------------------------------------------------------
Attention : Déverrouiller et installer une ROM alternative sur votre téléphone est susceptible de vous faire perdre votre garantie. De plus, toutes les données présentes sur le téléphone seront supprimées. Si vous n'êtes pas sûr de ce que vous faites et que votre téléphone est encore sous garantie, il peut être préférable de contacter le service client HTC pour procéder à une réparation du terminal.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Note : Je vais réaliser l'intégralité des manipulations de cet article sous Ubuntu Linux. Vous pouvez tout à fait utiliser un autre système d'exploitation (autre distribution Linux, Windows, Mac OS X,...) il vous faudra toutefois adapter certaines commandes en fonction de votre système.
--------------------------------------------------------------------------------
Avant de commencer, il nous faut installer adb et fastboot sur notre ordinateur afin de pouvoir communiquer avec notre téléphone :
sudo apt-get install android-tools-adb android-tools-fastboot
Une fois ces outils installés, il faut configurer notre système d'exploitation afin qu'il nous autorise à communiquer avec le téléphone en USB. Pour ce faire, il nous faut créer le fichier "/etc/udev/rules.d/51-android.rules" et y insérer la ligne suivante :
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bb4", MODE="0666"
Pour finir, il faut redémarrer udev avec la commande :
sudo service udev restart
Voilà, nous sommes maintenant prêts à commencer !
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Pour Windows, vous trouverez adb et fastboot sur le forum xda developers. Vous aurez également besoin d'installer HTC Sync Manager qui contient les pilotes USB du téléphone pour Windows.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Pour Mac OS X, vous trouverez adb et fastboot par ici : https://code.google.com/p/adb-fastboot-install/.
https://code.google.com/p/adb-fastboot-install/
--------------------------------------------------------------------------------
La première étape de notre périple est de réussir à redémarrer le téléphone sur le bootmenu (il s'agit d'un menu caché accessible au démarrage du téléphone).
Dans mon cas, le téléphone est bloqué sur un écran affichant un logo rouge, aucune touche ne semble répondre. Pour le forcer à s'arrêter, il faut maintenir les boutons Power et Volume+ enfoncés pendant 10 secondes.
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Remarque¹ : Si contrairement au mien votre téléphone n'est pas bloqué, vous pouvez l'éteindre normalement.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Remarque² : Dans mon cas, le téléphone redémarre immédiatement après avoir été éteint. Il faut donc enchaîner avec l'étape suivante dès que l'écran devient noir.
--------------------------------------------------------------------------------
Pour accéder au bootmenu, une fois le téléphone éteint, il faut le rallumer en maintenant les boutons Power et Volume– enfoncés jusqu'à apparition du menu.
Maintenant que nous avons atteint le bootmenu, il ne nous reste plus qu'a relier le téléphone à l'ordinateur à l'aide d'un câble USB (le même qui sert à charger le téléphone).
Étapes pour accéder au menu de démarrage du HTC One (M8)
Pour pouvoir installer une ROM non officielle sur le téléphone, il faut le déverrouiller. Par chance, HTC propose cette procédure sur son site dédié aux développeurs.
Afin de procéder au déverrouillage de l'appareil, il faut commencer par activer le mode fastboot. Pour ce faire,
Étapes pour accéder au téléphone via fastboot
Maintenant nous allons vérifier que l'ordinateur reconnaît bien le téléphone. Pour cela, ouvrez un terminal puis entrez la commande suivante :
fastboot devices
Si la commande retourne une ligne semblable à celle-ci, vous êtes prêt à passer à la suite, sinon, vérifiez que votre téléphone est bien relié à votre ordinateur et que les permissions sont correctes (voir le passage sur udev dans la première partie de cet article) :
XXXXXXXXXXXX fastboot
Afin de pouvoir suivre la procédure de déverrouillage sur le site de HTC Dev, il faut commencer par vous y inscrire :
https://www.htcdev.com/register/
Suivez en suite la procédure indiquée sur cette page :
http://www.htcdev.com/bootloader/unlock-instructions/page-2
Peu de temps après avoir suivi les instructions du site, vous devriez recevoir un e-mail contenant en pièce jointe le fichier nécessaire au déverrouillage du téléphone ("Unlock_code.bin"). Une fois cet e-mail reçu, suivez les instructions de la page suivante pour procéder au déverrouillage du téléphone :
http://www.htcdev.com/bootloader/unlock-instructions/page-4
Votre téléphone est à présent déverrouillé, nous allons enfin pouvoir entrer dans le vif du sujet.
Nous allons à présent installer sur le téléphone un mini système (que l'on appelle recovery) qui va nous permettre de réaliser les diverses opérations nécessaires à l'installation de CyanogenMod (ou de tout autre système Android).
Pour commencer, il faut télécharger ClockworkMod, qui est le recovery que nous allons utiliser par la suite :
http://builder.unstableapps.com/#/latest/clockworkmodrecovery/m8
Ensuite, il faut démarrer le téléphone en mode fastboot (instructions dans la partie précédente).
Puis enfin, flashez ClockworkMod sur le téléphone à l'aide de la commande suivante (pensez bien à adapter le nom et le chemin du fichier que vous avez téléchargé) :
fastboot flash recovery clockworkmodrecovery.6051.m8.touch.img
Si tout s'est bien passé, la commande devrait retourner une sortie similaire au bout de quelques secondes :
target reported max download size of 1826418688 bytes sending 'recovery' (13486 KB)... OKAY [ 1.492s] writing 'recovery'... OKAY [ 0.513s] finished. total time: 2.005s
Pour finir, nous allons redémarrer le téléphone en mode recovery afin de lancer ClockworkMod :
Si tout s'est bien passé, vous devriez avoir devant vous le menu de ClockworkMod.
Maintenant que nous sommes sur le bootmenu, nous allons pouvoir procéder à l'installation de CyanogenMod.
Pour commencer, il vous faut télécharger une version de CyanogenMod compatible avec notre téléphone. Prenez la dernière version stable disponible sur cette page :
http://download.cyanogenmod.org/?device=m8&type=snapshot
Ensuite, il faut effacer toutes les données présentes sur le téléphone. Normalement les données ont déjà été effacées lors de la procédure de déverrouillage, mais au cas où, voici là marche à suivre :
Étapes pour effacer les données du téléphone
Nous allons maintenant pouvoir installer CyanogenMod sur le téléphone.
Pour commencer, il faut s'assurer que la partition de donnée est bien montée (ça devrait normalement être le cas). Pour ce faire, rendez-vous dans le menu "mounts and storage", puis vérifiez la ligne qui mentionne "/data".
Étapes pour monter la partition de donnée
Ensuite, nous allons envoyer sur le téléphone l'archive zip que nous avons téléchargés. Pour cela, ouvrez un terminal sur votre ordinateur puis entrez-y la commande suivante (en adaptant le nom et le chemin du fichier zip) :
adb push cm-11-20141112-SNAPSHOT-M12-m8.zip /sdcard/
L'opération prend quelques dizaines de secondes. Une fois terminée, le terminal devrait vous afficher une ligne similaire à celle-ci :
12231 KB/s (244823134 bytes in 19.546s)
Enfin, nous allons procéder à l'installation à proprement parler. Prenez votre téléphone, puis effectuez les manipulations suivantes :
Une fois l'installation terminée, vous vous retrouvez de nouveau sur le menu de sélection du zip, et le journal en bas de l'écran devrait afficher "Install from sdcard complete.".
Étapes d'installation de CyanogenMod
Maintenant que notre système est installé, nous allons procéder à l'installation des applications Google sur le téléphone. Ceci n'est pas obligatoire, toutefois, si vous ne les installez pas, vous n'aurez pas accès au Play Store, à Google Map, à Youtube, etc.
L'installation des Google App se déroule de la même façon que l'installation de CyanogenMod.
Pour commencer, téléchargez la version des applications Google correspondant à la version de CyanogenMod que vous venez d'installer :
http://wiki.cyanogenmod.org/w/Google_Apps
--------------------------------------------------------------------------------
📝️ Note:
--------------------------------------------------------------------------------
Note : si vous ne savez pas quelle version de CyanogenMod vous avez installé, regardez le nom du zip que vous aviez téléchargé à l'étape précédente. Le nom commence par la version de CyanogenMod (cm-11, cm-12,...).
--------------------------------------------------------------------------------
Ensuite, comme précédemment il faut envoyer le zip contenant les Google App sur le téléphone. ressortez votre terminal et tapez-y la commande suivante (toujours en adaptant les noms de fichiers) :
adb push gapps-kk-20140606-signed.zip /sdcard/
puis, sur votre téléphone :
Une fois terminé, vous verrez encore une fois le message "Install from sdcard complete." en bas de votre écran.
Étapes d'installation des Google Apps
Vous pouvez à présent redémarrer votre téléphone : retournez dans le menu principal grâce aux options "+++++Go Back+++++" en bas des menus, puis sélectionnez "reboot system now".
Votre téléphone va à présent redémarrer sous CynaogenMod (ça prend un peu de temps la première fois, c'est normal).
Voilà, votre téléphone fonctionne à nouveau, vous pouvez l'utiliser normalement.
Je vous invite également à lire les pages du wiki de CyanogenMod consacrées au HTC One (M8), et, pour les plus téméraires, à tester d'autres ROMs (les nightly de CyanogenMod 12 par exemple), d'autant que ClockworkMod vous permet de sauvegarder votre système afin de le restaurer rapidement si d'aventure vous tombiez sur une ROM qui ne fonctionnerait pas comme prévu.
les pages du wiki de CyanogenMod consacrées au HTC One (M8)
--------------------------------------------------------------------------------