Premiers pas avec VS Code et PlatformIO IDE pour ESP32 et ESP8266

Premiers pas avec VS Code et PlatformIO IDE pour ESP32 et ESP8266

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.

Premiers pas avec VS Code et PlatformIO IDE pour les cartes ESP32 et NodeMCU ESP8266 : Windows, Mac OS X, Linux 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).

Page de téléchargement de Microsoft Visual Studio Code VS Code pour PC 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.

Assistant d'installation de Microsoft Visual Studio Code VS Code

Sélectionnez les options suivantes et cliquez sur Suivant.

Étape 2 de l'assistant d'installation de Microsoft Visual Studio Code VS Code

Appuyez sur le bouton Installer.

Étape 3 de l'assistant d'installation de Microsoft Visual Studio Code VS Code

Enfin, cliquez sur Terminer pour terminer l’installation.

Étape finale de l'assistant d'installation de Microsoft Visual Studio Code VS Code

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

Écran de bienvenue de l'assistant d'installation de Microsoft Visual Studio Code VS Code sur un PC Windows

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.

Installation de Python 3.8.5 sur un PC Windows et ajout au chemin

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.

Installation de Python réussie sur un PC Windows

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).

Page de téléchargement de Microsoft Visual Studio Code VS Code pour 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 ».

Microsoft Visual Studio Code VS Code Téléchargement du fichier d'application pour Mac OS X

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

Microsoft Visual Studio Code VS Code Téléchargement du fichier d'application pour Mac OS X

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

Écran de bienvenue de l'assistant d'installation de Microsoft Visual Studio Code VS Code sur Max OS X

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)"
Microsoft Visual Studio Code VS Code installation homebrew

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

$ brew install python3
Microsoft Visual Studio Code VS Code installant Python 3 avec la commande brew

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).

Page de téléchargement de Microsoft Visual Studio Code VS Code pour Linux Ubuntu

Enregistrez le fichier d’installation :

Fichier d'installation Microsoft Visual Studio Code VS Code Save pour Linux Ubuntu

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.

Microsoft Visual Studio Code VS Code Application ouverte Linux Ubuntu

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

Écran de bienvenue de l'assistant d'installation de Microsoft Visual Studio Code VS Code sur Linux Ubuntu

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
Linux Ubuntu installant la version de test de Python3

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
Installation de python3-distutils Linux Ubuntu pour PlatformIO IDE

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 :

  1. Cliquez sur l’icône Extensions ou appuyez sur Ctrl+Maj+X pour ouvrir l’onglet Extensions
  2. Recherchez « PlatformIO IDE »
  3. Sélectionnez la première option
  4. Enfin, cliquez sur le bouton Installer (Remarque : l’installation peut prendre quelques minutes)
Installer l'extension IDE PlatformIO sur VS Code

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

Extension IDE PlatformIO activée sur le code VS

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.

Extension PlatformIO installée avec succès

Ç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 :

Présentation de l'interface d'application Visual Studio de VS Code
  • 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.

Icônes d'outils rapides de l'extension PlatformIO IDE

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.

Menu Tâches de l'extension PlatformIO IDE

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.

Activer les tâches d'extension PlatformIO IDE

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.

Créer un nouveau projet PlatformIO VS Code

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 ».

PlatformIO avec VS Code Créer un nouveau projet ESP32

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 :

Extension IDE PlatformIO avec VS Code Créer un nouveau projet ESP8266

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

Structure des dossiers du projet d'extension PlatformIO IDE

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.

Fichier de configuration de l'extension PlatformIO IDE pour ESP32
  • 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().

Fichier main.cpp de l'extension PlatformIO IDE sous le dossier src

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);
}

Afficher le code brut

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.

Télécharger le code Carte ESP32 PlatformIO VS Code Visual Studio

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

Télécharger le code sur ESP32 PlatformIO VS Code Succès

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

Carte ESP32 LED intégrée allumée HIGH

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

Carte PlatformIO IDE VS Code Visual Studio Serial Monitor ESP32

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.

Extension IDE PlatformIO VS Code Périphériques connectés Visual Studio Port COM Série

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
PlatformIO IDE extesion Change Serial Monitor Baud Rate 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.

Extension PlatformIO IDE VS Code Visual Studio Rechercher la bibliothèque BME280

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

PlatformIO avec VS Code Ajouter une bibliothèque au projet

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

PlatformIO avec VS Code Ajouter une bibliothèque au projet Choisir un projet

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.

Ajouter un identifiant de bibliothèque au fichier de configuration PlatformIO

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.

Menu Registre de la bibliothèque d'extensions PlatformIO IDE

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.

Code VS avec le dossier de projet ouvert PlatformIO

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.

VS Code Visual Studio Changer les thèmes de couleur Dark Light

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 :

YouTube video