%

Faire reconnaître sa tablette Android sous Linux

Article publié, le et modifié le
4 minutes de lecture

Cet article contient 844 mots.
Source brute de l'article :
Commit version : b7b5048

Description

Tout d’abord commençons par cet avertissement auquel vous devez consentir, AUTREMENT passez votre chemin et fermer cette page :

Danger

Tablettes testées :

  • Archos 101 Oxygen : OK - VendorId: 0e79; ProductId: 50f8
  • Cdisplay : OK - VendorId:201e; ProductId: 4289
  • Pipo M8 HD : OK - VendorId: 2207; ProductId: 0010
  • Teclast X89 Kindow : OK - VendorId: 8087; ProductId: 0a5f

Pré-requis

  • Utiliser un ordinateur ayant des ports USB 2 - pas USB 3 : avec ces ports, il peut y avoir des difficultés de reconnaissance !
  • Pour Debian :
    • avant wheezy, oubliez
    • pour wheezy, utilisez les dépôts backports.
    • pour Jessie, et Sid, utilisez les dépôts officiels.
  • Que votre tablette soit en mode “Débogage USB” : Paramètres > {} Outils pour les développeurs > Déboguage USB [v]
  • Et, bien sûr, une connection Internet fonctionnelle…
Attention

Installation

Il faut installer les outils suivants : android-tools-adb android-tools-fastboot android-tools-fsutils

Les deux derniers ne sont pas strictement nécessaires…

À vous de le faire, selon votre convenance - terminal-console, synaptic, etc.

Configuration

Pour faire reconnaître proprement la tablette, il faut :

  • Dans un premier temps, connectez votre tablette, sur le port micro-usb - et, non host - par câble usb à votre ordinateur. (Peu importe le mode de connexion USB : MTP, PTP ou stockage USB).
  • Ouvrez un terminal-console pour taper dedans la commande lsusb.

Exemple : Pour une tablette PiPo, telle la M8HD, vous aurez comme réponse : $ lsusb (…) Bus 002 Device 014: ID 2207:0010

L’information importante est celle après ID, dans ce cas : 2207:0010

  • la première série de 4 chiffres avant le symbole ‘:’ est l’identifiant fabriquant - nommé idVendor -
  • la seconde série de 4 chiffres après le symbole ‘:’ est l’identifiant du produit - nommé idProduct -

Il nous faut créer une règle udev, et pour cela, écrire le fichier /etc/udev/rules.d/51-android.rules : SUBSYSTEM=="usb", ATTR{idVendor}=="2207", MODE="0666", GROUP="plugdev"

=> Modifiez dans cette règle selon les informations idVendor, idProduct que vous avez trouvées…

Ensuite, il nous faut créer/modifier un autre fichier utile ~/.android/adb_usb.ini, pour y ajouter l’information de l’identifiant du fabriquant de la manière suivante, soit un 0x suivi de idVendor, un identifiant par ligne.

Pour l’exemple ci-dessus, ce serait 0x2207

=> Assurez-vous que votre utilisateur linux soit dans le groupe plugdev
sinon ajoutez-le ! # usermod -G plugdev votre_id_utilisateur

=> Enregistrez le fichier, puis redémarrez udev : # service udev restart

Utilisation

Pour être sûr que la tablette soit reconnue, utilisez la commande adb devices :

$ adb devices List of devices attached WAWJM5UMUW device

Pour le reste, tapez la commande adb ; elle vous restituera les différentes options !

Erreurs

adb : commande introuvable

Êtes-vous sûr d’avoir installé les outils adb ???

‘adb devices’ : rien n’est affiché

Si rien n’est reconnu, et donc qu’aucun device n’apparaît, c’est que vous avez peut-être mal renseigné le fichier /etc/udev/rules.d/51-android.rules et/ou n’avez pas redémarré le système udev !

Si malgré tout, vous êtes absolument sûr d’avoir bien rempli le fichier en question, et d’avoir redémarré udev, il peut être intéressant d’effectuer la manipulation suivante :

  • Créer le fichier ~/.android/adb_usb.ini, et écrivez dedans 0x suivi de votre idVendor

Pour la tablette PiPo M8HD, ce sera : 0x2207

  • Redémarrer le serveur adb : # adb kill-server
  • Exécutez à nouveau : adb devices

adb devices : ???????????? no permissions

Lorsque je tape adb devices, le périphérique n’est pas reconnu et il est affiché ???????????? no permissions

Il vous faut tuer le serveur, le redémarrer avec des droits administrateur ensuite le périphérique apparaîtra !

$ adb kill-server # adb start-server

adb devices : offline

Lorsque je tape adb devices, le périphérique est reconnu mais affiché offline

$ adb devices List of devices attached WAWJM5UMUW offline

Il vous faudra alors :

  • désactiver l’option “Débogage USB”…
  • déconnecter/reconnecter votre tablette à l’ordinateur, en débranchant/rebranchant le câble USB.
  • activer à nouveau l’option “Débogage USB”

À ce moment-là, essayez à nouveau la commande adb devices ; vous devriez voir apparaître votre périphérique… correctement !

error while loading shared libraries: libncurses.so.5

Si vous fonctionnez avec une distribution GNU/Linux 64 bits, c’est qu’il vous manque les librairies pour l’architecture 32 bits !

Documentations

Vous pouvez lire mes autres articles, pour :


Remerciements

Ce tutoriel n’aurait pas existé sans le fourmillement d’idées glanées ici et là… merci à leurs auteurs respectifs !