Quelqu’un a-t-il déjà réussi à flasher un ESP32C3 12F avec ce genre de carte ?
J’ai l’impression que je le passe bien en flash mode, mais rien n’y fait…
J’ai besoin de le flasher avant de le ressouder à une PCB en remplacement d’une puce WIFI WBR3
Quel sont tes branchements ?
L’ESP-C3 à un port USB en natif, c’est le mode de flash actif par défaut (à condition que les boches d’alim/reset/straping soient au bon niveau)
J’ai aussi ponté le GPIO9 sur la masse, le résultat est identique
J’ai testé ESPHome-Flasher, Flash Download Tool (officiel Espressif) et esptool en ligne de commande, le flash echoue
Using 'COM3' as serial port.
Connecting......................................
Unexpected error: ESP is not in flash boot mode. If your board has a flashing pin, try again while keeping it pressed.
Bon, c’est le problème des produits chinois, c’est pas cher, dans la grande majorité des cas ça fonctionne, mais la doc est bien souvent inexistante ou très lacunaire.
On va supposer que toutes les connexions sont faites correctement pour programmer les ESP vu que c’est vendu dans ce but.
Le bouton prog et GPIO9 c’est la même chose.
De mémoire, ESP hors tension, tu maintient appuyé « PROG » et « RESET », tu met sous tension, après quelques secondes tu lâches « RESET » tout en maintenant « PROG » appuyé. Tu lances la programmation (ou l’effacement) dans Espressif Flash Download Tool et quand c’est parti tu peux lacher « PROG »
Oui, c’est assez sommaire coté doc, bon après pas certain que ce genre de bidule soit autre chose que chinois à la base
Ok, c’est pas exactement la séquence, j’ai laché le bouton prog avant de lancer le flash
Je teste ça dès mon retour à la maison en fin de semaine, je viens de grimper dans le train.
Après il faut encore voir si la carte est prévue pour les ESP32-C3… ESP-12x ça me fait plus penser à des ESP32 « tout court » (voir même des ESP8266…*) et la broche de prog n’est pas la même (GPIO0)
Il serait bon de vérifier que le bouton prog agit bien sur le GPIO9 (et que le GPIO9 de la carte correspond bien au GPIO9 du module ESP)
*EDIT : D’ailleurs, dans la boutique alixpress, ils proposent 2 modèles : ESP8266 et ESP32, le modèle que tu montres en photos en #1 c’est le modèle ESP8266 : c’est écrit dessus (les ESP-12x c’est des variantes de l’ESP8266) donc même si ton ESP32-C3 rentre physiquement dans le support, pas certains que le « pinout » corresponde exactement.
Je vais essayer de creuser pour voir les (non) correspondances et les éventuelles adaptations nécessaires.
De ce que j’ai pu voir, ton module ESPC3 est pin-to-pin compatible avec un ESP8266 (en tout cas pour la partie flash) donc ça devrait fonctionner avec la bonne séquence.
Je suis tombé sur ton post, et par curiosité j’ai voulu tester.
J’ai acheté ces mêmes puces il y a quelques semaines, pour tester par rapport aux 8266 12F classiques. J’ai également la carte de flash sans soudure, conçue pour les ESP8266, mais comme l’a souligné @Forhorse , c’est « pin compatible », enfin presque.
Comme toi, impossible de flasher. Je l’ai branchée sur le PC et passée sous crible avec le moniteur Arduino. C aparle un peu chinois, mais Gemini a pigé.
En fait, la carte est bien reconnue, elle boote, mais ne parvient pas à passer en état flash. Et le fautif est le GPIO8.
Pour cette carte ESP32 12F, le GPIO8 doit être impérativement en pullup, sinon, ça n’autorise pas le flash (via GPIO9).
Or sur la carte qui accueille l’ESP12, ce fameux GPIO8 correspond au GPIO15 de l’ESP12F classique, connecté à une LED. J’ai mesuré 1.2V au lieu des 3.3V attendu.
Malheureusement (par manque de temps), je n’ai pas pu aller jusqu’à l’étape du flash.
J’ai soudé des pins sur cet ESP32 12F, et au moment de tout raccorder, le pin vcc s’est arrachée, avec la platine…
J’ai pu ressouder une patte sur le pin du vcc.
En mettant le GPIO8 en pullup, j’ai pu flasher le module sans soucis.
Après redémarrage, le module est bien reconnu sous ESPHome.
LA solution serait de trouver une platine compatible (ça doit pas courir les rues…) pour simplifier le processus et éviter de se retrouver avec le bordel ci-dessous.
A noter que le C3 se flash en USB directement (GPIO18 & 19). Je ne sais pas si en passant par là il prend en compte ou non les straping pin.
Mais quand je flash mes modules en passant par l’USB j’ai même pas besoin de passer GPIO9 à l’état bas.
Faudrait avoir le schéma de la carte. Mais je ne vois pas spécialement de contre indication… au pire la led connectée sur la pin s’allume, pas bien gênant…
Super !
Par contre attention, sur ta photo j’ai l’impression que tu as mis le GPIO8 au +5V, c’est au +3.3V qu’il faut le brancher (les ESP sont des µC en 3.3V)
Les ESP sont plus ou moins 5V tolérant mais c’est pas une habitude à prendre.
J’avais également ponté le pin GPIO8 en 3.3V mais uniquement regardé le résultat sur l’arduino moniteur. J’ai pas essayé de flasher avec ! L’important c’est que ça fonctionne ainsi !
Concernant ce projet, j’ai ai réalisé 3 chez moi avec le Create Windcalm (swap de puce avec ESP12F 8266).
Ca fonctionne nikel depuis 2 ans.
Le truc impératif dans le yaml ESPHome : Il faut mettre
logger:
baud_rate:0
Sinon, va ya avoir conflit sur la ligne avec les commandes envoyées au MCU. Chez moi, ça laggait à mort ou alors, les commandes n’étaient pas transmises. Avec cette ligne, le ventilateur est super réactif (via un interrupteur zigbee). Faudrait que je teste avec cet ESP32 12F pour voir si ça améliore encore la rapidité.
Oui, j’ai suivi les docs, donc je ne suis pas piégé et j’ai cette ligne.
Coté réactivité, pour l’instant c’est assez sommaire, l’intégration HA débute
J’ai surtout bossé sur la synchro des états du MCU / ESP pour que toutes les fonctions issues de la télécommande soient prises en compte. J’ai un NSPanel en route pour remplacer le tout à ce moment là je serai en dire plus sur la fluidité.