Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
arduino [Le 30/11/2016, 06:46] sivolc73 Mise à jour des instructions, lien morts, etc... |
arduino [Le 02/11/2023, 10:45] (Version actuelle) eldino [Utilisation des ports série du menu] utilisation de $USER |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
====== Arduino ====== | ====== Arduino ====== | ||
- | Arduino est une plateforme de prototypage à bas coût sous licence Creative Commons. Basée sur les microcontrôleurs ATMEL, elle permet de réaliser rapidement des projets électroniques sur les trois plateformes Linux, Mac et Windows. | + | Arduino est une plateforme de prototypage à bas coût sous licence Creative Commons. Basée sur les microcontrôleurs ATMEL, elle permet de réaliser rapidement des projets électroniques sur les trois plateformes Linux, Mac et Windows. |
{{:arduino_uno_test.jpg}} | {{:arduino_uno_test.jpg}} | ||
Ligne 15: | Ligne 15: | ||
==== À partir des dépôts ==== | ==== À partir des dépôts ==== | ||
- | Depuis Ubuntu 10.10 le paquet Arduino est présent dans les dépôts Universe d'Ubuntu.\\ | + | Le paquet Arduino est présent dans les dépôts Universe d'Ubuntu.\\ |
Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>arduino|arduino]]**.\\ | Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>arduino|arduino]]**.\\ | ||
La version présente dans le dépôt n'est pas toujours la plus récente, il peut être intéressant d'installer la dernière version depuis l'archive du site officiel en suivant la méthode décrite ci-dessous. | La version présente dans le dépôt n'est pas toujours la plus récente, il peut être intéressant d'installer la dernière version depuis l'archive du site officiel en suivant la méthode décrite ci-dessous. | ||
- | Depuis [[precise|Ubuntu 12.04]] un utilitaire est présent dans les dépôts. Il permet de programmer Arduino en ligne de commande, Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>arduino-mk|arduino-mk]]**. | + | Un utilitaire est présent dans les dépôts. Il permet de programmer Arduino en ligne de commande, Pour l'installer, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt>arduino-mk|arduino-mk]]**. |
==== Depuis l'archive du site officiel ==== | ==== Depuis l'archive du site officiel ==== | ||
Ligne 32: | Ligne 32: | ||
**(en)** [[https://www.arduino.cc/en/Guide/Linux|Installation d'Arduino IDE sous linux sur le site officiel]] | **(en)** [[https://www.arduino.cc/en/Guide/Linux|Installation d'Arduino IDE sous linux sur le site officiel]] | ||
**(en)** [[http://www.arduino.cc/playground/Linux/Ubuntu|Pour les plus anciennes versions d'Ubuntu]]. | **(en)** [[http://www.arduino.cc/playground/Linux/Ubuntu|Pour les plus anciennes versions d'Ubuntu]]. | ||
+ | |||
+ | ==== avec Snap ==== | ||
+ | |||
+ | Comme la version dans les dépôts est très ancienne (sur Focal 20.04, c'est la version 1.0.5 qui date d'environ 2013 et qui n'a pas le library manager) et que l'installation de l'archive officielle peut ne pas fonctionner, il peut être plus simple d'installer Arduino par Snap: | ||
+ | <code> sudo snap install arduino </code> | ||
==== Utilisation des ports série du menu==== | ==== Utilisation des ports série du menu==== | ||
- | Les nouvelles versions du logiciel vous demanderons lors de la première exécution de vous authentifier pour vous donner l'autorisation d'accéder aux ports série en vous ajoutant aux groupe "tty" et "dialout". Notez que vous devez vous déconnecter et vous reconnecter pour que les changements soient effectifs. | + | Les nouvelles versions du logiciel vous demanderont lors de la première exécution de vous authentifier pour vous donner l'autorisation d'accéder aux ports série en vous ajoutant aux groupes "tty" et "dialout". Notez que vous devez vous déconnecter et vous reconnecter pour que les changements soient effectifs. |
Si pour une raison ou pour une autre l'utilitaire échoue à l'ajout du groupe, vous pouvez le faire manuellement: | Si pour une raison ou pour une autre l'utilitaire échoue à l'ajout du groupe, vous pouvez le faire manuellement: | ||
- | <code> sudo usermod -a -G tty Nom_Utilisateur </code> | + | <code> sudo usermod -a -G tty $USER </code> |
- | <code> sudo usermod -a -G dialout Nom_Utilisateur </code> | + | <code> sudo usermod -a -G dialout $USER </code> |
+ | |||
+ | modifier les droits de /ttyACM0 avec la commande (la carte doit être connectée !) : | ||
+ | <code> sudo chmod a+rw /dev/ttyACM0</code> | ||
+ | |||
+ | ou depuis la mise a jour | ||
+ | |||
+ | <code> sudo chmod a+rw /dev/ttyUSB0 </code> | ||
il faut ensuite se déconnecter et se reconnecter pour que les modifications soient effectives. | il faut ensuite se déconnecter et se reconnecter pour que les modifications soient effectives. | ||
+ | |||
+ | Si le paquet a été installé à partir de la logithèque GNOME (logiciels) alors il faut en plus autoriser l'accès aux fichiers personnels et aux périphériques USB à partir du bouton "Autorisations" pour obtenir les droits sur les ports séries. | ||
==== Problèmes connus ==== | ==== Problèmes connus ==== | ||
Ligne 47: | Ligne 62: | ||
Sur ces versions de carte Arduino UNO antérieures à mai 2011, il est nécessaire de mettre à jour le micrologiciel de communication USB de la carte UNO, ce qui se fait par le port USB. Voir [[http://arduino.cc/en/Hacking/DFUProgramming8U2|cette page du projet]] décrivant la manipulation ainsi que [[http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.MaterielUnoMAJFirmwareUSB|ce site en français]] qui explique très bien les opérations à faire. | Sur ces versions de carte Arduino UNO antérieures à mai 2011, il est nécessaire de mettre à jour le micrologiciel de communication USB de la carte UNO, ce qui se fait par le port USB. Voir [[http://arduino.cc/en/Hacking/DFUProgramming8U2|cette page du projet]] décrivant la manipulation ainsi que [[http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.MaterielUnoMAJFirmwareUSB|ce site en français]] qui explique très bien les opérations à faire. | ||
- | Si le port de sortie ttyUSBx ou ttyACMx n'apparaît pas dans la liste des ports série du logiciel Arduino, une autre page à consulter - en anglais - pour installer le module cdc_acm et lier le matériel au module (fonctionne avec Arduino UNO R3 firmware Rev.001 et Ubuntu studio 14.04 64 bits)[[http://playground.arduino.cc/Linux/All|Installation of arduino on all Linux version]]). En simplifiant : | + | Si le port de sortie //ttyUSBx// ou //ttyACMx// n'apparaît pas dans la liste des ports série du logiciel Arduino, une autre page à consulter - en anglais - pour installer le module cdc_acm et lier le matériel au module (fonctionne avec Arduino UNO R3 firmware Rev.001 et Ubuntu studio 14.04 64 bits)[[http://playground.arduino.cc/Linux/All|Installation of arduino on all Linux version]]). En simplifiant : |
- | * Récupérer les identifiants du vendeur et du produit avec lsusb -v : XXXX et YYYYY | + | * Récupérer les identifiants du vendeur et du produit en saisissant dans un [[:terminal]]: <code>lsusb -v</code> qui répondra par exemple <code>Bus 003 Device 002: ID XXXX:YYYY</code> |
- | * Créer le lien avec le port : en superutilisateur, on créée le fichier /etc/udev/rules.d/99-arduino.rules (sudo gedit /etc/udev/rules.d/99-arduino.rules) | + | * Créer le lien avec le port : avec [[:sudo|les droits superutilisateur]], on [[:tutoriel:comment_modifier_un_fichier|crée]] le fichier **/etc/udev/rules.d/99-arduino.rules** |
- | * On y place : <code>SUBSYSTEMS=="usb", ATTRS{idProduct}=="YYYY", ATTRS{idVendor}=="XXXX", SYMLINK+="ttyACM%n" </code> en remplaçant XXXX ET YYYY | + | * On y place : <file>SUBSYSTEMS=="usb", ATTRS{idProduct}=="YYYY", ATTRS{idVendor}=="XXXX", SYMLINK+="ttyACM%n" </file> en remplaçant XXXX ET YYYY par vos valeurs précédemment récupérées |
- | * On fait charger le module cdc_acm au démarrage. Dans le fichier /etc/modules, en superutilisateur, on rajoute la ligne (sudo gedit /etc/modules) <code>cdc_acm</code> | + | * On fait charger le module ´´cdc_acm´´ au démarrage. Avec les [[:sudo|droits du superutilisateur]] , [[:tutoriel:comment_modifier_un_fichier|modifier le fichier]] **/etc/modules** pour ajouter la ligne <file>cdc_acm</file> |
* On rend le port accessible à l'utilisateur : ce port est dans le groupe dialout. | * On rend le port accessible à l'utilisateur : ce port est dans le groupe dialout. | ||
* On rattache l'utilisateur au groupe dialout : tableau de bord/Système/Utilisateurs et groupes - Gérer les groupes - sélectionner dialout et cliquer sur Propriétés - cocher l'utilisateur | * On rattache l'utilisateur au groupe dialout : tableau de bord/Système/Utilisateurs et groupes - Gérer les groupes - sélectionner dialout et cliquer sur Propriétés - cocher l'utilisateur | ||
- | * On reboot, on branche l'Arduino et on vérifie avec dmesg dans une console que l'on a quelque chose comme : cdc_acm 3-1:1.0: ttyACM0: USB ACM device | + | * On reboot, on branche l'Arduino et on vérifie avec ´´dmesg´´ dans une console que l'on a quelque chose comme : <code>cdc_acm 3-1:1.0: ttyACM0: USB ACM device</code> |
* On lance le logiciel Arduino et dans Menu Outils/Ports série, on sélectionne /dev/ttyACM0 | * On lance le logiciel Arduino et dans Menu Outils/Ports série, on sélectionne /dev/ttyACM0 | ||
<note tip> | <note tip> | ||
Ligne 93: | Ligne 108: | ||
==== Simulation de l'Arduino ==== | ==== Simulation de l'Arduino ==== | ||
+ | |||
+ | Il existe un petit logiciel qui permet de simuler son utilisation simulide sur le [[http://simulide.blogspot.com/|site officiel]]. | ||
Il existe un petit logiciel qui permet de simuler son utilisation, mais il ne semble pas fonctionner sous [[:Wine]], une machine [[:virtualisation|virtuelle]] Windows est ici nécessaire : il s'appelle [[http://www.virtualbreadboard.com|VBB]]. | Il existe un petit logiciel qui permet de simuler son utilisation, mais il ne semble pas fonctionner sous [[:Wine]], une machine [[:virtualisation|virtuelle]] Windows est ici nécessaire : il s'appelle [[http://www.virtualbreadboard.com|VBB]]. | ||
Ligne 102: | Ligne 119: | ||
=====Voir aussi===== | =====Voir aussi===== | ||
* [[http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.HomePage|Une version française du site Arduino]] | * [[http://www.mon-club-elec.fr/pmwiki_reference_arduino/pmwiki.php?n=Main.HomePage|Une version française du site Arduino]] | ||
- | * Le tutoriel Arduino pour les débutants sur [[https://openclassrooms.com/courses/programmez-vos-premiers-montages-avec-arduino|OpenClassrooms]] (ex Site du Zero). | + | * [[https://zestedesavoir.com/tutoriels/686/arduino-premiers-pas-en-informatique-embarquee/|Arduino : premiers pas en informatique embarquée ]] un cours sur Arduino |
- | * [[http://fr.flossmanuals.net/arduino/|Manuel français sur arduino]] et l'électronique libre, réalisé par Flossmanuals Francophone | + | * [[http://fr.flossmanuals.net/arduino/|Manuel français sur Arduino]] et l'électronique libre, réalisé par Flossmanuals Francophone |
- | * [[http://blog.ardublock.com/]] Ardublock programmation graphique de l'arduino. | + | * [[http://blog.ardublock.com/]] Ardublock programmation graphique de l’Arduino. |
+ | * [[https://eskimon.fr/]] blog très détaillé de la programmation avec Arduino. | ||
---- | ---- | ||
//Contributeurs : [[:utilisateurs:mimilus|mimilus]],[[:utilisateurs:sivolc73]], gduteil, pygmee, samcelia.// | //Contributeurs : [[:utilisateurs:mimilus|mimilus]],[[:utilisateurs:sivolc73]], gduteil, pygmee, samcelia.// |