Installation de PlatformIO

Configurez votre environnement de développement pour microcontrôleurs

Installation de PlatformIO

Ce tutoriel explique comment installer PlatformIO pour programmer des microcontrôleurs Arduino, ESP32, STM32 et bien d'autres.

Durée :
Difficulté :
Documentation réalisée à 100% 100
Créée par :  Alban Petit

Introduction

PlatformIO est une plateforme de développement professionnelle pour microcontrôleurs qui s’intègre à VSCode via une extension.

Ensemble, VSCode + PlatformIO offrent :

  • Support de centaines de cartes de développement (Arduino, ESP32, ESP8266, STM32, Raspberry Pi Pico…)
  • Gestion automatique des bibliothèques et dépendances
  • Compilation, upload et débogage intégrés
  • IntelliSense (autocomplétion intelligente)
  • Gestion de projets multi-plateformes

Ce tutoriel vous guidera à travers l’installation complète sur Windows, macOS et Linux.

  Pourquoi PlatformIO plutôt qu'Arduino IDE ?

PlatformIO offre une gestion avancée des projets, des builds plus rapides, une meilleure gestion des bibliothèques, le support de multiples plateformes dans un même projet, et des outils de débogage professionnels. C’est l’outil de référence pour les projets sérieux.


Installation de PlatformIO

Maintenant que VSCode est installé, nous allons ajouter l’extension PlatformIO qui transforme VSCode en IDE complet pour microcontrôleurs.

Étape 1 : Ouvrir le gestionnaire d'extensions

Dans VSCode, cliquez sur l’icône Extensions dans la barre d’activité de gauche (icône de carrés empilés) ou utilisez le raccourci :

  • Windows/Linux : Ctrl+Shift+X
  • macOS : Cmd+Shift+X

Étape 2 : Rechercher PlatformIO

Dans la barre de recherche des extensions, tapez platformio. Vous devriez voir l’extension PlatformIO IDE par PlatformIO.

Étape 3 : Installer l'extension

Cliquez sur le bouton Install (Installer). L’installation prend quelques minutes car PlatformIO télécharge automatiquement :

  • Python (si nécessaire)
  • PlatformIO Core
  • Les outils de compilation

Soyez patient, ne fermez pas VSCode pendant l’installation !

Étape 4 : Attendre la fin de l'installation

Une fois l’installation terminée, vous verrez :

  • Une icône PlatformIO (tête d’alien) dans la barre d’activité de gauche
  • Une notification indiquant que PlatformIO est prêt
  • Possiblement une demande de redémarrage de VSCode

Si on vous le demande, cliquez sur Reload Now (Recharger maintenant).

  Première installation longue

La première installation de PlatformIO peut prendre 5-10 minutes selon votre connexion internet. PlatformIO télécharge tous les outils nécessaires (compilateurs, outils de flash, etc.). C’est normal, soyez patient !


Vérification de l’installation de PlatformIO

Étape 1 : Ouvrir PlatformIO Home

Cliquez sur l’icône PlatformIO (tête d’alien) dans la barre d’activité de gauche. Un panneau s’ouvre avec plusieurs options. Cliquez sur PIO Home puis Open.

Étape 2 : Interface PlatformIO Home

La page d’accueil de PlatformIO s’ouvre avec plusieurs sections :

  • New Project : Créer un nouveau projet
  • Open Project : Ouvrir un projet existant
  • Platforms : Gérer les plateformes supportées
  • Libraries : Gérer les bibliothèques
  • Boards : Voir les cartes supportées

Si vous voyez cette page, félicitations ! PlatformIO est correctement installé.


Configuration des permissions USB (Linux uniquement)

Sur Linux, vous devez configurer les permissions pour accéder aux ports USB sans sudo.

Ajouter l'utilisateur au groupe dialout

Ouvrez un terminal et exécutez :


sudo usermod -a -G dialout $USER
sudo usermod -a -G plugdev $USER

Déconnectez-vous puis reconnectez-vous (ou redémarrez l’ordinateur) pour que les changements prennent effet.

Installer les règles udev (optionnel)

Pour un meilleur support de certaines cartes (ESP32, STM32…), installez les règles udev de PlatformIO :


curl -fsSL https://raw.githubusercontent.com/platformio/platformio-core/master/scripts/99-platformio-udev.rules | sudo tee /etc/udev/rules.d/99-platformio-udev.rules

Puis rechargez les règles :


sudo udevadm control --reload-rules
sudo udevadm trigger

  Redémarrage nécessaire

Après avoir ajouté votre utilisateur aux groupes dialout et plugdev, vous DEVEZ vous déconnecter et reconnecter (ou redémarrer) pour que les permissions soient effectives. Sinon PlatformIO ne pourra pas accéder aux ports USB.


Raccourcis clavier PlatformIO

Mémorisez ces raccourcis essentiels :

Windows/Linux :

  • Ctrl+Alt+B : Build (compiler)
  • Ctrl+Alt+U : Upload (téléverser)
  • Ctrl+Alt+S : Monitor série
  • Ctrl+Alt+T : Run task (tâche spécifique)

macOS :

  • Cmd+Alt+B : Build
  • Cmd+Alt+U : Upload
  • Cmd+Alt+S : Monitor série

Dépannage

Problème : PlatformIO ne se lance pas après installation

Solution 1 : Réinstaller PlatformIO

  1. Désinstallez l’extension PlatformIO dans VSCode
  2. Fermez complètement VSCode
  3. Supprimez le dossier ~/.platformio (Linux/macOS) ou C:\\Users\\VotreNom\\.platformio (Windows)
  4. Rouvrez VSCode et réinstallez PlatformIO

Solution 2 : Problème de Python

PlatformIO nécessite Python. Vérifiez que Python est bien installé : python --version ou python3 --version

Si Python n’est pas installé, téléchargez-le depuis python.org et réinstallez PlatformIO.

Problème : Port USB non détecté (Linux)

Vérifier les permissions USB

Assurez-vous d’avoir suivi les étapes de configuration USB (section précédente) :


sudo usermod -a -G dialout $USER
sudo usermod -a -G plugdev $USER

Puis déconnectez-vous et reconnectez-vous.

Problème : Erreur de compilation “tool-chain not found”

Réinstaller la plateforme

  1. Ouvrez PlatformIO Home
  2. Allez dans Platforms > Installed
  3. Trouvez votre plateforme (ex: Espressif 32) et cliquez sur Uninstall
  4. Réinstallez la plateforme depuis Platforms > Embedded
  5. Essayez de compiler à nouveau

Créer votre premier projet PlatformIO

Testons l’installation en créant un projet simple de type “Blink”.

Étape 1 : Nouveau projet

  1. Cliquez sur l’icône PlatformIO dans la barre de gauche
  2. Cliquez sur PIO Home > Open
  3. Cliquez sur + New Project

Étape 2 : Configuration du projet

Remplissez les champs suivants :

  • Name : test_blink
  • Board : Sélectionnez votre carte (par exemple : Arduino Uno, ESP32 Dev Module, NodeMCU 1.0…)
  • Framework : Laissez Arduino par défaut
  • Location : Laissez le chemin par défaut ou choisissez un dossier

Cliquez sur Finish. PlatformIO crée le projet et télécharge les outils nécessaires pour votre carte.

Étape 3 : Code de test

PlatformIO crée automatiquement la structure du projet. Ouvrez le fichier src/main.cpp. Remplacez le contenu par ce code de test Blink :

#include <Arduino.h>

void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
}

void loop() {
  digitalWrite(LED_BUILTIN, HIGH);
  delay(1000);
  digitalWrite(LED_BUILTIN, LOW);
  delay(1000);
}

Étape 4 : Compiler le projet

Pour compiler le projet :

  1. Cliquez sur l’icône (coche) dans la barre de statut en bas (Build)
  2. Ou utilisez le raccourci : Ctrl+Alt+B (Windows/Linux) / Cmd+Alt+B (macOS)

PlatformIO compile le code. Si tout va bien, vous verrez SUCCESS dans le terminal.

  Première compilation longue

La première compilation d’un projet pour une nouvelle plateforme peut prendre plusieurs minutes car PlatformIO télécharge le compilateur, les bibliothèques et frameworks nécessaires. Les compilations suivantes seront beaucoup plus rapides !

Étape 5 : Upload sur la carte (optionnel)

Si vous avez une carte connectée, vous pouvez uploader le programme :

  1. Branchez votre carte via USB
  2. Cliquez sur l’icône (flèche) dans la barre de statut (Upload)
  3. Ou utilisez le raccourci : Ctrl+Alt+U (Windows/Linux) / Cmd+Alt+U (macOS)

PlatformIO compile et upload automatiquement. La LED de votre carte devrait clignoter !

  Installation réussie !

Si la compilation réussit, votre installation de VSCode + PlatformIO est complète et fonctionnelle. Vous êtes prêt à développer vos projets embarqués !


Installer des bibliothèques

Les bibliothèques se déclarent directement dans le fichier platformio.ini via la clé lib_deps. C’est la méthode recommandée : les dépendances sont versionnées avec le projet et installées automatiquement à la compilation.

Étape 1 : Trouver l'identifiant de la bibliothèque

Rendez-vous sur le registre officiel registry.platformio.org et recherchez la bibliothèque souhaitée. Notez son identifiant au format auteur/NomLib (ex : waspinator/AccelStepper).

Étape 2 : Ajouter lib_deps dans platformio.ini

Ouvrez le fichier platformio.ini à la racine de votre projet et ajoutez la clé lib_deps :

[env:esp32dev]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200
lib_deps =
    waspinator/AccelStepper@^1.64

Pour ajouter plusieurs bibliothèques, listez-les les unes sous les autres :

lib_deps =
    waspinator/AccelStepper@^1.64
    bblanchon/ArduinoJson@^7.0.0

Étape 3 : Compiler pour installer

Lancez une compilation avec Ctrl+Alt+B (Windows/Linux) ou Cmd+Alt+B (macOS). PlatformIO télécharge et installe automatiquement toutes les bibliothèques listées dans lib_deps avant de compiler.

  Format des versions

Le symbole ^ signifie « version compatible » (ex : ^1.64 accepte 1.64, 1.65… mais pas 2.0). Utilisez @* pour toujours prendre la dernière version, ou un numéro exact comme @1.64.0 pour figer la version.


Ressources et aller plus loin

Documentation officielle

Tutoriels et guides

Commandes CLI utiles

Si vous préférez utiliser PlatformIO en ligne de commande :

# Créer un nouveau projet
pio project init --board <nom_carte>

# Compiler
pio run

# Upload
pio run --target upload

# Ouvrir le moniteur série
pio device monitor

# Lister les cartes disponibles
pio boards

# Rechercher une bibliothèque
pio lib search <nom_lib>

# Installer une bibliothèque
pio lib install <nom_lib>

Structure d’un projet PlatformIO

mon_projet/
├── .pio/               # Fichiers de build (généré automatiquement)
├── include/            # Fichiers d'en-tête (.h)
├── lib/                # Bibliothèques privées
├── src/                # Code source (.cpp, .c)
│   └── main.cpp        # Fichier principal
├── test/               # Tests unitaires
├── platformio.ini      # Configuration du projet
└── .gitignore          # Fichiers à ignorer par Git

Le fichier platformio.ini configure le projet :

[env:myboard]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200
lib_deps =
    adafruit/Adafruit Sensor@^1.1.4
    bblanchon/ArduinoJson@^6.21.0
  Prochaines étapes

Maintenant que VSCode et PlatformIO sont installés, vous êtes prêt à développer vos projets embarqués ! Explorez les exemples inclus, testez différentes cartes, et n’hésitez pas à consulter la documentation.