publish: Installer le logiciel Arduino IDE sous Linux
This commit is contained in:
@@ -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"
|
||||
}
|
||||
@@ -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 : <https://www.arduino.cc/en/software>. 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 <https://www.arduino.cc/en/software> ou via la page GitHub des releases : <https://github.com/arduino/arduino-ide/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 : <https://docs.arduino.cc/>
|
||||
- Référence du langage Arduino : <https://www.arduino.cc/reference/fr/>
|
||||
- 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`.
|
||||
@@ -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 <https:*www.arduino.cc/en/Main/Software>. Adaptez les informations ci-dessous suivant les informations trouvées sur le site arduino.cc.
|
||||
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.
|
||||
|
||||
## - 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 : <https://www.arduino.cc/en/software>. 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
|
||||
```
|
||||
|
||||

|
||||
> **Remarque** : le numéro de version dans l'URL évolue. Vérifiez la dernière version sur <https://www.arduino.cc/en/software> ou via la page GitHub des releases : <https://github.com/arduino/arduino-ide/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.
|
||||
|
||||
<code BASH [enable_line_numbers="true", start_line_numbers_at="1"]>
|
||||
```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
|
||||
</code>
|
||||
```
|
||||
|
||||
## - 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
|
||||
```
|
||||
|
||||

|
||||
|
||||
### - 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
|
||||

|
||||
|
||||
Le câble USB peut être également non cablé pour les données (data)
|
||||
|
||||
Pour rappel, voici le cablage d'un port USB
|
||||
|
||||

|
||||
|
||||
## - 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 :
|
||||
|
||||
<code C basics-blink.c [enable_line_numbers="true", start_line_numbers_at="1"]>
|
||||
```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
|
||||
}
|
||||
</code>
|
||||
```
|
||||
|
||||
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`.
|
||||
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 : <https://docs.arduino.cc/>
|
||||
- Référence du langage Arduino : <https://www.arduino.cc/reference/fr/>
|
||||
- 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`.
|
||||
@@ -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"
|
||||
]
|
||||
}
|
||||
}
|
||||
|
||||
@@ -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 <https:*www.arduino.cc/en/Main/Software>. Adaptez les informations ci-dessous suivant les informations trouvées sur le site arduino.cc.
|
||||
|
||||

|
||||
|
||||
## - 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
|
||||
```
|
||||
|
||||

|
||||
|
||||
## - 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.
|
||||
|
||||
<code BASH [enable_line_numbers="true", start_line_numbers_at="1"]>
|
||||
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
|
||||
</code>
|
||||
|
||||
## - 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
|
||||
```
|
||||
|
||||

|
||||
|
||||
### - 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
|
||||

|
||||
|
||||
Le câble USB peut être également non cablé pour les données (data)
|
||||
|
||||
Pour rappel, voici le cablage d'un port USB
|
||||
|
||||

|
||||
|
||||
## - 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 :
|
||||
|
||||
<code C basics-blink.c [enable_line_numbers="true", start_line_numbers_at="1"]>
|
||||
/*
|
||||
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
|
||||
}
|
||||
</code>
|
||||
|
||||
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`.
|
||||
Reference in New Issue
Block a user