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

uPesy ESP32S3 DevKit v1.0

(Mis à jour le 12/10/2023)

Sélectionnez la version de votre carte mentionnée au verso: Rev x.y

Bienvenue dans la documentation de la carte uPesy ESP32S3 DevKit , la carte de développement la plus puissante fabriquée par uPesy basée sur le tout nouveau module ESP32S3 . Avec 8Mo de RAM et 16Mo de flash, cette carte est le choix parfait pour tous vos projets ambitieux de développement IoT et électronique.

Vous trouverez dans cette documentation technique toutes les informations nécessaires pour commencer à travailler avec cette carte.

Note

Ce nouveau modèle remplacera à terme la carte uPesy ESP32 Wrover Devkit

Précisions sur la numérotation des broches

schéma des broches de l’uPesy ESP32S3 complet

Pinout de la carte uPesy ESP32S3

Vous remarquerez que les broches sont numérotées dans le désordre contrairement aux cartes Arduinos. Il faudra donc bien se référer au pinout pour connaître le numéro de la broche et non pas le déduire en fonction de la position de la broche.

Caractéristiques

La carte uPesy ESP32S3 DevKit peut être découpée en 4 principaux blocs :

  • Le module ESP32

  • Le convertisseur USB vers UART

  • La gestion de l’alimentation

  • La connectique

Module ESP32S3

Le cerveau de la carte est le module ESP32S3. C’est un microcontrôleur puissant fabriqué par Espressif. La carte uPesy contient la version du module avec le plus de mémoire Flash et de RAM

Voici des liens vers la datasheet du fabricant : Module ESP32S3-WROOM-1 (version N16R8)

Convertisseur USB/UART

Ce convertisseur à le même rôle que sur l’ESP32 classique : traduire l’USB vers l’UART pour flasher l’ESP32S3. Même si on peut flasher le S3 via l’USB, la méthode UART fonctionnera dans tous les cas. C’est le moyen le plus bas niveau, qui sera toujours prioritaire devant l’USB.

Pour limiter la place et le coût de la carte, c’est le circuit intégré CH340X qui est utilisé (au lieu du CP2102) pour cette tâche. Les drivers sont censés s’installer automatiquement sur Windows.

Gestion de l’alimentation

Cette section de la carte est responsable de la gestion de l’alimentation. Elle contient entre autres un régulateur de tension 3.3V ainsi que des protections. Son fonctionnement sera détaillé dans la section Utilisation.

Connectique

La carte possède 2 connecteurs USB-C : un relié au port série (UART) de l’ESP32S3 l’autre aux broches pour l’USB. Ils permettent notamment de téléverser un programme, d’envoyer des messages …

Note

Il faut s’assurer d’utiliser un câble USB qui laisse transiter les données, et non pas un qui sert juste à charger un appareil.

Il y a donc 2 moyens de communiquer avec l’ordinateur. Il faut brancher uniquement un des 2 pour communiquer via l’ordinateur. Le mode UART est la méthode conseillée pour tester la carte, car il est plus simple à mettre en oeuvre.

Comme sur l’ESP32 Wroom classique, les 2 boutons EN et BOOT de la carte permettent de contrôler l’état de l’ESP32:

  • EN : Ce bouton, appelé également RESET permet de redémarrer de force l’ESP32.

  • BOOT : L’utilisation seule de ce bouton n’a pas grand intérêt. Il agit sur le comportement de l’ESP32 lors du démarrage (lors du boot).

On peut utiliser ces boutons pour mettre manuellement l’ESP32 en mode DOWNLOAD , mode qui permet de charger un nouveau programme sur l’ESP32. Normalement, l’ESP32 se met automatiquement dans ce mode lorsque le téléversement se fait via USB grâce au convertisseur CH340X.

Astuce

C’est la solution de secours, lorsqu’on n’arrive pas à enlever l’erreur : A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

Lorsque que :

Connecting........_____....._____....._____....._____....._____....._____....._____....._____....._____....._____

Voici la combinaison à réaliser :

  • Maintenir appuyé en même temps les boutons EN et BOOT pendant 2 secondes

  • Relâcher le bouton EN tout en maintenant appuyé BOOT pendant 2 secondes

  • Relâcher le bouton BOOT

manipulation Failed to connect to ESP32: Timed out waiting for packet header

Manipulation pour activer le mode FLASH de l’ESP32 manuellement

Utilisation

Tolérance en tension des pins

  • L’ESP32 est un microcontrôleur qui fonctionne en 3.3V. Les niveaux logiques sont donc de 0 et 3.3V et non pas de 0 et 5V. C’est-à-dire que la tension en sortie des pins GPIO est de 3.3V et la tension en entrée ne doit pas excéder 3.3V. Les pins GPIO ne sont pas prévus pour avoir des niveaux logiques de 5V .

  • La tension mesurée par le convertisseur analogique numérique ne doit pas non plus excéder 3.3V (et pas non plus négative bien sûr).

Note

La plupart des modules/capteurs peuvent fonctionner avec des niveaux logiques de 3.3V, mais si ce n’est pas le cas, des level shifters (ou a minima des ponts diviseurs de tension) seront nécessaires pour passer d’une tension de 3.3V à 5V et vice versa.

Avertissement

Puisque l’ESP32 n’a pas été prévu pour recevoir du 5V sur ces pins GPIO, les pins de l’ESP32 peuvent être endommagés s’ils sont exposés trop longtemps à cette tension.

Alimentation de la carte uPesy

Lorsque la carte est alimentée, une LED rouge s’allume. Il y a plusieurs moyens pour alimenter la carte uPesy ESP32S3 DevKit :

  • Le plus simple est par USB en 5V, en connectant la carte à un ordinateur ou à une batterie externe (powerbank). On peut techniquement alimenter la carte par les 2 ports USB en même temps, même si cela n’est pas recommandé. On peut ensuite utiliser le pin 5V et 3.3V pour alimenter un montage électronique.

    Note

    La tension de la broche 5V provient uniquement de l’USB.

  • On peut aussi alimenter la carte directement sur le pin \(V_{IN}\) avec une alimentation externe. Il faut bien penser à relier la masse de l’alimentation au pin GND de la carte. Dans cette configuration, Il n’y aura pas de tension de 5V disponible sur la broche 5V, seule une tension de 3.3V est disponible sur le pin 3V3. En effet, la broche 5V correspond uniquement au 5V provenant de l’USB.

    Avertissement

    La tension en entrée sur le pin \(V_{IN}\) doit être comprise entre 3.6 et 7V maximum . Une tension aux alentours de 5V est optimale.

  • On peut également utiliser les 2 premières méthodes en même temps , c’est à dire avoir une alimentation externe reliée branchée au pin \(V_{IN}\) tout en ayant la carte connectée à l’ordinateur (les 2 masses doivent être reliées) . C’est très pratique pour dialoguer avec le moniteur série de l’Arduino IDE tout en ayant l’ESP32 alimenté par un autre circuit électronique externe. Le fonctionnement est le suivant :

    • Si \(V_{IN}\) < \(V_{USB}\) , avec \(V_{USB}=5V\) alors c’est l’USB qui sera principalement utilisé pour alimenter l’ESP32.

    • Si \(V_{IN}\) > \(V_{USB}\) , alors c’est l’alimentation externe qui sera principalement utilisée pour alimenter l’ESP32.

Protections intégrées

La carte uPesy ESP32S3 DevKit possède une batterie de protection pour éviter de l’endommager facilement. Notez que ces protections ne sont en aucun cas suffisantes pour prévenir de toutes les erreurs de manipulations possibles : la carte n’est donc pas indestructible.

La carte intègre les protections suivantes :

  • Protection contre les décharges électrostatiques sur les 2 ports USB

  • Protection contre les injections de courant sur les ports USB

  • Protections court-circuit sur le rail \(V_{IN}\) , 5V et 3.3V : Des fusibles thermiques auto-réarmables de 750 mA sont utilisés sur les rails \(V_{IN}\) et 5V. Il faut donc éviter de tirer trop de courant sur la carte, sinon ils risquent de se déclencher. Ils s’activent et se désactivent automatiquement (polyfuse).

  • Protection contre les inversions de polarités entre \(V_{IN}\) et GND.

Astuce

De manière générale, si lors de la mise sous tension de la carte, vous remarquez que la LED rouge intégrée ne s’allume pas, c’est qu’il y a un problème d’alimentation : il faut rapidement déconnecter la carte pour éviter d’endommager la carte et/ou l’alimentation elle-même.

Changelog | Historique des modifications

v1.0 (Octobre 2023)

Première version