Nous avons précédemment noté que la version ESP32 Arduino Core 3.0.0 Alpha ajoute la prise en charge d’ESP32-C6 et ESP32-H2, entre autres changements. La bonne nouvelle est qu’Arduino ESP32 Core 3.0.0 est désormais considéré comme stable et a été publié il y a quelques jours sur la base du framework ESP-IDF 5.1.4. Les utilisateurs de l’IDE Arduino peuvent l’utiliser immédiatement, mais comme nous le verrons plus en détail ci-dessous, il n’est pas clair si PlatformIO sera (officiellement) pris en charge.

De nombreux changements ont eu lieu depuis que nous avons écrit sur la version Alpha2 en novembre 2023 avec 327 commits provenant de 96 contributeurs. Certains des changements les plus récents (par rapport au RC3) incluent :
- ESPDuino mis à jour avec des options supplémentaires (fréquence CPU et partition)
- Ajouter la prise en charge de WeAct Studio ESP32C3
- Joindre les événements ETH au bon endroit
- Activer la possibilité d’utiliser SPI ETH avec seulement 4 fils
- Corriger ETH.end()
- Correction de ETH.stop() avec IDF SPI
- Nano ESP32 : supprimez l’entrée programmer.default (sur main) en raison de conséquences involontaires pour les utilisateurs de CLI
- Mettez à jour Kconfig.projbuild pour corriger la compilation sélective LittleFS
- Correction de la signature de fonction obsolète (ledcWrite)
- Supprimer le masquage du numéro de canal ADC
- Ajoutez des mappages de broches GPIO pour l’unité M5Stack CamS3 et sélectionnez OPI PSRAM par défaut
- Fournissez un nom de TAG par défaut pour la macro de journalisation USE_ESP_IDF_LOG
- Mettez à jour merge_package.py pour utiliser packaging.version au lieu du distutils.version obsolète
Vous trouverez la version sur GitHub pour l’installation dans l’IDE Arduino, tout comme nous l’avons fait pour la version Alpha2. Davantage de cartes ESP32-C6 et ESP32-H2 sont désormais prises en charge dès la sortie de la boîte, puisque la dernière fois que j’ai essayé, il n’y avait que deux cartes ESP32-C6 et une carte ESP32-H2…

C’est idéal pour les utilisateurs qui s’appuient sur l’IDE Arduino, mais certains préfèrent travailler avec PlatformIO, et il existe actuellement un problème ouvert sur PlatformIO concernant la prise en charge d’Arduino ESP32 Core v3.0.0 qui pourrait ne jamais être officiellement pris en charge :
L’ESP32 Core pour Arduino 2.x est la version majeure la plus récente actuellement recommandée pour une utilisation avec PlatformIO. La décision d’arrêter le support a été prise par la société Espressif, comme indiqué dans son communiqué officiel.
C’est un long fil de discussion, mais il semble y avoir des discussions commerciales en cours entre les développeurs d’Espressif Systems et de PlatformIO qui ne sont pas encore résolues :
[…]
La version actuellement prise en charge est Arduino Core v2.x pour ESP32. Notre collaboration avec Espressif, y compris les discussions sur le renouvellement, se poursuit. Il convient de noter que nous avons @VojtechBartoska, un chef de projet chez Espressif, dans ce fil. Nous travaillons tous ensemble pour garantir que vous bénéficiez des meilleures fonctionnalités et du meilleur support. Nous tiendrons tout le monde au courant de toute mise à jour pour assurer la continuité de nos services.[…]
PlatformIO est un projet commercial open source. Avant 2020, il s’agissait d’un service payant, suivant un modèle business-to-consumer (B2C). De manière inattendue, PlatformIO a gagné en popularité auprès de millions de développeurs dans le monde. Par conséquent, nous avons modifié notre stratégie pour rendre les outils puissants de développement professionnel embarqué librement accessibles à tous.
Le développement et la maintenance actifs de PlatformIO, ainsi que son infrastructure, sont désormais pris en charge par des partenaires technologiques dédiés à offrir une excellente expérience de développement. Espressif était l’un de ces partenaires et nous apprécions leur collaboration de longue date.
Actuellement, Espressif a cessé de prendre en charge les nouveaux produits dans PlatformIO, mais rassurez-vous, nous nous engageons à fournir une prise en charge des produits Espressif existants intégrés avant ce changement, conformément à notre politique de licence technologique. Vos projets ne subiront pas de perturbations et les services continueront comme d’habitude.
Ces messages datent de fin novembre 2023, mais PlatformIO ne prend toujours pas en charge la version Arduino ESP32 3.x pour le moment (1er juin 2024). Cela dit, un utilisateur a apparemment réussi à faire fonctionner PlatformIO avec sa carte ESP32-C6 en utilisant le fichier JSON suivant :
{ « build »: { « core »: « esp32 », « f_cpu »: « 160000000L », « f_flash »: « 80000000L », « flash_mode »: « qio », « mcu »: « esp32c6 », « variant »: « esp32c6 » }, « connectivité » : [
« wifi »
] »debug »: { « openocd_target »: « esp32c6.cfg » }, « frameworks »: [
« arduino »,
« espidf »
] »name »: « Espressif ESP32-C6 », « upload »: { « flash_size »: « 4MB », « maximum_ram_size »: 327680, « maximum_size »: 4194304, « require_upload_port »: true, « speed »: 460800 }, « url »: « https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/index.html », « vendor »: « Espressif » }
1
2
3
4
5
6
7
8
9
dix
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
« construire »: {
« noyau »: « esp32 »,
« f_cpu »: « 16 0000000L »,
« f_flash »: « 8 000 000 L »,
« flash_mode »: « qio »,
« mcu »: « esp32c6 »,
« variante »: « esp32c6 »
},
« connectivité »: [
« wifi »
],
« débogage »: {
« openocd_target »: « esp32c6.cfg »
},
« cadres »: [
« arduino »,
« espidf »
],
« name »: « Espressif ESP32-C6 »,
« télécharger »: {
« flash_size »: « 4 Mo »,
« maximum_ram_size »: 327680,
« taille_maximum »: 4194304,
« require_upload_port » : vrai,
« vitesse »: 460800
},
« url »: « https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/index.html »,
« vendor »: « Espressif »
}
Mais il n’est pas clair si toutes les fonctionnalités fonctionneront, comme l’a signalé un autre utilisateur :
Oui, pour le c6, seule l’entrée Arduino doit être ajoutée. Quoi qu’il en soit, C6 ne fonctionne pas « prêt à l’emploi ». Les changements nécessaires pour prendre en charge C2, H2 et C6 ne sont pas si nombreux 😉
Il faudra voir comment ça se passe. Il est donc possible d’utiliser le nouvel Arduino ESP32 Core 3.0.0 avec Platform.io avec quelques efforts, mais si les entreprises ne parviennent pas bientôt à un accord, l’avenir à long terme de PlatformIO pour les cartes ESP32 est incertain. Arduino ESP32 Core 2.x est toujours pris en charge dans PlatformIO, donc aucun problème ici pour les cartes et projets existants.
Merci à Hedda pour le conseil.
Retrouvez l’histoire de Raspberry Pi dans cette vidéo :

-
ELEGOO 3PCS Carte de Développement ESP32 Type-C, 2,4 GHz WiFi + Bluetooth Dual Core Carte de Contrôle pour Arduino, Support MicroPython, NodeMCU, AP/STA/AP+STA, Puce CP2102
-
GERUI Lot de 3 cartes de développement ESP32 ESP32-C3 ESP32 C3 Prise en charge WiFi Bluetooth Flash 4 Mo
