Identification du port USB Linux sur lequel Arduino est connecté

Introduction
La plateforme Arduino se connecte sur le PC via un port USB.
Si vous utilisez une machine Linux, ce port USB est attaché à un périphérique dans le répertoire /dev.

il est important d'identifier ce périphérique pour un certain nombre d'opérations comme le "debugging", la "communication série avec Arduino" ou le "branchement d'un terminal Linux".
Voici quelques méthodes qui vous permettront cette identification.

Méthode 1: Espionner les messages du Kernel Linux

Avant de brancher le board Arduino sur le port USB:
Utilisez la commande "dmesg -s 1024" dans une console pour prendre connaissance des derniers messages de debugging envoyé par le kernel.

Brancher et identifier le port USB
Brancher l'Arduino sur un port USB et re-exécutez la commande "dmesg -s 1024" juste après.
Normalement, vous devriez voir apparaître des messages de debug similaire à ce qui est présenté ci-dessous.

[ 1488.925807] usb 2-1.1: new full speed USB device using ehci_hcd and address 4
[ 1489.139296] cdc_acm 2-1.1:1.0: ttyACM0: USB ACM device
[ 1489.139849] usbcore: registered new interface driver cdc_acm
[ 1489.139856] cdc_acm: v0.26:USB Abstract Control Model driver for USB modems and ISDN adapters

Le device USB auquel Arduino est connecté est donc /dev/ttyACM0

Méthode 2: Explorer /dev

Une autre solution est de taper la commande "ls /dev/tty*" et d'essayer de trouver le périphérique associé au port USB connecté sur Arduino.
La commande retourne généralement plus de 50 tty.
Cependant, les tty associés au port USB disposent d'une nomenclature différente.
Ils contiennent habituellement USB ou ACM (Abstract Control Model).

Voici, par exemple, ce qu'affiche la commande "ls /dev/tty*" sur mon PC lorsque Arduino est connecté (contenu volontairement tronqué)  
/dev/tty59  /dev/tty9
/dev/tty6   /dev/ttyACM0
/dev/tty60  /dev/ttyS0
/dev/tty61  /dev/ttyS1
/dev/tty62  /dev/ttyS2
/dev/tty63  /dev/ttyS3
/dev/tty57  /dev/tty7
/dev/tty58  /dev/tty8

Le périphérique /dev/ttyACM0 y est clairement identifiable.
Pour s'assurer que l'identification soit correcte, vous débranchez Arduino de l'ordinateur et vous vérifiez que le périphérique associé disparait également de /dev.

Aucun commentaire