Overblog Suivre ce blog
Editer la page Administration Créer mon blog
La boîte à fourbi

Tutoriel : utiliser l'AR-Drone avec le HTC Desire HD (activation du mode ad-hoc)

Si, comme moi, vous êtes l'heureux propriétaire d'un AR-Drone, et que vous avez un joli téléphone, au hasard un Desire HD, vous savez la misère que c'est de raccorder sous Froyo (Android 2.2) votre téléphone à un réseau d'égal à égal, plus communément appelé "ad-hoc".

 

Avant toute chose, j'ai passé plusieurs jours à tenter faire cette opération, j'ai eu beaucoup de mal à y arriver, et je crois qu'il y a autant de méthodes que de téléphones sur le marché. Ce qui fonctionne donc pour un Desire HD peut tout aussi bien ne pas fonctionner avec un Desire tout court... Voire avec un autre Desire HD (mais là, ce serait tout de même la faute à pas de chance).

 

En avant pour le tuto!

 

 

1 - Le principe

 

Android 2.2 est plombé par une grossière erreur de jeunesse : il est incapable de se connecter aux réseaux ad-hoc, mais ça, vous le savez déjà. Pour changer ce triste état de fait, il faut taper dans certains fichiers système, au coeur d'Android.

Naturellement, Android est protégé pour ne pas que tout un chacun puisse mettre ses doigts n'importe où, de fait, pour avoir accès à ces fichiers cruciaux, qu'il est possible de lire mais pas d'écrire, il faut au préalable rooter votre téléphone.

 

Rooter, cela veut dire "se donner les pleins pouvoirs", mais ce n'est pas si simple. Ceci étant, j'y suis arrivé sans beaucoup de connaissances, ça reste donc largemetn faisable.

 

Une fois rooté, nous irons attaquer le fichier wpa_supplicant (et PAS wpa_supplicant.conf) dans /system/bin/ , et le tour sera joué.

 

Pour parer aux remarques, j'ai essayé Root Explorer pour modifier les droits des répertoires dont il est question, mais ça n'a pas pas du tout fonctionné. La seule méthode qui a fonctionné pour moi a été d'utiliser un contenu scripté. De même, le chmod directement depuis le téléphone ou depuis adb n'a rien donné non plus. Android est plutôt bien protégé, faut admettre.

 

 

 

2 - Sources et remerciements

 

Je ne suis absolument pas titulaire des fichiers miracle, merci donc aux petits génies qui ont programmé ce qui m'a et j'espère vous sauvera la vie.

Mes sources se trouvent sur le forum >XDA Developers<, mais je vous prie de croire qu'avant de tomber sur cette page précise, j'ai navigué quelques heures :p

 

 

 

3 - Mises en garde

 

Ce qui a fonctionné pour moi peut ne pas fonctionner pour vous, ou même pire... Je ne suis aucunement responsable des plantages que vous pourriez rencontrer, vous suivez donc les lignes présentes de votre propre chef et à vos propres risques!

 

 

 

4 - Le début : le root

 

Le début du présent tutoriel consiste à rooter votre téléphone. Là encore, je n'ai pas réalisé le tutoriel, juste ajouté mes remarques, en tout état de cause, cela se trouve là :

 

>Tutoriel pour rooter le HTC Desire HD<

 

 

 

5 - Le plat de résistance : implémentation de la reconnaissance des réseaux Ad-hoc

 

Votre téléphone est rooté, rassurez-vous, vous avez fait le plus dur.

 

5-1 Prérequis

 

Ce qu'il vous faut maintenant :

 

- L'application SuperUser, à télécharger depuis le Market sur votre téléphone,

- Le fichier >wifi_adhoc.zip< et le fichier >wifi_original<,

- L'application SSHDroid, à télécharger depuis le Market sur votre téléphone,

- >WinSCP< à installer sur votre PC.

- L'application ROM Manager, à télécharger depuis le Market sur votre téléphone,

- Un réseau Wi-Fi pour vous connecter depuis votre PC sur votre téléphone.

 

 

5-2 Sauvegarde de wpa_supplicant

 

Dans un premier temps, nous allons sauvegarder le fichier qui nous intéresse, pour rattraper si jamais la manip' échoue.

 

- Activez le Wi-Fi sur votre téléphone de manière à vous y connecter depuis votre PC.

 

- Depuis votre téléphone, lancez SSH Droid. Relevez l'adresse donnée par SSH Droid (par exemple sftp://root@192.168.0.10:22, la partie rouge ici).

 

- Lancez WinSCP.

 

- Cliquez sur New.

 

- Entrez comme paramètres :

     - Host name : 192.168.0.10 (ou n'importe quelle adresse relevée précédemment)

     - Port : 22

     - User name : root

     - Password : admin (c'est le password par défaut suite au root par la méthode du tutoriel)

 

- Cliquez sur Login et approuvez le message d'alerte (la clé du serveur SSH sur le téléphone n'est pas encore connue par WinSCP) en cliquant sur Update ou Add.

 

- Une nouvelle fenêtre apparaît (fermez-la en appuyant sur OK) et vous arrivez à la fenêtre suivante :

http://shinkel.free.fr/img/blog/WinSCP1.png

 

- Double-cliquez sur le petit bandeau bleu au-dessus du dossier .. dans la partie droite de la fenêtre (là où il est marqué /data/data/berserker.android.apps.sshdroid/home), et entrez le chemin suivant : /system/bin .

 

- Dans la liste, cherchez en bas le fichier wpa_supplicant (sans extension) et faites un cliquer-glisser vers la partie gauche de la fenêtre. Cette manipulation permet de garder au chaud ce fichier sur votre PC.

 

 

5-3 Préparation de la carte SD

 

Etape simple pour copier sur la carte SD les fichierz du début. Enfantin, mais nécessaire!

 

- Fermez SSHDroid et WinSCP, puis connectez votre téléphone en mode Lecteur de disque.

 

- Sur votre carte SD, créez à la racine un répertoire wifi, dans lequel vous allez copier les fichiers wifi_original.zip et wifi_adhoc.zip.

 

 

5-4 Activation du mode Ad-Hoc

 

Tout est prêt, nous allons maintenant appliquer le contenu des fichiers zip depuis le Recovery ClockWork Mode.

 

- Lancez ROMManager depuis votre téléphone.

 

- Choisissez l'option Redémarage en Recovery. Cela peut prendre quelques dizaines de secondes.

 

Ceci fait, vous vous trouvez logiquement dans un écran noir avec un chapeau sur une flèche. Les touches de navigation sont les suivantes :

     ¤ Volume + : monter

     ¤ Volume - : descendre (d'une logique imparable)

     ¤ Bouton Power : valider.

 

- Choisissez install zip from sdcard.

 

- Puis choose zip from sdcard.

 

- Appuyez sur Volume + pour vous retrouver directement en bas de la liste, puis sélectionnez le répertoire wifi, puis wifi_adhoc.zip.

 

- Une liste de No avec un seul Yes - Install wifi_adhoc.zip apparaît, évidemment, allez chercher ce Yes. Validez.

 

- Quelques commandes apparaissent à l'écran, c'est bonheur si "Installation complete!" sans aucun message d'erreur s'inscrit en bas des commandes. Ceci fait, choisissez Go back puis reboot system now.

 

- Si ma science est exacte, maintenant vous avez accès depuis votre Desire HD au wifi en mode ad-hoc! Démarrez votre AR-Drone, sans oublier de le dé-appairer avant (bouton Unpair sous son ventre, accessible avec un trombone). Et voilà!

 

 

5-5  En cas d'échec

 

Vous avez appliqué ce tutoriel à la lettre, et le mode ad-hoc ne fonctionne pas ou vous avez envie de repasser à l'original (en ce qui me concerne, j'ai remarqué qu'avec le nouveau wpa_supplicant, je perdais la possibilité de connexion en  SSH).

 

Pour revenir au mode original, redémarrez en mode Recovery et sélectionnez cette fois le fichier wifi_original.zip.

 

Si malgré cela, ça ne fonctionnait toujours pas, voici la marche à suivre :

 

- Dézippez dans un endroit quelconque le contenu du fichier wifi_original.zip.

 

- Dedans se trouvent deux sous-répertoires : META-INF et system.

Dans le premier se toruve le "secret" de tout ce tutoriel, le script qui permet de remplace le très protégé wpa_supplicant (gloire éternelle à celui qui l'a pondu, soit dit en passant).

Dans le second se trouve le path du fichier à manipuler par le script, donc, si vous avez bonne mémoire, system puis bin.

Remplacez wpa_supplicant dans ce dernier répertoire par celui que vous avez sauvegardé avec WinSCP au début de ce tutoriel (si vous n'êtes pas sûr, vous pouvez toujours sauvegarder ailleurs celui que vous allez écraser, mais hors du répertoire wifi_original).

Ceci fait, recompressez wifi_original, mais ATTENTION : il faut que META-INF et system soient directement accessibles une fois le zip ouvert (à la racine du zip), et pas que l'on tombe sur un répertoire wifi_original dans lequel se trouvent les sous-répertoires META-INF et system.

Si ce n'est pas clair, voici ce que ça doit donner :

wifi_original.zip

          > META-INF

          > system

 

Et voici ce que ça ne DOIT PAS donner :

wifi_original.zip

          > wifi_original

                    > META-INF

                    > system

 

Ceci pour la bonne et simple raison que le script pourrait ce pas fonctionner, j'imagine que META-INF doit se trouver directement accessible dans le zip, mais comme je n'ai aucune connaissance en la matière, je ne peux que supposer :p

 

Copiez donc ce nouveau fichier wifi_original.zip à la place de celui dans le répertoire wifi de votre carte SD et rententez la manipulation.

 

 

 

En espérant que cela vous serve, n'hésitez pas à laisser vos commenctaires, mais encore une fois, je ne suis pas l'auteur des fichiers clés qui rendent la manipulation possible, je ne pourrai donc pas vous dépanner sur le sujet!

Bon vol!

Partager cette page

Repost 0