Conseils achats carte ESP32

Bonjour,

Je suis déjà familier des cartes arduino et clones. Je voudrais tester des cartes à base de ESP32, pour le wifi et meilleurs performances que l'atmega des unos et nanos...

En regardant sur Aliexpress, je suis un peu perdu avec tous les modèles et accessoires disponibles...

J'aimerais des conseils d'achat et aussi savoir si j'ai besoins d'accessoires particuliers pour commencer avec les esp32.

Merci.

https://fr.aliexpress.com/w/wholesale-esp32.html

Bonjour axelmaux

Actuellement, j'utilise ce "couple"
image

Cordialement
jpbbricole

J'utilise celle-ci : ESP32-S3 N16R8. Elle a 8MB de PSRAM, 16MB de Flash, et le module est équipé d'une Led WS2812 couleur. Dans les 6€ chez Ali.

Bonjour

Pour prendre la main sur l'ESP32 je proposerait , comme @jpbbricole une carte au format DevkitC à 30 broches avec son module ESP-Wroom32 de qualité fabriqué par Espressif . Le microcontrolleur de cette carte est dans la version initiale qui à l'avantage de proposer le Bluetooth Classique contrairement aux variantes sorties ultérieurement -Cx, -Sx.... (à voir si c'est important pour toi, @axelmaux )

Cette carte est utilisée dans un très grand nombre de tutoriels, on peut la voir comme LA carte de base.
La carte d'extension facilite le câblage

Dans un second temps il sera facile d'évoluer vers des vessions plus récentes de la famille ESP32, des cartes plus performantes, des cartes de taille différente..........

Ce n’est ni compliqué ni simple.
A l’origine etait l’ESP32 intégré dans un boitier contenant la memoire flash.
L’esp32 seul ne sert pas a grand chose. L’esp32 yxz n’est utilisable qu’en module.
Le CI esp32 est un micro Tensilica (Cadence) double cœur terminé par Espressif

Puis vinrent les déclinaisons esp32-cx (mono coeur RISC), esp32-sy (tensilica double coeur ) et d’autres encore : serie H, P.

Certains modèles ESP32 non C,S,P,H sont toujours fabriqués mais pour combien de temps ?

Pour commencer je conseille un esp32-c3 mono coeur qui fait wifi et Bluetooth.
Avantage : il est très répandu et très peu cher.
La principale différence est dans le nombre d’IO disponibles en bord de carte.
Si tu veux beaucoup d’IO il faudra prendre une carte de grande surface.
De toute façon la ou les premières cartes utilisées subiront des outages, et devront être remplacées par sécurité si tu fais un montage définitif.

Chez qui acheter ?
Il y a du travail de recherche : je n’achete que si je trouve le schéma.
Cela réduit bien souvent le choix aux modules fabriqués par Ai-Thinker et Espressif. Il semble qu’Espressif sous traite sa fab à Ai Thinker.

Ce sont mes choix, que je partage avec d’autres, mais ici, tout lemonde ne fait pas les mêmes, comme par exemple la carte support au format uno.

Je considère que le mieux est des breadbords moyen format. Les breadbords sont auto collantes et sont prévues pour être de-assemblees et repositionnées au bon écartement.
Nous ne sommes pas à 3 € près, la priorité est l’efficacité et la souplesse.

Ce ne sont que des conseils, tu procèdes comme tu le sens.

Bonjour, personnellement je trouve que les firebeetle de dfrobot sont bien documentées (contrairement à celle d'autres marques) et à un prix raisonnable. (la plupart possèdent même un port intégré pour une lipo 3.3v, un peu comme les arduino mkr).

Merci à tout le monde pour les conseconseils, je potasse tout ça et je reviens vers vous.

Toutes ces cartes ont les sorties logiques en 3,3v et ont le wifi ?

Je me renseigne encore, mais pour l'instant je suis tenté par cette carte.

En me renseignant sur les cartes devkitc, je vois différentes versions: V1, v4, ... Kesako?

Les cartes NodeMcu sont encore d'actualité?

V1 V4 ? il faudrait les schémas de ces versions pour voir ce qui les différencie , ps évident parce qu'on a affaire à une production de copies plus ou moins fidèles d'un carte conçue par Espressif en open hardware librement copiable

NodeMCU, DEVkit..... deux façons de désigner un 'style' de cartes de développement apparues il y a 10 ans avec l'ESP8266.

A l'origine de ces 2 termes il ya dix ans : la carte 'Developpement kit Devkit proposée par le créateur du firmware NodeMCU (ESP8266)
https://www.nodemcu.com/index_en.html#fr_54747661d775ef1a3600009e

Ce format avec un trentaine de broches inspire encore de très nombreuses cartes de développement pour ESP32 produites par on ne sait qui et affublées par les vendeurs des places de marché de noms à rallonge accumulant les termes ESP32, WROOM32, DevkitC, NodeMCU.......

Oui pas évident de s'y retrouver dans tout ça... Je compte passer une commande demain mais je suis un peu perdu dans la jungle des cartes de développement Esp32. :sweat_smile:

Autant je suis à l'aise avec l'écosystème des cartes Arduino et clones, autant je suis perdu avec les cartes ESP32. Lol

je reste convaincu que l'une ou l'autre de ces cartes 'noname' à 30 broches avec un module Espressif WROOM-32 sous capot métallique est un bon point d'entrée pour la famille ESP32. (Que le circuit intégré implanté pour l'interface UART/USB soit un CP2102, CH340, CHxxxx.......l'mnse USB de tel ou tel type....)

Après tu pourras évoluer vers des cartes plus ceci ou plus cela......en fonction de tes priorités

Oui... Je vais suivre ton conseil, merci pour tes réponses. :slight_smile:

J'ai finalement acheté des ESP32 S3 N16R8. J'ai soudé les pins et fait û test basique... Ça fonctionne, mai j'ai un message d'erreur dans le moniteur serie ("Leaving...
Hard resetting via RTS pin...")

Le code:

void setup() {
  // No need to initialize the RGB LED
}

// the loop function runs over and over again forever
void loop() {
#ifdef RGB_BUILTIN
  rgbLedWrite(RGB_BUILTIN, RGB_BRIGHTNESS, 0, 0);  // Red
  delay(1000);
  rgbLedWrite(RGB_BUILTIN, 0, RGB_BRIGHTNESS, 0);  // Green
  delay(500);
  rgbLedWrite(RGB_BUILTIN, 0, 0, RGB_BRIGHTNESS);  // Blue
  delay(1000);
  rgbLedWrite(RGB_BUILTIN, 0, 0, 0);  // Off / black
  delay(1000);
#endif
}

Le moniteur série:

Les variables globales utilisent 20492 octets (6%) de mémoire dynamique, ce qui laisse 307188 octets pour les variables locales. Le maximum est de 327680 octets.
esptool.py v4.8.1
Serial port /dev/ttyACM0
Connecting....
Chip is ESP32-S3 (QFN56) (revision v0.2)
Features: WiFi, BLE, Embedded PSRAM 8MB (AP_3v3)
Crystal is 40MHz
MAC: b4:3a:45:a9:28:60
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 921600
Changed.
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00004fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x0005bfff...
Compressed 20208 bytes to 13057...
Writing at 0x00000000... (100 %)
Wrote 20208 bytes (13057 compressed) at 0x00000000 in 0.5 seconds (effective 342.7 kbit/s)...
Hash of data verified.
Compressed 3072 bytes to 146...
Writing at 0x00008000... (100 %)
Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.1 seconds (effective 392.9 kbit/s)...
Hash of data verified.
Compressed 8192 bytes to 47...
Writing at 0x0000e000... (100 %)
Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 534.8 kbit/s)...
Hash of data verified.
Compressed 309664 bytes to 165833...
Writing at 0x00010000... (9 %)
Writing at 0x0001bc2c... (18 %)
Writing at 0x00028527... (27 %)
Writing at 0x0002dc1e... (36 %)
Writing at 0x00033a1f... (45 %)
Writing at 0x00038f9e... (54 %)
Writing at 0x0003e89d... (63 %)
Writing at 0x00044270... (72 %)
Writing at 0x0004ac0d... (81 %)
Writing at 0x00054b3c... (90 %)
Writing at 0x0005ac6a... (100 %)
Wrote 309664 bytes (165833 compressed) at 0x00010000 in 3.0 seconds (effective 838.1 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...



Bonjour @axelmaux

c'est une annonce , pas un message d'erreur, le bootloader t'indique qu'il te quitte (leaving) après avoir fini a son travail et tente de resetter la carte pour lancer l'exécution du programme téléversé.

S'il n'y arrive pas tout seul appuies brièvement sur le bouton Reset

Attention ton code ne convient pas , il tente de gérer une triple led RGB alors que ta carte dispose d'une LED adressable WS2812, souvent rencontrée en rubans.

Tu peux pour cette WS2812 unique utiliser la grosse artillerie (bibliothèque Neopixel ou Fastleds) mais (de mémoire, donc à vérifier) il y a plus simple avec le module PWM LEDC des ESP32 qui saurait , sous IDE Arduino, gérer une WS2812 unique.
Loin de chez moi Je n'ai pas la solution sous la main.
Une recherche , éventuellement avec l'une ou l'autre des AI, te renseignera

@al1fch Merci pour les détails. :slight_smile:

Je savais que s'était une ws2812b sur la carte mais j'avais pas du tout fait attention au sketch que j'ai utilisé. Par contre, j'arrivai a contrôler cette led avec ce code.

Au passage, Andreas Spiess fait des vidéos très complètes sur de nombreux sujets dont l'ESP32 et il a fait (peut-être un peu ancien) un comparatif des cartes ESP32.

Il faut un peu chercher sur sa chaine...

Comment on fait pour utiliser la totalité de la memoire ?

16 Mo de flash et 8 Mo de psram

Pour les 16MB de mémoire Flash :

avec une carte 'noname' utilisant un module WROOM ESP32-S3 -N16R8, choisis ESP32-S3 Dev Module et sélectionnes la valeur du paramètre 'Flash Size' dans l'IDE (4, 8 , 16 ou 32MB)

Fais ensuite avec le paramètre 'Partition Scheme' ton choix de répartition des 16MB en fonction des besoins de ton application

@al1fch Merci :slight_smile:

J'utilise cette carte, similaire à la tienne :

Voici les réglages que je prends :

La partition est 'custom' car je la décris dans un fichier csv :

# Name,   Type, SubType,  Offset,   Size,  Flags
nvs, data, nvs, 0x9000, 0x5000
otadata, data, ota, 0xE000, 0x2000
factory, app, factory, 0x10000, 0xFE0000
coredump, data, coredump, 0xFF0000, 0x10000

Il y a un site pour générer un fichier de partition, je viens de le découvrir (pas testé) :

Moi j'utilisais ceci (mis à ma sauce) :

C'est une feuille Excel qui génère ce qui doit être copié dans le fichier csv. Les partitions sont expliquées ici :