Apprenez à programmer les cartes ESP32 et ESP8266 NodeMCU à l’aide de VS Code (Microsoft Visual Studio Code) avec l’extension PlatformIO IDE. Nous expliquons comment installer le logiciel sur les systèmes d’exploitation Windows, Mac OS X ou Ubuntu.

L’IDE Arduino fonctionne très bien pour les petites applications. Cependant, pour les projets avancés avec plus de 200 lignes de code, plusieurs fichiers et d’autres fonctionnalités avancées telles que la saisie semi-automatique et la vérification des erreurs, VS Code avec l’extension PlatformIO IDE est la meilleure alternative.
Dans ce didacticiel, nous aborderons les sujets suivants :
A) Installation de VS Code sur Windows (Code Visual Studio)
Aller à https://code.visualstudio.com/ et téléchargez la version stable pour votre système d’exploitation (Windows).

Cliquez sur l’assistant d’installation pour démarrer l’installation et suivez toutes les étapes pour terminer l’installation. Acceptez l’accord et appuyez sur le bouton Suivant.

Sélectionnez les options suivantes et cliquez sur Suivant.

Appuyez sur le bouton Installer.

Enfin, cliquez sur Terminer pour terminer l’installation.

Ouvrez VS Code et vous serez accueilli par un onglet Bienvenue avec les notes publiées de la dernière version.

C’est ça. Visual Studio Code a été installé avec succès.
Installer Python sur Windows
Pour programmer les cartes ESP32 et ESP8266 avec PlatformIO IDE, vous avez besoin de Python 3.5 ou supérieur installé sur votre ordinateur. Nous utilisons Python 3.8.5.
Aller à python.org/download et téléchargez Python 3.8.5 ou une version plus récente.
Ouvrez le fichier téléchargé pour démarrer l’assistant d’installation de Python.
La fenêtre suivante apparaît.

IMPORTANT : Assurez-vous de cocher l’option Ajouter Python 3.8 à PATH. Ensuite, vous pouvez cliquer sur le bouton Installer maintenant.
Une fois l’installation réussie, vous obtiendrez le message suivant.

Vous pouvez cliquer sur le bouton Fermer.
Maintenant, allez dans cette section pour installer l’extension PlatformIO IDE.
B) Installation de VS Code sur Mac OS X (Visual Studio Code)
Aller à https://code.visualstudio.com/ et téléchargez la version stable pour votre système d’exploitation (Mac OS X).

Après avoir téléchargé le fichier d’application Visual Studio Code, vous serez invité avec le message suivant. Appuyez sur le bouton « Ouvrir ».

Ou ouvrez votre dossier Téléchargements et ouvrez Visual Studio Code.

Après cela, vous serez accueilli par un onglet Bienvenue avec les notes publiées de la dernière version.

C’est ça. Visual Studio Code a été installé avec succès.
Installation de Python sur Mac OS X
Pour programmer les cartes ESP32 et ESP8266 avec PlatformIO IDE, vous avez besoin de Python 3.5 ou supérieur installé sur votre ordinateur. Nous utilisons Python 3.8.5.
Pour installer Python, j’utiliserai Homebrew. Si vous n’avez pas la commande brew disponible, tapez la commande suivante :
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

Ensuite, exécutez la commande brew pour installer Python 3.X :
$ brew install python3

Maintenant, allez dans cette section pour installer l’extension PlatformIO IDE.
C) Installation de VS Code sur Linux Ubuntu (Visual Studio Code)
Aller à https://code.visualstudio.com/ et téléchargez la version stable pour votre système d’exploitation (Linux Ubuntu).

Enregistrez le fichier d’installation :

Pour l’installer, ouvrez une fenêtre Terminal, accédez à votre dossier Téléchargements et exécutez la commande suivante pour installer VS Code.
$ cd Downloads
~/Downloads $ sudo apt install ./code_1.49.1-1600299189_amd64.deb
Une fois l’installation terminée, VS Code devrait être disponible dans le menu de vos applications.

Ouvrez VS Code et vous serez accueilli par un onglet Bienvenue avec les notes publiées de la dernière version.

C’est ça. Visual Studio Code a été installé avec succès.
Installer Python sur Linux Ubuntu
Pour programmer les cartes ESP32 et ESP8266 avec PlatformIO IDE, vous avez besoin de Python 3.5 ou supérieur installé sur votre ordinateur. Nous utilisons Python 3.8.
Ouvrez la fenêtre Terminal et vérifiez que Python 3 est déjà installé.
$ python3 --version
python 3.8.2

Comme vous pouvez le voir dans la figure précédente, Python 3.8.2 est déjà installé.
Si Python 3.8.X n’est pas installé, exécutez la commande suivante pour l’installer :
$ sudo apt install python3
Que Python soit déjà installé ou non, vous devez exécuter la commande suivante pour installer les utilitaires Python.
$ sudo apt install python3-distutils

Maintenant, allez dans cette section pour installer l’extension PlatformIO IDE.
Installation de l’extension IDE PlatformIO sur VS Code
Il est possible de programmer les cartes ESP32 et ESP8266 en utilisant VS Code avec l’extension PlatformIO IDE. Suivez les étapes suivantes pour installer l’extension PlatformIO IDE.
Code VS ouvert :
- Cliquez sur l’icône Extensions ou appuyez sur Ctrl+Maj+X pour ouvrir l’onglet Extensions
- Recherchez « PlatformIO IDE »
- Sélectionnez la première option
- Enfin, cliquez sur le bouton Installer (Remarque : l’installation peut prendre quelques minutes)

Après l’installation, assurez-vous que l’extension PlatformIO IDE est activée comme indiqué ci-dessous.

Après cela, l’icône PlatformIO devrait apparaître dans la barre latérale gauche ainsi qu’une icône Accueil qui vous redirige vers l’accueil PlatformIO.

Ça y est, l’extension PlatformIO IDE a été ajoutée avec succès à VS Code.
Si vous ne voyez pas l’icône PIO et les outils rapides en bas, vous devrez peut-être redémarrer le code VS pour que les modifications prennent effet.
Dans tous les cas, nous vous recommandons de redémarrer VS Code avant de continuer.
Présentation de l’interface rapide du code VS
Ouvrez le code VS. L’écran d’impression suivant montre la signification de chaque icône sur la barre latérale gauche et ses raccourcis :

- Explorateur de fichiers
- Rechercher dans les fichiers
- Gestion du code source (à l’aide de gist)
- Lancez et déboguez votre code
- Gérer les extensions
De plus, vous pouvez appuyer sur Ctrl+Maj+P ou aller dans Affichage > Palette de commandes… pour afficher toutes les commandes disponibles. Si vous recherchez une commande et que vous ne savez pas où elle se trouve ni son raccourci, il vous suffit d’accéder à la palette de commandes et de la rechercher.
En bas, il y a une barre bleue avec les commandes PlatformIO.

Voici ce que fait l’icône de gauche à droite :
- PlatformIO Accueil
- Construire/Compiler
- Télécharger
- Faire le ménage
- Moniteur série
- Nouvelle borne
Si vous passez votre souris sur les icônes, cela montrera ce que fait chaque icône.
Alternativement, vous pouvez également cliquer sur l’icône PIO pour voir toutes les tâches PlatformIO.

Si les tâches ne s’affichent pas sur votre IDE lorsque vous cliquez sur l’icône, vous devrez peut-être cliquer sur l’icône à trois points en haut et activer les tâches PlatformIO comme indiqué ci-dessous.

Présentation de l’IDE PlatformIO
Pour que vous ayez un aperçu du fonctionnement de PlatformIO sur le code VS, nous vous montrerons comment créer, enregistrer et télécharger un croquis « LED clignotante » sur votre carte ESP32 ou ESP8266.
Créer un nouveau projet
Sur VS Code, cliquez sur l’icône PlattfomIO Home. Cliquez sur + Nouveau projet pour démarrer un nouveau projet.

Donnez un nom à votre projet (par exemple Blink_LED) et sélectionnez la carte que vous utilisez. Dans notre cas, nous utilisons le DOIT ESP32 DEVKIT V1. Le Framework doit être « Arduino » pour utiliser le noyau Arduino.
Vous pouvez choisir l’emplacement par défaut pour enregistrer votre projet ou un emplacement personnalisé.
L’emplacement par défaut est dans ce chemin Documents > PlatformIO > Projects. Pour ce test, vous pouvez utiliser l’emplacement par défaut. Enfin, cliquez sur « Terminer ».

Pour cet exemple, nous utiliserons le Carte DEVKIT DOIT ESP32. Si vous utilisez un Carte ESP8266 NodeMCU le processus est très similaire, il vous suffit de sélectionner votre carte ESP8266 :

Le projet Blink_LED doit être accessible depuis l’onglet Explorer.

VS Code et PlatformIO ont une structure de dossiers différente de celle du projet .ino standard. Si vous cliquez sur l’onglet Explorateur, vous verrez tous les fichiers qu’il a créés sous votre dossier de projet. Cela peut sembler beaucoup de fichiers avec lesquels travailler. Mais ne vous inquiétez pas, vous n’aurez généralement qu’à traiter un ou deux de ces fichiers.
Attention : vous ne devez pas supprimer, modifier ou déplacer les dossiers et le fichier platformio.ini. Sinon, vous ne pourrez plus compiler votre projet avec PlatformIO.
fichier platformio.ini
Le fichier platformio.ini est le fichier de configuration PlatformIO pour votre projet. Il montre la plate-forme, le tableau et le cadre de votre projet. Vous pouvez également ajouter d’autres configurations telles que des bibliothèques à inclure, des options de téléchargement, la modification du débit en bauds du moniteur série et d’autres configurations.

- plateforme : qui correspond au SoC utilisé par la carte.
- board : la carte de développement que vous utilisez.
- framework : l’environnement logiciel qui exécutera le code du projet.
Avec l’ESP32 et l’ESP8266, si vous souhaitez utiliser un débit en bauds de 115200 dans votre Serial Monitor, il vous suffit d’ajouter la ligne suivante à votre fichier platformio.ini.
monitor_speed = 115200
Après cela, assurez-vous d’enregistrer les modifications apportées au fichier en appuyant sur Ctrl + S.
Dans ce fichier, vous pouvez également inclure l’identifiant des bibliothèques que vous utiliserez dans votre projet à l’aide de la directive lib_deps, comme nous le verrons plus tard.
dossier src
Le dossier src est votre dossier de travail. Sous le dossier src, il y a un fichier main.cpp. C’est là que vous écrivez votre code. Cliquez sur ce fichier. La structure d’un programme Arduino devrait s’ouvrir avec les fonctions setup() et loop().

Dans PlatformIO, tous vos croquis Arduino doivent commencer par le #include
Téléchargement de code à l’aide de PlatformIO IDE : ESP32/ESP8266
Copiez le code suivant dans votre fichier main.cpp.
/*********
Rui Santos
Complete project details at https://Raspberryme.com/vs-code-platformio-ide-esp32-esp8266-arduino/
*********/
#include <Arduino.h>
#define LED 2
void setup() {
// put your setup code here, to run once:
Serial.begin(115200);
pinMode(LED, OUTPUT);
}
void loop() {
// put your main code here, to run repeatedly:
digitalWrite(LED, HIGH);
Serial.println("LED is on");
delay(1000);
digitalWrite(LED, LOW);
Serial.println("LED is off");
delay(1000);
}
Ce code fait clignoter la LED intégrée toutes les secondes. Il fonctionne avec les cartes ESP32 et ESP8266 (les deux ont la LED intégrée connectée au GPIO 2).
Nous vous recommandons de copier ce code manuellement, afin de voir la saisie semi-automatique et d’autres fonctionnalités intéressantes de l’IDE en action. De plus, si vous avez une erreur de syntaxe quelque part dans votre programme, il la soulignera en rouge avant même la compilation.
Après cela, appuyez sur Ctrl + S ou accédez à Fichier> Enregistrer pour enregistrer le fichier.
Maintenant, vous pouvez cliquer sur l’icône Télécharger pour compiler et télécharger le code. Vous pouvez également accéder au menu Tâches du projet PIO et sélectionner Télécharger.

Si le code est téléchargé avec succès, vous devriez obtenir le message suivant.

Après avoir téléchargé le code, l’ESP32 ou l’ESP8266 devrait faire clignoter sa LED intégrée toutes les secondes.

Maintenant, cliquez sur l’icône Serial Monitor et vous devriez le voir imprimer l’état actuel de la LED.

Remarque : si vous ne voyez pas la fenêtre Terminal, allez dans le menu Terminal > Nouveau Terminal.
Détecter le port COM
PlatformIO détectera automatiquement le port auquel votre carte est connectée. Pour vérifier les appareils connectés, vous pouvez accéder à la page d’accueil PIO et cliquer sur l’icône Appareils.

Dépannage
Si lorsque vous essayez de télécharger le code, vous obtenez l’erreur suivante : « Échec de la connexion à ESP32 : Délai d’attente dépassé pour l’en-tête du paquet », cela signifie généralement que votre carte n’est pas en mode clignotant lorsque vous téléchargez le code.
Lorsque cela se produit, vous devez appuyer sur le bouton BOOT intégré à l’ESP32 lorsque vous commencez à voir beaucoup de points dans la fenêtre de débogage.
Si vous ne voulez pas avoir à appuyer sur le bouton BOOT à chaque fois que vous téléchargez un nouveau code, vous pouvez suivre ce guide : [SOLVED] Échec de la connexion à ESP32 : expiration du délai d’attente pour l’en-tête du paquet.
Modification du débit en bauds du moniteur série – PlatformIO IDE
Le débit en bauds par défaut utilisé par PlatformIO est de 9600. Cependant, il est possible de configurer une valeur différente comme mentionné précédemment. Dans l’explorateur de fichiers, sous votre dossier de projet, ouvrez le fichier platformio.ini et ajoutez la ligne suivante :
monitor_speed = baud_rate
Par exemple:
monitor_speed = 115200

Après cela, enregistrez ce fichier.
Installation des bibliothèques ESP32/ESP8266 sur PlatformIO IDE
Suivez la procédure suivante si vous devez installer des bibliothèques dans PlatformIO IDE.
Cliquez sur l’icône Accueil pour accéder à PlatformIO Home. Cliquez sur l’icône Bibliothèques dans la barre latérale gauche.
Recherchez la bibliothèque que vous souhaitez installer. Par exemple Adafruit_BME280.

Cliquez sur la bibliothèque que vous souhaitez inclure dans votre projet. Cliquez ensuite sur Ajouter au projet.

Sélectionnez le projet dans lequel vous souhaitez utiliser la bibliothèque.

Cela ajoutera l’identifiant de la bibliothèque à l’aide de la directive lib_deps sur le fichier platformio.ini. Si vous ouvrez le fichier platformio.ini de votre projet, il devrait ressembler à celui illustré dans l’image suivante.

Alternativement, dans la fenêtre de la bibliothèque, si vous sélectionnez l’onglet Installation et faites défiler un peu, vous verrez l’identifiant de la bibliothèque. Vous pouvez choisir n’importe lequel de ces identifiants en fonction des options que vous souhaitez utiliser. Les identifiants de la bibliothèque sont surlignés en rouge.

Ensuite, allez dans le fichier platformio.ini de votre projet et collez l’identifiant de la bibliothèque dans ce fichier, comme ceci :
lib_deps = adafruit/Adafruit BME280 [email protected]^2.1.0
Si vous avez besoin de plusieurs bibliothèques, vous pouvez séparer leur nom par une virgule ou les mettre sur des lignes différentes. Par exemple:
lib_deps =
arduino-libraries/Arduino_JSON @ 0.1.0
adafruit/Adafruit BME280 Library @ ^2.1.0
adafruit/Adafruit Unified Sensor @ ^1.1.4
PlatformIO dispose d’un puissant gestionnaire de bibliothèque intégré, qui vous permet de spécifier des dépendances personnalisées par projet dans le fichier de configuration du projet platformio.ini à l’aide de lib_deps. Cela indiquera à PlatformIO de télécharger automatiquement la bibliothèque et toutes ses dépendances lorsque vous enregistrez le fichier de configuration ou lorsque vous compilez votre projet.
Ouvrir un dossier de projet
Pour ouvrir un dossier de projet existant sur PlatformIO, ouvrez VS Code, accédez à PlatformIO Home et cliquez sur Open Project. Parcourez les fichiers et sélectionnez votre dossier de projet.

PlatformIO ouvrira tous les fichiers dans le dossier du projet.
Thèmes de couleur de code VS
VS Code vous permet de choisir entre différents thèmes de couleurs. Accédez à l’icône Gérer et sélectionnez Thème de couleur. Vous pouvez ensuite choisir parmi plusieurs thèmes clairs et sombres différents.

Liste des raccourcis
Pour une liste complète des raccourcis VS Code pour Windows, Mac OS X ou Linux, consultez le lien suivant :
Conclusion
Dans ce didacticiel, vous avez appris à installer et à préparer Visual Studio Code pour qu’il fonctionne avec les cartes ESP32 et ESP8266. VS Code avec l’extension PlatformIO IDE est une excellente alternative à l’IDE Arduino classique, en particulier lorsque vous travaillez sur des croquis plus avancés pour des applications plus importantes.
Voici quelques-uns des avantages de l’utilisation de VS Code avec PlatformIO IDE sur Arduino IDE :
- Il détecte automatiquement le port COM auquel votre carte est connectée ;
- VS Code IntelliSense : saisie semi-automatique. La complétion de code IntelliSense essaie de deviner ce que vous voulez écrire, affiche les différentes possibilités et donne un aperçu des paramètres auxquels une fonction peut s’attendre ;
- Faits saillants des erreurs : VS Code + PIO souligne les erreurs dans votre code avant la compilation ;
- Plusieurs onglets ouverts : vous pouvez ouvrir plusieurs onglets de code à la fois ;
- Vous pouvez masquer certaines parties du code ;
- Navigation avancée dans les codes ;
- Et beaucoup plus…
Si vous recherchez un IDE plus avancé pour écrire vos applications pour les cartes ESP32 et ESP8266, VS Code avec l’extension PlatformIO IDE est une excellente option.
Nous espérons que vous avez trouvé ce tutoriel utile. Si vous aimez ESP32 et ESP8266, consultez les ressources suivantes :
Cette vidéo vous emmène dans l’histoire de Raspberry Pi :
