diff --git a/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.json b/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.json deleted file mode 100644 index 02dfa51..0000000 --- a/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "title": "Installer le logiciel Arduino IDE sous Linux", - "_updated_at": "2026-05-16 20:30:09", - "slug": "105-installation-du-logiciel-arduino-ide", - "published": true, - "published_at": "2023-02-19 06:54", - "category": "Électronique", - "tags": { - "tags": [ - "IDE", - "Arduino", - "ESP32", - "ESP8266", - "Arduino Uno", - "ESP", - "IoT" - ] - }, - "seo_title": "", - "seo_description": "", - "og_image": "https://www.abonnel.fr/file?uuid=76ede607-4a6b-434d-b01e-82aa509f3448&name=cover.png" -} diff --git a/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.md b/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.md deleted file mode 100644 index fca7bd9..0000000 --- a/76ede607-4a6b-434d-b01e-82aa509f3448/draft_overlay.md +++ /dev/null @@ -1,215 +0,0 @@ -# Installer le logiciel Arduino IDE sous Linux - -Cet article a été testé avec les distributions suivantes : - -- **Linux Mint 21 / 22 (64 bits)** - -Je privilégie une installation « manuelle » de l'application **Arduino IDE** afin d'utiliser une des dernières versions. Certaines options et paramètres n'apparaissent pas dans les versions packagées des distributions (et la version disponible dans les dépôts officiels est souvent l'ancienne 1.8.x). - -Date de relecture : 16 mai 2026 - -Depuis septembre 2022, **Arduino IDE 2.x** est la version officielle activement développée. Au moment de cette mise à jour, la dernière version stable est **Arduino IDE 2.3.8**. L'ancienne version **1.8.19** (parfois appelée « Legacy IDE » ou « Java IDE ») n'est plus maintenue que pour les correctifs de sécurité critiques ; il est recommandé de migrer vers la 2.x. - -Vous pouvez vérifier la dernière version disponible sur le site officiel : . Adaptez les informations ci-dessous suivant les numéros de version trouvés sur le site arduino.cc. - -## - Méthode recommandée : Arduino IDE 2.x (AppImage) - -Arduino IDE 2.x est distribué sous Linux au format **AppImage**, un format autonome qui ne nécessite aucune installation système. Cette méthode remplace l'ancienne procédure d'extraction d'archive `.tar.xz` utilisée pour la 1.8.x. - -### - Télécharger l'AppImage - -Depuis votre dossier **home** ou un autre dossier personnel, téléchargez l'AppImage Arduino IDE depuis une ligne de commande : - -``` -wget -O arduino-ide.AppImage https://downloads.arduino.cc/arduino-ide/arduino-ide_2.3.8_Linux_64bit.AppImage -``` - -> **Remarque** : le numéro de version dans l'URL évolue. Vérifiez la dernière version sur ou via la page GitHub des releases : . - -### - Prérequis système - -L'AppImage nécessite **FUSE** pour s'exécuter. Sur certaines distributions récentes (Ubuntu 22.04+, Debian 12), il faut installer `libfuse2` : - -``` -sudo apt update -sudo apt install libfuse2 -``` - -### - Rendre l'AppImage exécutable et la déployer - -**ligne 1** : rendre le fichier exécutable. -**ligne 2** : déplacer l'AppImage dans un dossier accessible à tous : `/opt/`. -**ligne 3** : créer un lien symbolique dans `/usr/local/bin/` pour pouvoir lancer l'application depuis n'importe où en tapant simplement `arduino-ide`. - -``` -chmod +x arduino-ide.AppImage -sudo mv arduino-ide.AppImage /opt/arduino-ide -sudo ln -sf /opt/arduino-ide /usr/local/bin/arduino-ide -``` - -### - Créer un raccourci sur le bureau - -Contrairement à la 1.8.x, l'AppImage ne fournit pas de script `install.sh`. Pour créer un raccourci dans le menu des applications, créez le fichier `~/.local/share/applications/arduino-ide.desktop` avec le contenu suivant : - -``` -[Desktop Entry] -Name=Arduino IDE -Comment=Arduino IDE 2.x -Exec=/opt/arduino-ide -Icon=arduino-ide -Terminal=false -Type=Application -Categories=Development;IDE;Electronics; -StartupWMClass=arduino-ide -``` - -Puis actualiser le cache des icônes : - -``` -update-desktop-database ~/.local/share/applications/ -``` - -## - Méthode alternative : Arduino IDE 1.8.19 (Legacy) - -Si vous avez besoin de l'ancienne version (matériel ancien, plugins non portés, etc.), la procédure historique reste fonctionnelle. - -### - Télécharger Arduino IDE 1.8.19 - -``` -wget -O arduino.tar.xz https://downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz -``` - -### - Déployer Arduino IDE Software - -**ligne 1** : déployer Arduino IDE dans un dossier accessible à tous : `/opt/`. L'archive **tar** va extraire les fichiers dans un dossier comportant le numéro de version. - -**ligne 2** : ajuster les droits du dossier extrait. - -**ligne 3** : si un lien `/opt/arduino` existait, le détruire avec **unlink**. - -**ligne 4** : réaliser un alias vers le dossier `/opt/arduino`. De cette manière, on s'affranchit du numéro de version. Nous pouvons également déployer de nouvelles versions sans perturber la précédente. - -**ligne 5** : exécuter le script `install.sh` qui permet de créer un raccourci sur le bureau graphique. - -```bash -sudo tar -xvf arduino.tar.xz -C /opt -sudo chown -R root:root /opt/arduino-1.8.19 -sudo unlink /opt/arduino 2>/dev/null -sudo ln -s /opt/arduino-1.8.19/ /opt/arduino -sudo /opt/arduino/install.sh -``` - -## - Problèmes rencontrés après le déploiement - -### - Droits sur tty et dialout - -Pour pouvoir accéder au port série de la carte Arduino, il faut ajouter l'utilisateur courant aux groupes `tty` et `dialout` : - -``` -sudo usermod -a -G tty $USER -sudo usermod -a -G dialout $USER -``` - -Si vous venez de saisir ces lignes de commande, vous devez **fermer votre session** (ou redémarrer) pour que les nouveaux groupes soient pris en compte. - -### - Serial port not selected / brltty bloque le port - -Sous Mint, Ubuntu et certaines distributions, le service `brltty` (afficheur braille) peut capturer les ports série et empêcher l'IDE de détecter la carte. Si la carte n'apparaît jamais dans `Outils => Port`, désinstallez `brltty` : - -``` -sudo apt remove brltty -``` - -### - Aucune carte n'est détectée - -Plusieurs causes possibles : - -- **Câble USB défectueux** : certains câbles USB sont câblés uniquement pour l'alimentation (charge) et n'ont pas les fils de données. Testez avec un autre câble. -- **Pilote du convertisseur USB-Série manquant** : les clones Arduino utilisent souvent un **CH340** ou un **CH341**. Le pilote est intégré au noyau Linux récent (5.x et +), mais sur de très anciens systèmes il peut manquer. -- **Permissions** : vérifier que l'utilisateur appartient bien au groupe `dialout` (voir section précédente). - -Pour vérifier que la carte est bien détectée par le système : - -``` -dmesg | tail -20 -ls /dev/ttyACM* /dev/ttyUSB* -``` - -Une carte Arduino Uno officielle apparaîtra comme `/dev/ttyACM0`, un clone basé sur CH340 comme `/dev/ttyUSB0`. - -### - Java (Arduino IDE 1.8.x uniquement) - -> Cette section ne concerne **plus** Arduino IDE 2.x, qui est basé sur **Electron** (Theia IDE + arduino-cli) et n'utilise pas Java. - -Pour la 1.8.x, le message suivant peut apparaître : - -``` -java.lang.NullPointerException thrown while loading gnu.io.RXTXCommDriver -``` - -Un Java est embarqué avec l'application (`/opt/arduino/java/bin/java -version`). En cas de problème, installer OpenJDK 8 : - -``` -sudo apt update -sudo apt install openjdk-8-jdk -sudo update-alternatives --config java -``` - -## - Exécuter votre premier programme - -Voici le programme classique d'introduction : il fait clignoter la LED intégrée à la carte (broche 13 sur la plupart des Arduino) toutes les secondes. - -Il n'est pas nécessaire de brancher une LED externe : la LED présente sur la carte conviendra parfaitement à cet exemple. - -Dans l'IDE, ouvrez `Fichier => Exemples => 01.Basics => Blink`. Vous pouvez également copier le code suivant dans votre éditeur : - -```c -/* - Clignotement (Blink) - Allume la LED pendant 1 seconde, - puis l'éteint pendant 1 seconde. -*/ - -// Numéro de la broche à laquelle est connectée la LED. -// LED_BUILTIN désigne la LED intégrée à la carte (13 sur Uno). -int led = LED_BUILTIN; - -// Le code dans cette fonction est exécuté une fois au démarrage. -void setup() { - // On indique que la broche de la LED est une sortie : - // on va modifier sa tension. - pinMode(led, OUTPUT); -} - -// Le code dans cette fonction est exécuté en boucle. -void loop() { - digitalWrite(led, HIGH); // allumer la LED (5 V sur la broche) - delay(1000); // attendre 1000 ms = 1 s - digitalWrite(led, LOW); // éteindre la LED (0 V sur la broche) - delay(1000); // attendre à nouveau 1 seconde -} -``` - -Deux déclarations de fonctions sont **obligatoires** dans tout programme Arduino : - -- `setup()` : exécutée une seule fois au démarrage. -- `loop()` : exécutée en boucle, indéfiniment. - -Dans cet exemple, nous appelons trois fonctions de la bibliothèque Arduino : - -- `pinMode()` : configure une broche en entrée ou en sortie. -- `digitalWrite()` : applique un niveau logique haut (5 V) ou bas (0 V) sur une broche. -- `delay()` : fait une pause exprimée en millisecondes. - -Pour téléverser ce code : - -1. Brancher l'Arduino sur un port USB. -2. Dans `Outils => Type de carte`, sélectionner le modèle exact (ex. *Arduino Uno*). -3. Dans `Outils => Port`, sélectionner le port détecté (ex. `/dev/ttyACM0` ou `/dev/ttyUSB0`). -4. Cliquer sur le bouton **Téléverser** (flèche vers la droite) dans la barre d'outils. - -## - Pour aller plus loin - -- Documentation officielle : -- Référence du langage Arduino : -- Cartes ESP8266 et ESP32 : ajouter les URL de gestionnaire de cartes additionnel dans `Fichier => Préférences`, puis installer le package correspondant via `Outils => Type de carte => Gestionnaire de cartes`. \ No newline at end of file diff --git a/76ede607-4a6b-434d-b01e-82aa509f3448/index.md b/76ede607-4a6b-434d-b01e-82aa509f3448/index.md index 88c0adf..fca7bd9 100644 --- a/76ede607-4a6b-434d-b01e-82aa509f3448/index.md +++ b/76ede607-4a6b-434d-b01e-82aa509f3448/index.md @@ -1,139 +1,215 @@ # Installer le logiciel Arduino IDE sous Linux -Cet article a été testé avec les distributions suivantes -- **Linux Mint 19 64 bits** -- **Linux Debian 9.6 (stretch) 64 bits** -- **MX Linux 18.3** basé sur Linux Debian 9 -- **Zorin OS 16.1** basé sur Linux Debian +Cet article a été testé avec les distributions suivantes : -Je privilégie une installation "manuelle" de l'application **Arduino IDE** afin d'utiliser une des dernières versions. Certaines options et paramètres n'apparaissent pas dans les versions packagées des distributions. J'ai eu le cas avec **Debian 9.6** où je ne pouvais pas utiliser des cartes ESP 8266. +- **Linux Mint 21 / 22 (64 bits)** -Date de relecture : 15 août 2022 +Je privilégie une installation « manuelle » de l'application **Arduino IDE** afin d'utiliser une des dernières versions. Certaines options et paramètres n'apparaissent pas dans les versions packagées des distributions (et la version disponible dans les dépôts officiels est souvent l'ancienne 1.8.x). -Il faut télécharger la version 1.8.19. Vous pouvez vérifier la dernière version disponible depuis le site . Adaptez les informations ci-dessous suivant les informations trouvées sur le site arduino.cc. +Date de relecture : 16 mai 2026 -![](arduino_software_1.8.7.png) +Depuis septembre 2022, **Arduino IDE 2.x** est la version officielle activement développée. Au moment de cette mise à jour, la dernière version stable est **Arduino IDE 2.3.8**. L'ancienne version **1.8.19** (parfois appelée « Legacy IDE » ou « Java IDE ») n'est plus maintenue que pour les correctifs de sécurité critiques ; il est recommandé de migrer vers la 2.x. -## - Télécharger Arduino IDE Software -Depuis mon dossier **home** ou un autre dossier personnel, je télécharge le programme **Arduino IDE**. Je préfère l'effectuer depuis une ligne de commande. +Vous pouvez vérifier la dernière version disponible sur le site officiel : . Adaptez les informations ci-dessous suivant les numéros de version trouvés sur le site arduino.cc. + +## - Méthode recommandée : Arduino IDE 2.x (AppImage) + +Arduino IDE 2.x est distribué sous Linux au format **AppImage**, un format autonome qui ne nécessite aucune installation système. Cette méthode remplace l'ancienne procédure d'extraction d'archive `.tar.xz` utilisée pour la 1.8.x. + +### - Télécharger l'AppImage + +Depuis votre dossier **home** ou un autre dossier personnel, téléchargez l'AppImage Arduino IDE depuis une ligne de commande : ``` -wget -O arduino.tar.xz https:*downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz +wget -O arduino-ide.AppImage https://downloads.arduino.cc/arduino-ide/arduino-ide_2.3.8_Linux_64bit.AppImage ``` -![Téléchargement de l'application **Arduino IDE** dans une fenêtre de Terminal](terminal_install_arduino.png) +> **Remarque** : le numéro de version dans l'URL évolue. Vérifiez la dernière version sur ou via la page GitHub des releases : . -## - Déployer Arduino IDE Software -**ligne 1** : déployer Arduino IDE dans un dossier accessible à tous : `/opt/`. L'archive **tar** va extraire les fichiers dans un dossier comportant le numéro de version. +### - Prérequis système -**ligne 3** : si un lien `/opt/arduino/` existait, détruit le lien sur `/opt/arduino` avec **unlink** +L'AppImage nécessite **FUSE** pour s'exécuter. Sur certaines distributions récentes (Ubuntu 22.04+, Debian 12), il faut installer `libfuse2` : + +``` +sudo apt update +sudo apt install libfuse2 +``` + +### - Rendre l'AppImage exécutable et la déployer + +**ligne 1** : rendre le fichier exécutable. +**ligne 2** : déplacer l'AppImage dans un dossier accessible à tous : `/opt/`. +**ligne 3** : créer un lien symbolique dans `/usr/local/bin/` pour pouvoir lancer l'application depuis n'importe où en tapant simplement `arduino-ide`. + +``` +chmod +x arduino-ide.AppImage +sudo mv arduino-ide.AppImage /opt/arduino-ide +sudo ln -sf /opt/arduino-ide /usr/local/bin/arduino-ide +``` + +### - Créer un raccourci sur le bureau + +Contrairement à la 1.8.x, l'AppImage ne fournit pas de script `install.sh`. Pour créer un raccourci dans le menu des applications, créez le fichier `~/.local/share/applications/arduino-ide.desktop` avec le contenu suivant : + +``` +[Desktop Entry] +Name=Arduino IDE +Comment=Arduino IDE 2.x +Exec=/opt/arduino-ide +Icon=arduino-ide +Terminal=false +Type=Application +Categories=Development;IDE;Electronics; +StartupWMClass=arduino-ide +``` + +Puis actualiser le cache des icônes : + +``` +update-desktop-database ~/.local/share/applications/ +``` + +## - Méthode alternative : Arduino IDE 1.8.19 (Legacy) + +Si vous avez besoin de l'ancienne version (matériel ancien, plugins non portés, etc.), la procédure historique reste fonctionnelle. + +### - Télécharger Arduino IDE 1.8.19 + +``` +wget -O arduino.tar.xz https://downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz +``` + +### - Déployer Arduino IDE Software + +**ligne 1** : déployer Arduino IDE dans un dossier accessible à tous : `/opt/`. L'archive **tar** va extraire les fichiers dans un dossier comportant le numéro de version. + +**ligne 2** : ajuster les droits du dossier extrait. + +**ligne 3** : si un lien `/opt/arduino` existait, le détruire avec **unlink**. **ligne 4** : réaliser un alias vers le dossier `/opt/arduino`. De cette manière, on s'affranchit du numéro de version. Nous pouvons également déployer de nouvelles versions sans perturber la précédente. **ligne 5** : exécuter le script `install.sh` qui permet de créer un raccourci sur le bureau graphique. - +```bash sudo tar -xvf arduino.tar.xz -C /opt sudo chown -R root:root /opt/arduino-1.8.19 -sudo unlink /opt/arduino +sudo unlink /opt/arduino 2>/dev/null sudo ln -s /opt/arduino-1.8.19/ /opt/arduino sudo /opt/arduino/install.sh - +``` ## - Problèmes rencontrés après le déploiement + ### - Droits sur tty et dialout -Il faut ajouter l'utilisateur de l'application **Arduino IDE** aux groupes `tty` et `dialout`. L'exemple suivant permet d'ajouter l'utilisateur `cedric` aux groupes `tty` et `dialout`. + +Pour pouvoir accéder au port série de la carte Arduino, il faut ajouter l'utilisateur courant aux groupes `tty` et `dialout` : ``` sudo usermod -a -G tty $USER sudo usermod -a -G dialout $USER ``` -Si vous venez de saisir les lignes de commandes `usermod`, vous devez redémarrer. +Si vous venez de saisir ces lignes de commande, vous devez **fermer votre session** (ou redémarrer) pour que les nouveaux groupes soient pris en compte. + +### - Serial port not selected / brltty bloque le port + +Sous Mint, Ubuntu et certaines distributions, le service `brltty` (afficheur braille) peut capturer les ports série et empêcher l'IDE de détecter la carte. Si la carte n'apparaît jamais dans `Outils => Port`, désinstallez `brltty` : + +``` +sudo apt remove brltty +``` + +### - Aucune carte n'est détectée + +Plusieurs causes possibles : + +- **Câble USB défectueux** : certains câbles USB sont câblés uniquement pour l'alimentation (charge) et n'ont pas les fils de données. Testez avec un autre câble. +- **Pilote du convertisseur USB-Série manquant** : les clones Arduino utilisent souvent un **CH340** ou un **CH341**. Le pilote est intégré au noyau Linux récent (5.x et +), mais sur de très anciens systèmes il peut manquer. +- **Permissions** : vérifier que l'utilisateur appartient bien au groupe `dialout` (voir section précédente). + +Pour vérifier que la carte est bien détectée par le système : + +``` +dmesg | tail -20 +ls /dev/ttyACM* /dev/ttyUSB* +``` + +Une carte Arduino Uno officielle apparaîtra comme `/dev/ttyACM0`, un clone basé sur CH340 comme `/dev/ttyUSB0`. + +### - Java (Arduino IDE 1.8.x uniquement) + +> Cette section ne concerne **plus** Arduino IDE 2.x, qui est basé sur **Electron** (Theia IDE + arduino-cli) et n'utilise pas Java. + +Pour la 1.8.x, le message suivant peut apparaître : -### - Version de Java incorrecte -Le message suivant peut apparaître dans l'application **Arduino IDE** : ``` java.lang.NullPointerException thrown while loading gnu.io.RXTXCommDriver ``` -Il se peut que la version de Java ne soit pas bonne. Vous pouvez le vérifier avec `java -version`. Toutefois, un java est intégré avec l'application **Arduino IDE**. (`/opt/arduino/java/bin/java -version` me renvoie la version `java version "1.8.0_191"`). - -Il faudra peut être toutefois changer les paramètres java de l'OS. -J'ai testé avec OpenJDK Java 8 avec succès. Par contre Java 10 et 11 ne sont pas compatibles. - -Pour procéder à l'installation de Java 8 et choisir par défaut cette version : +Un Java est embarqué avec l'application (`/opt/arduino/java/bin/java -version`). En cas de problème, installer OpenJDK 8 : ``` -sudo apt-get update - -sudo apt-get install openjdk-8-jdk - +sudo apt update +sudo apt install openjdk-8-jdk sudo update-alternatives --config java ``` -![](terminal_alternatives_config_java.png) - -### - Serial port not selected -Dans certains cas, sous Mint, il faut désinstaller `brltty` - -``` -sudo apt-get remove brltty -``` - -### - Aucune carte n'est détectée -![](20220128-074733.png) - -Le câble USB peut être également non cablé pour les données (data) - -Pour rappel, voici le cablage d'un port USB - -![](20220128-075003.png) - ## - Exécuter votre premier programme -Voici donc notre premier programme (celui qui est décrit dans la vidéo). -Cette suite d'instructions va faire clignoter une LED branchée sur la broche 13 de l'Arduino toutes les secondes.\\ -Il n'est pas nécessaire de brancher une LED, car rappelez-vous, la LED sur la carte, mentionnée dans la , servira dans notre exemple sans forcément réalisée un montage électronique. +Voici le programme classique d'introduction : il fait clignoter la LED intégrée à la carte (broche 13 sur la plupart des Arduino) toutes les secondes. -Lorsque vous utilisez le logiciel Arduino, il peut être trouvé en cliquant sur `Fichier => Exemples => 01.Basics => Blink`. +Il n'est pas nécessaire de brancher une LED externe : la LED présente sur la carte conviendra parfaitement à cet exemple. -Vous pouvez également copier le code suivant dans votre éditeur : +Dans l'IDE, ouvrez `Fichier => Exemples => 01.Basics => Blink`. Vous pouvez également copier le code suivant dans votre éditeur : - +```c /* - Clignotement + Clignotement (Blink) Allume la LED pendant 1 seconde, - puis l'éteint pendant 0,5 seconde. + puis l'éteint pendant 1 seconde. */ - -* Numéro de la broche à laquelle est -* connectée la LED -int led = 13; - -* le code dans cette fonction est exécuté une fois au début + +// Numéro de la broche à laquelle est connectée la LED. +// LED_BUILTIN désigne la LED intégrée à la carte (13 sur Uno). +int led = LED_BUILTIN; + +// Le code dans cette fonction est exécuté une fois au démarrage. void setup() { -- indique que la broche de la LED une sortie : -- on va modifier sa tension + // On indique que la broche de la LED est une sortie : + // on va modifier sa tension. pinMode(led, OUTPUT); } - -* le code dans cette fonction est exécuté en boucle + +// Le code dans cette fonction est exécuté en boucle. void loop() { - digitalWrite(led, HIGH); * allumer la LED (tension 5V sur la broche) - delay(1000); * attendre 1000ms = 1s - digitalWrite(led, LOW); * éteindre la LED (tension 0V sur la broche) - delay(1000); * attendre à nouveau 1seconde + digitalWrite(led, HIGH); // allumer la LED (5 V sur la broche) + delay(1000); // attendre 1000 ms = 1 s + digitalWrite(led, LOW); // éteindre la LED (0 V sur la broche) + delay(1000); // attendre à nouveau 1 seconde } - +``` -Deux déclaration de fonctions sont obligatoires : -- setup -- loop +Deux déclarations de fonctions sont **obligatoires** dans tout programme Arduino : -Dans ce bout de code, nous appelons trois fonctions : -- digitalWrite -- pinMode -- delay +- `setup()` : exécutée une seule fois au démarrage. +- `loop()` : exécutée en boucle, indéfiniment. -Pour exécuter ce bout de code, il faudra brancher l'Arduino sur port USB et sélectionner dans le menu `Outils => Port`, sélectionner `/dev/ttyACMO`. \ No newline at end of file +Dans cet exemple, nous appelons trois fonctions de la bibliothèque Arduino : + +- `pinMode()` : configure une broche en entrée ou en sortie. +- `digitalWrite()` : applique un niveau logique haut (5 V) ou bas (0 V) sur une broche. +- `delay()` : fait une pause exprimée en millisecondes. + +Pour téléverser ce code : + +1. Brancher l'Arduino sur un port USB. +2. Dans `Outils => Type de carte`, sélectionner le modèle exact (ex. *Arduino Uno*). +3. Dans `Outils => Port`, sélectionner le port détecté (ex. `/dev/ttyACM0` ou `/dev/ttyUSB0`). +4. Cliquer sur le bouton **Téléverser** (flèche vers la droite) dans la barre d'outils. + +## - Pour aller plus loin + +- Documentation officielle : +- Référence du langage Arduino : +- Cartes ESP8266 et ESP32 : ajouter les URL de gestionnaire de cartes additionnel dans `Fichier => Préférences`, puis installer le package correspondant via `Outils => Type de carte => Gestionnaire de cartes`. \ No newline at end of file diff --git a/76ede607-4a6b-434d-b01e-82aa509f3448/meta.json b/76ede607-4a6b-434d-b01e-82aa509f3448/meta.json index 82885bd..f06fda3 100644 --- a/76ede607-4a6b-434d-b01e-82aa509f3448/meta.json +++ b/76ede607-4a6b-434d-b01e-82aa509f3448/meta.json @@ -4,15 +4,34 @@ "title": "Installer le logiciel Arduino IDE sous Linux", "author": "cedric@abonnel.fr", "published": true, - "published_at": "2023-02-19 06:54:59", + "featured": false, + "published_at": "2023-02-19 06:54", "created_at": "2023-02-19 06:54:59", - "updated_at": "2023-02-19 06:54:59", - "revisions": [], + "updated_at": "2026-05-16 20:30:11", + "revisions": [ + { + "n": 1, + "date": "2026-05-16 20:30:11", + "comment": "Tags modifiés, contenu modifié, image de couverture modifiée", + "title": "Installer le logiciel Arduino IDE sous Linux" + } + ], "cover": "cover.png", "files_meta": [], "external_links": [], "seo_title": "", "seo_description": "", - "og_image": "", - "category": "Électronique" + "og_image": "https://www.abonnel.fr/file?uuid=76ede607-4a6b-434d-b01e-82aa509f3448&name=cover.png", + "category": "Électronique", + "tags": { + "tags": [ + "IDE", + "Arduino", + "ESP32", + "ESP8266", + "Arduino Uno", + "ESP", + "IoT" + ] + } } diff --git a/76ede607-4a6b-434d-b01e-82aa509f3448/revisions/0001.md b/76ede607-4a6b-434d-b01e-82aa509f3448/revisions/0001.md new file mode 100644 index 0000000..88c0adf --- /dev/null +++ b/76ede607-4a6b-434d-b01e-82aa509f3448/revisions/0001.md @@ -0,0 +1,139 @@ +# Installer le logiciel Arduino IDE sous Linux + +Cet article a été testé avec les distributions suivantes +- **Linux Mint 19 64 bits** +- **Linux Debian 9.6 (stretch) 64 bits** +- **MX Linux 18.3** basé sur Linux Debian 9 +- **Zorin OS 16.1** basé sur Linux Debian + +Je privilégie une installation "manuelle" de l'application **Arduino IDE** afin d'utiliser une des dernières versions. Certaines options et paramètres n'apparaissent pas dans les versions packagées des distributions. J'ai eu le cas avec **Debian 9.6** où je ne pouvais pas utiliser des cartes ESP 8266. + +Date de relecture : 15 août 2022 + +Il faut télécharger la version 1.8.19. Vous pouvez vérifier la dernière version disponible depuis le site . Adaptez les informations ci-dessous suivant les informations trouvées sur le site arduino.cc. + +![](arduino_software_1.8.7.png) + +## - Télécharger Arduino IDE Software +Depuis mon dossier **home** ou un autre dossier personnel, je télécharge le programme **Arduino IDE**. Je préfère l'effectuer depuis une ligne de commande. + +``` +wget -O arduino.tar.xz https:*downloads.arduino.cc/arduino-1.8.19-linux64.tar.xz +``` + +![Téléchargement de l'application **Arduino IDE** dans une fenêtre de Terminal](terminal_install_arduino.png) + +## - Déployer Arduino IDE Software +**ligne 1** : déployer Arduino IDE dans un dossier accessible à tous : `/opt/`. L'archive **tar** va extraire les fichiers dans un dossier comportant le numéro de version. + +**ligne 3** : si un lien `/opt/arduino/` existait, détruit le lien sur `/opt/arduino` avec **unlink** + +**ligne 4** : réaliser un alias vers le dossier `/opt/arduino`. De cette manière, on s'affranchit du numéro de version. Nous pouvons également déployer de nouvelles versions sans perturber la précédente. + +**ligne 5** : exécuter le script `install.sh` qui permet de créer un raccourci sur le bureau graphique. + + +sudo tar -xvf arduino.tar.xz -C /opt +sudo chown -R root:root /opt/arduino-1.8.19 +sudo unlink /opt/arduino +sudo ln -s /opt/arduino-1.8.19/ /opt/arduino +sudo /opt/arduino/install.sh + + +## - Problèmes rencontrés après le déploiement +### - Droits sur tty et dialout +Il faut ajouter l'utilisateur de l'application **Arduino IDE** aux groupes `tty` et `dialout`. L'exemple suivant permet d'ajouter l'utilisateur `cedric` aux groupes `tty` et `dialout`. + +``` +sudo usermod -a -G tty $USER +sudo usermod -a -G dialout $USER +``` + +Si vous venez de saisir les lignes de commandes `usermod`, vous devez redémarrer. + +### - Version de Java incorrecte +Le message suivant peut apparaître dans l'application **Arduino IDE** : +``` +java.lang.NullPointerException thrown while loading gnu.io.RXTXCommDriver +``` + +Il se peut que la version de Java ne soit pas bonne. Vous pouvez le vérifier avec `java -version`. Toutefois, un java est intégré avec l'application **Arduino IDE**. (`/opt/arduino/java/bin/java -version` me renvoie la version `java version "1.8.0_191"`). + +Il faudra peut être toutefois changer les paramètres java de l'OS. +J'ai testé avec OpenJDK Java 8 avec succès. Par contre Java 10 et 11 ne sont pas compatibles. + +Pour procéder à l'installation de Java 8 et choisir par défaut cette version : + +``` +sudo apt-get update + +sudo apt-get install openjdk-8-jdk + +sudo update-alternatives --config java +``` + +![](terminal_alternatives_config_java.png) + +### - Serial port not selected +Dans certains cas, sous Mint, il faut désinstaller `brltty` + +``` +sudo apt-get remove brltty +``` + +### - Aucune carte n'est détectée +![](20220128-074733.png) + +Le câble USB peut être également non cablé pour les données (data) + +Pour rappel, voici le cablage d'un port USB + +![](20220128-075003.png) + +## - Exécuter votre premier programme +Voici donc notre premier programme (celui qui est décrit dans la vidéo). + +Cette suite d'instructions va faire clignoter une LED branchée sur la broche 13 de l'Arduino toutes les secondes.\\ +Il n'est pas nécessaire de brancher une LED, car rappelez-vous, la LED sur la carte, mentionnée dans la , servira dans notre exemple sans forcément réalisée un montage électronique. + +Lorsque vous utilisez le logiciel Arduino, il peut être trouvé en cliquant sur `Fichier => Exemples => 01.Basics => Blink`. + +Vous pouvez également copier le code suivant dans votre éditeur : + + +/* + Clignotement + Allume la LED pendant 1 seconde, + puis l'éteint pendant 0,5 seconde. +*/ + +* Numéro de la broche à laquelle est +* connectée la LED +int led = 13; + +* le code dans cette fonction est exécuté une fois au début +void setup() { +- indique que la broche de la LED une sortie : +- on va modifier sa tension + pinMode(led, OUTPUT); +} + +* le code dans cette fonction est exécuté en boucle +void loop() { + digitalWrite(led, HIGH); * allumer la LED (tension 5V sur la broche) + delay(1000); * attendre 1000ms = 1s + digitalWrite(led, LOW); * éteindre la LED (tension 0V sur la broche) + delay(1000); * attendre à nouveau 1seconde +} + + +Deux déclaration de fonctions sont obligatoires : +- setup +- loop + +Dans ce bout de code, nous appelons trois fonctions : +- digitalWrite +- pinMode +- delay + +Pour exécuter ce bout de code, il faudra brancher l'Arduino sur port USB et sélectionner dans le menu `Outils => Port`, sélectionner `/dev/ttyACMO`. \ No newline at end of file