Ignorer et passer au contenu

Livraison offerte à partir de 50€ d'achats, livrée sous 48h !

Livraison à partir de seulement 2.50€ !

Contents Menu Expand Light mode Dark mode Auto light/dark mode

Vos premiers pas avec une carte ESP32

(Mis à jour le 26/06/2022)

Ce guide va vous aider dans la prise en main de votre carte ESP32.

Avertissement

La carte ESP32 mentionné dans ce tutoriel est la carte uPesy ESP32 WROOM DevKit , mais ce guide reste également pertinent pour les autres cartes ESP32.

schéma des broches de l’ESP32 complet

Pinout complet de la carte uPesy ESP32 Wroom Devkit

Programmation de l’ESP32: Les différentes plateformes et langages

Pour les débutants, la manière la plus classique et la plus simple de programmer l’ESP32 est d’utiliser le logiciel Arduino IDE . Bien qu’il soit destiné à la base pour les cartes Arduino, on peut l’utiliser pour programmer d’autres type de cartes grâce au gestionnaire de cartes supplémentaires.

Pour les plus avancés, je vous conseille d’utiliser VS Code avec PlateformIO pour pouvoir utiliser pleinement les fonctionnalités de l’ESP32. C’est clairement un « game changer » surtout lorsqu’on réalise des projets orientés Wi-Fi/Web où l’on mélange plusieurs langages (C, HTML, CSS, Javascript). Vous pouvez même programmer l’ESP32 en C pur, sans utiliser de code Arduino avec uniquement le framework d’espressif ESP-IDF.

Il existe aussi une alternative qui est de plus en plus populaire surtout depuis la sortie de la Raspberry Pi Pico : le MicroPython . Il est, en effet, possible de programmer l’ESP32 en Python. Ce port du langage Python sur micro-contrôleur (d’où le nom de Micro Python) permet de bénéficier de tous les avantages de Python moyennant bien entendu de moins bonnes performances qu’avec du code Arduino. Pour ne citer qu’une de ces qualités, le téléversement et l’exécution d’un nouveau programme est quasi instantanée, alors qu’il faut attendre jusqu’à plusieurs minutes avec du code Arduino que la compilation et le téléversement du programme soient fini. Lorsqu’on débute et qu’on teste très régulièrement le code, cela fait toute la différence.

En résumé, je vous conseille :

  • Si vous utilisez déjà des cartes Arduino, commencer votre découverte de l’ESP32 via l’Arduino IDE puis migrer éventuellement vers PlateformIO.

    Important

    Une fois que l’on testé PlateformIO sur VS Code, il est difficile de revenir après sur l’Arduino IDE 😉

  • Si vous êtes familier avec le Python et que vous n’avez jamais fait de code Arduino, commencer par tester MicroPython.

Un guide d’installation est disponible pour chaque plateforme :

Hormis le choix du langage de programmation, puisqu’il s’agit avant tout d’une carte électronique, il est important de connaître le fonctionnement des broches.

ESP32 Pinout : Comprendre les broches de l’ESP32

Les broches de l’ESP32 possèdent beaucoup plus de fonctionnalités que celles des cartes Arduino. Cependant, contrairement aux Arduinos, la position des broches est différente en fonction du modèle. Heureusemet, même si les broches de votre carte ESP32 sont positionées à un endroit, leur fonctionnement reste le même.

generic esp32 pinout (ESP32 Wroom 32 Devkit model)

Pinout d’une carte ESP32 générique

Sur les schémas détaillés des broches (ESP32 Pinout), les fonctionnalités des broches indiquées sont celles par défaut. Sur l’ESP32, on peut choisir à notre guise les broches qui utiliseront les protocoles SPI, I2C, UART, I2S, DAC. Je vous invite fortement à consulter le tutoriel sur le fonctionnement détaillé de chaque broche de l’ESP32 (ESP32 Pinout) pour avoir plus de précisions et devenir incollable sur les pins de l’ESP32.

Pour ceux qui possèdent une carte ESP32 uPesy, vous pouvez obtenir davantage d’informations sur la documentation technique des cartes ESP32 .

Apprendre la programmation sur l’ESP32

Une série de tutoriels sont disponibles pour progresser en programmation de l’ESP32 en fonction de votre langage choisi. Vous trouverez dans la section Programmation des tutoriels pour programmer l’ESP32 avec du code Arduino mais aussi des tutoriels pour apprendre les bases de MicroPython .