Je reprends mon article précédent sur l’installation de l’IDE Arduino sous Ubuntu, mais cette fois on va installer la version qui est encore en béta : Arduino 1.5 et sous Ubuntu 13.10. Nous allons toujours connecter une carte Arduino UNO via le cable USB.
L’IDE 1.5 ajoute le support de nouvelles architectures. Dans mon cas, cela devrait m’aider à essayer de programmer directement la partie arduino de ma nouvelle carte Udoo. Cette carte est une sacrée bestiole : un raspberry PI et une arduino due en une seule carte. Mais j’en parlerai une autre fois.
On va donc tout refaire comme la fois précédente… ou presque.
Étape 1, vérifier la présence de Java
Ouvrir un terminal et taper un classique :
~$ java -version java version "1.7.0_51" OpenJDK Runtime Environment (IcedTea 2.4.4) (7u51-2.4.4-0ubuntu0.13.10.1) OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)
Tout est donc parfait, sinon il faut installer un OpenJDK 6 ou 7 (avec un “aptitude install openjdk-7-jdk” par exemple).
Étape 2, installer les dépendances pour l’IDE
Dans le tutoriel précédent, j’indiquais qu’il fallait installer les dépendances suivantes : gcc-avr et avr-libc. Cependant, il semble que cela ne soit plus nécessaire depuis la version 1.0.1 de l’IDE arduino car il y a une version packagée avec l’IDE. Je n’ai donc pas réalisé cette étape et je confirme : cela fonctionne très bien sans.
Étape 3, ajouter l’utilisateur au group dialout
Pour pouvoir connecter la carte arduino au port USB de l’ordinateur et pour pouvoir communiquer avec, il faut que l’utilisateur qui va lancer l’IDE appartienne au groupe dialout. En considérant que l’utilisateur s’appelle marc :
~$ sudo usermod -aG dialout marc
Note : le nouveau groupe n’est pas affecté à la session courante. Vous pouvez tester une commande id
ou groups
dans un terminal. Pour que cela prenne effet, il faut soit redémarrer la session utilisateur, soit faire un su - marc
(remplacez marc par votre utilisateur bien entendu) dans un terminal et lancer l’IDE depuis ce terminal.
Si vous n’ajoutez pas l’utilisateur au groupe dialout — ou si l’affectation n’est pas prise en compte car vous n’avez pas redémarré votre session — vous aurez ce genre de message d’erreur lorsque vous voudrez charger un sketch sur l’arduino :
avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied ioctl("TIOCMGET"): Inappropriate ioctl for device
Mais cela ne devrait pas vous arriver, car je vous ai bien prévenu quand même, non ?
Étape 4, installer l’IDE Arduino
Aller sur la page de téléchargement d’Arduino et récupérer la dernière version 1.5 qui correspond à votre architecture, 32 bits ou 64 bits. Ici, ce sera la 64 bits. Vous devez savoir où vous voulez l’installer. Chez moi ce sera dans $HOME/arduino
.
~$ mkdir ~/arduino ~$ cd ~/Downloads ~/Downloads$ tar -C ~/arduino -xvzf arduino-1.5.6-r2-linux64.tgz ~/Downloads$ cd ~/arduino/arduino-1.5.6-r2/ ~/arduino/arduino-1.5.6-r2$
Étape 5, connecter la carte et lancer l’IDE
Connecter la carte. Elle doit s’alimenter et les leds clignoter. Pour vérifier que le port correspondant est bien créé, on peut faire un ls
sur le tty correspondant :
~/arduino/arduino-1.5.6-r2$ ls -l /dev/ttyACM* crw-rw---- 1 root dialout 166, 0 févr. 24 22:42 /dev/ttyACM0
On trouve bien le /dev/ttyACM0 et on voit bien qu'il appartient au groupe dialout.
Maintenant ouvrons l’IDE, depuis le dossier contenant l’extraction de l’archive, lancer la commande arduino :
~/arduino/arduino-1.5.6-r2$ ./arduino
Cela ouvre une fenêtre comme celle de la capture suivante, où l’on voit que l’IDE n’est pas configuré sur le bon port de communication, il prend par défaut COM1
alors qu’on veut /dev/ttyACM0
:
Pour modifier le port, dans le menu “Tools > Serial Port” choisir celui qui vous intéresse. Dans mon cas, ce sera /dev/ttyACM0
.
Ce paramétrage sera conservé au prochain démarrage de l’IDE.
Et voilà, vous pouvez maintenant charger des sketchs sur votre carte arduino… Vous pouvez commencer par l’exemple blink fourni avec l’IDE, il fait clignoter la LED intégrée à la carte UNO :
Puis le déployer directement :
Bonne suite.