[{"uuid":"cde63590-e096-4b67-9015-93e5e3897517","slug":"esp","title":"ESP","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-07-23 16:55:24","created_at":"2023-07-23 16:55:24","updated_at":"2023-07-23 16:55:24","tags":[],"plain":"Les ESP (Espressif Systems Processor) sont des microcontrôleurs avec un module Wi-Fi intégré, conçus pour le développement IoT (Internet of Things). Ils sont souvent utilisés pour la conception de produits intelligents pour la maison, la vie personnelle et l'industrie. Les ESP peuvent être programmés à l'aide d'un environnement de développement intégré (IDE) similaire à celui d'Arduino, ce qui en fait un choix populaire pour les développeurs débutants et expérimentés. Il existe plusieurs familles d'ESP, chacune avec ses propres caractéristiques et fonctionnalités uniques, telles que la mémoire flash, la RAM, les ports GPIO, etc. Les produits les plus populaires de la famille ESP incluent l'ESP8266 et l'ESP32. Comparaison des differéntes familles\nESP8266 | ESP32 | ESP32-C3 |\n------- | ----- | -------- |\nDate de sortie | 2014 | 2016 | 2020 | |\nMCU | Xtensa Single-Core 32-bit | Xtensa Dual-Core 32-bit | RISC-V 32-bit Single-Core | |\nFréquence | 80 MHz | 160 à 240 MHz | 160 MHz | |\nRAM / SRAM | 160 Ko | 520 Ko | 400 Ko | |\nWifi | 802.11b/g/n (max 65Mbps) | 802.11b/g/n | 802.11b/g/n | |\nBluetooth | non | 4.2 et BLE | 5.0 et BLE | |\nESP Mesh | oui | oui | oui | |\nCapteur T° integré | non | oui | oui | |\nCapteur Effet Hall | non | oui | non | |\nGPIO | 17 | 36 | 22 | |\nCrypto Support | non | AES, SHA-2, RSA, ECC, RNG | AES-128/256, RSA Accelerator, SHA Accelerator, Random Number Generator (RNG), HMAC | |\nConsommation en veille | 20 µA | 5 µA | 5 µA\\\\ 1 µA en mode arrêt | | Table des matières\nIntroduction\n- ESP8266 : un microcontrôleur Wi-Fi à faible coût utilisé pour construire des projets IoT (Internet des objets) et domotiques.\nESP8266 Arduino Core’s documentation\nArduino core for the ESP8266\nESP-01\nESP-12F \nESP32 : un autre microcontrôleur Wi-Fi et Bluetooth doté de plus de mémoire et de puissance de traitement que l'ESP8266.\nInfos concernant la Famille des ESP32 \nArduino core for the ESP32\nESP32 Programming Guide\nInfos concernant la Famille des ESP32-S \nESP32-S2 Programming Guide\nESP32-S3 Programming Guide\nInfos concernant la Famille des ESP32-C \nESP32-C3 Programming Guide\nESP32-H2\nAdaptateurs USB vers ESP : des dispositifs permettant de connecter des ESP à un ordinateur via USB pour la programmation et le débogage.\nProgrammation de l'ESP : comment écrire et charger du code sur l'ESP pour contrôler les périphériques connectés.\nCommuniquer avec l'ESP\nLes commandes AT\nSPIFFS\nMise à jour OTA\nIRemote\nServeur NTP\nInteraction de l'ESP avec d'autres périphériques : comment utiliser l'ESP pour contrôler des appareils tels que des moteurs, des capteurs et des écrans. Sécurité de l'ESP : comment protéger les projets IoT contre les attaques en ligne en utilisant des techniques telles que le cryptage et l'authentification.\n-\n-"},{"uuid":"38c82eb5-fbd4-4d06-8c8e-d02cc545f932","slug":"48-20201213-initiation-a-l","title":"Initiation à l'ESP-01","category":"Podcasts","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-13 11:48:22","created_at":"2020-12-13 11:48:22","updated_at":"2020-12-13 11:48:22","tags":[],"plain":"Voici le 48ème épisode : Initiation à l'ESP-01\nCette page est amenée à évoluer. Réagissez à cet épisode dans la partie [Épisode disponible sur https://info.mindcast.fr/]\n-- Transcription de l'épisode\nBonjour je m'appelle Cédric et je suis technicien informatique. \nNous avons aborder l'ESP. J'aime bien parler de technologie et c'est vrai que les bébêtes à 4 pattes ça correspond au thème de S'informer sur la tech. Des fois beaucoup quand il y a beaucoup plus de pattes, j'adore, c'est vraiment l'extase. Et depuis peu, je me passionne pour les microcontrôleurs et les circuits intégrés programmables ESP. Mais qu'est-ce que c'est ? Je ne vais pas vous refaire un cours sur le microcontrôleur mais rapidement, je vais pouvoir piloter, commander et récupérer des informations, de différents appareils. J'aime bien dire quand on veut apprendre quelque chose, qu'il faut avoir un objectif. Ça y est ! j'ai un objectif qui me permettra d'exploiter l'ESP. L'objectif est le suivant. On me met au défi de piloter un radiateur à distance. Il ne s'agit pas d'un simple fil pilote. Explication. Le radiateur cible permet d'accumuler de l'énergie dans des pierres refractère, d'emmagasiner de l'énergie et le restituer tout au long de la journée lorsqu'on en a besoin. Ce radiateur, en plus d'avoir besoin d'une alimentation électrique et d'un fil pilote, il a également besoin d'avoir le fil indicatif d'heures creuses. C'est le même fil qui va vers les chauffe-eau électrique pour mettre en route le chauffe-eau durant la nuit. Entre nous, on n'a jamais pensé à faire arriver fil heures creuses vers les radiateurs ! À moindre coût, sans monter une usine à gaz, il faut que j'arrive à envoyer cette information. Evidemment on ne va pas casser casser la dalle pour tirer un câble. Il faut que j'arrive à donner au radiateur l'information qu'il veut. Pour rappel, le signal heures creuses, c'est simplement le passage de la phase du 230 volts sur une borne de l'appareil. Tout simplement, il suffit de mettre la phase 230 V sur la borne pour indiquer à l'appareil que nous sommes en heures creuses. Donc, si nous voulons automatiser ça, on va avoir besoin d'un relais branché sur la phase du circuit électrique. À un certain moment, on collera le relais pour laisser passer le 230 V phase sur la broche du radiateur. Mais qui va piloter ce relais ? Vous avez déjà la réponse. Un ESP. Pourquoi un ESP ? Travailler le respect pour qu'il puisse coller le relais sur ordre. Cet ordre va être un ordre horaires. Donc on y apporte la notion de gestion des temps, savoir quelle heure il, et de communication pour contacter un serveur des temps."},{"uuid":"ab80312d-1483-4187-bbe6-54bcaed793a9","slug":"specifications-esp-01","title":"ESP-01 : présentation et premiers pas","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2022-01-28 10:03","created_at":"2022-01-28 10:03:16","updated_at":"2026-05-13 18:26:30","tags":[],"plain":"Présentation\r\n\r\nL'ESP-01 est un module Wi-Fi compact construit autour du microcontrôleur ESP8266EX d'Espressif. Sur un PCB d'environ 24 × 14 mm, il rassemble :\r\nun microcontrôleur ESP8266EX (cœur Tensilica L106 32 bits cadencé à 80/160 MHz) ;\r\nune mémoire SPI Flash externe (généralement 1 Mo sur les versions courantes, parfois jusqu'à 4 Mo) ;\r\nune antenne PCB d'environ 2 dBi, gravée directement sur le circuit imprimé ;\r\nun connecteur 2 × 4 broches au pas de 2,54 mm.\r\nLien d'achat : ESP-01 basé sur ESP8266\r\n\r\nESP8266EX vs ESP-01 : ne pas confondre\r\n\r\nUne confusion fréquente porte sur la dénomination du produit :\r\nESP8266EX désigne le circuit intégré (le SoC) produit par Espressif. C'est la puce qui contient le processeur, la radio Wi-Fi, la RAM et les périphériques.\r\nESP-01 désigne un module : un petit PCB qui embarque l'ESP8266EX, sa mémoire flash, son antenne et un connecteur d'accès. Il est conçu et vendu par AI-Thinker, pas par Espressif.\r\n\r\nPlusieurs autres modules existent autour du même SoC (ESP-02, ESP-05, ESP-07, ESP-12, etc.). Ils diffèrent par le nombre de broches exposées, la taille de la flash, le type d'antenne et le facteur de forme. L'ESP-01 est le plus simple et le plus économique de la famille, mais aussi le plus contraint en nombre d'entrées/sorties accessibles.\r\n\r\nPourquoi un adaptateur USB est nécessaire\r\n\r\nL'ESP-01 n'expose qu'un port série UART à 3,3 V — pas d'interface USB, pas de régulateur, pas de bouton. Pour le programmer ou dialoguer avec lui depuis un ordinateur, il faut un adaptateur USB-série capable de :\r\nconvertir les niveaux USB en niveaux série logiques ;\r\nfournir une alimentation 3,3 V stable (l'ESP-01 ne tolère pas le 5 V).\r\n\r\nLes adaptateurs courants utilisent une puce CH340, CP2102 ou FT232. Certains sont des dongles spécialement formés pour accueillir l'ESP-01 directement sur leur connecteur.\r\nAttention : on lit parfois la référence « CH360 ». Il s'agit en réalité de la CH340 (de WCH). Aucune puce « CH360 » n'existe dans cette gamme.\r\n\r\nBrochage de l'ESP-01\r\n\r\n\r\n\r\nLe connecteur 8 broches est directement câblé sur les pins de l'ESP8266EX :\r\nBroche | Nom | Rôle |\r\n---|---|---|\r\n1 | GND | Masse |\r\n2 | GPIO2 | E/S générique. Doit être à l'état haut (ou flottante) au démarrage pour booter normalement. |\r\n3 | GPIO0 | E/S générique. Forcée à GND au démarrage pour entrer en mode programmation (flash). Laissée libre, elle permet un boot normal. |\r\n4 | RX | Réception série (UART0). À relier au TX de l'adaptateur USB-série. |\r\n5 | TX | Émission série (UART0). À relier au RX de l'adaptateur USB-série. |\r\n6 | CHPD (aussi noté EN) | Chip enable. Doit être maintenue à 3,3 V pour que le module fonctionne. |\r\n7 | RST | Reset, actif à l'état bas. |\r\n8 | VCC | Alimentation 3,3 V uniquement. |\r\n\r\nPoints de vigilance :\r\nl'alimentation 3,3 V est impérative ; le 5 V détruit le SoC instantanément ;\r\nles pics de courant en émission peuvent atteindre 300 mA. Une alimentation sous-dimensionnée provoque des resets aléatoires ;\r\nles niveaux logiques sont également à 3,3 V : interfacer un Arduino Uno (5 V) sans pont diviseur ou level shifter peut endommager l'ESP.\r\n\r\nBranchement avec un adaptateur USB-CH340\r\n\r\n\r\n\r\nUne fois l'ESP-01 enfiché dans l'adaptateur, ce dernier joue le rôle de pont entre le port USB de l'ordinateur et l'UART de l'ESP8266EX :\r\nl'ordinateur voit un port série virtuel ( sous Linux, sous Windows) ;\r\nl'adaptateur fournit le 3,3 V à l'ESP-01 et relaie les octets dans les deux sens ;\r\nla plupart des adaptateurs d'entrée de gamme ne gèrent pas le passage en mode flash : voir l'article dédié à la modification de l'adaptateur USB vers ESP-01 pour ajouter un jumper GPIO0 / GND.\r\n\r\nDatasheet\r\n\r\nLa documentation officielle est très succincte pour ce module. Les deux références utiles sont :\r\nla datasheet de l'ESP8266EX (Espressif) — caractéristiques électriques, brochage du SoC, consommation : \r\nla datasheet AI-Thinker de l'ESP-01 (sommaire) — dimensions et brochage du module : disponible sur le mirroir du fabricant.\r\n\r\n\r\n\r\nLe fichier joint à cet article reprend la version condensée diffusée par AI-Thinker : esp01.pdf\r\n\r\nConfigurer l'IDE Arduino\r\n\r\n\r\n\r\nL'IDE Arduino ne sait pas, par défaut, compiler pour l'ESP8266. Il faut au préalable installer le board package correspondant.\r\n\r\n1. Ajouter l'URL du gestionnaire de cartes\r\n\r\nDans , ajouter dans URL de gestionnaire de cartes supplémentaires :\r\n\r\n\r\n\r\n2. Installer le support ESP8266\r\n\r\nOuvrir , rechercher esp8266 et installer le paquet esp8266 by ESP8266 Community.\r\n\r\n3. Sélectionner la carte et les paramètres\r\n\r\nPour un ESP-01, choisir , puis vérifier les paramètres suivants :\r\nParamètre | Valeur recommandée pour ESP-01 |\r\n---|---|\r\nFlash Size | pour les ESP-01 noirs ; pour les anciens ESP-01 bleus |\r\nFlash Mode | (compatible avec la majorité des modules ; éviter qui plante au boot sur certains lots) |\r\nFlash Frequency | |\r\nCPU Frequency | |\r\nUpload Speed | baud (vitesse fiable ; possible de monter à 230400 ou 460800 si l'adaptateur suit) |\r\nReset Method | si l'adaptateur câble DTR ; sinon (reset manuel) |\r\nPort | port série de l'adaptateur (, …) |\r\n\r\nEn pratique, sur un ESP-01 récent acheté avec un adaptateur basique, seul le port série doit être ajusté. Les valeurs par défaut conviennent.\r\n\r\n4. Premier téléversement\r\n\r\nUn programme de test minimal pour valider la chaîne complète :\r\n\r\n\r\n\r\nAvant de lancer le téléversement :\r\n\r\n1. placer l'ESP-01 en mode flash** (GPIO0 à GND au démarrage) ;\r\n2. brancher l'adaptateur sur le PC ;\r\n3. lancer le téléversement depuis l'IDE Arduino.\r\n\r\nSi l'opération échoue avec un message du type , c'est que la mise en mode flash n'a pas été effective. Voir là encore l'article sur la modification de l'adaptateur.\r\n\r\nPour aller plus loin\r\nAdaptateur USB vers ESP-01 : activer le mode programmation\r\nESP8266 : commandes AT\r\nRéinitialisation d'un ESP-01 : restauration du firmware AT\r\n```"},{"uuid":"b5556d4d-491b-4f6c-8b64-901bbd448362","slug":"module-relais-wifi-esp","title":"Module relais wifi ESP","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2021-03-27 08:57:07","created_at":"2021-03-27 08:57:07","updated_at":"2021-03-27 08:57:07","tags":[],"plain":"Cet article est en cours de rédaction. Il manque des informations essentielles à la compréhension et à la réalisation de l'exemple. Vous pouvez participer à la rédaction de cet article en vous inscrivant ou en laissant un message dans les commentaires. Composants principaux de la carte Détail des connecteurs\nN° | Désignation |\n--- | ----------- |\n1 | VCC, GND: alimentation cc 8-80V |\n2 | Micro USB: alimentation USB cc 5V\\\\ Remarque: DC8-80V/DC5V USB/broche d'en-tête 5V peut choisir l'une des trois méthodes d'alimentation. Bouton 3,6x6mm: bouton de réinitialisation ESP8266 |\n3 | Bouton reset |\n4 | Port UART: GND, RX, TX, 5V\\\\ Sont respectivement connectés au GND, TX, RX, 5V de l'ESP8266. Module de port série TTL externe.\\\\ IO0 doit être connecté à GND pour télécharger. Une fois le téléchargement terminé, déconnectez la connexion IO0 et GND. |\n5 | Report GPIO de l'ESP8266 |\n6 | Sortie de relais\\\\ NC: relais normalement fermé. Le relais est relié avec le COM\\\\ COM: commun du relais;\\\\ NON: relais normalement ouvert. Il est relié au COM après avoir reçu la commande. |\n7 | Indicateur de puissance LED |\n8 | LED Programmable: utilisez le contrôle GPO16 |\n9 | Indicateur de relais LED: s'allume lorsqu'il est fermé. | Vue du dessous ESP-12F\nPIN | Désingation |\n--- | ----------- |\nGND | Terre |\nGPIO15 | MTDO; HSPICS; UARTO-RTS |\nGPIO2 | GPIO4 |\nGPIO0 |\nGPIO5 | port d'entraînement de relais, l'entraînement de IO5 est utilisé par défaut. Si vous voulez utiliser d'autres e/s pour conduire le relais, vous pouvez supprimer e14, puis connecter les e/s du relais d'entraînement à cette broche de relais |\nGPIO4 |\nRXD0 | RX: UARTO-RXD: GPIO3 |\nTXD0 | UARTO-TXD; GPIO1 |\nRST |\nADC | résultat de conversion A/n. Plage de tension d'entrée: 0 1V, plage de valeur: 0 1024 |\nEN |\nGPIO16 |\nGPIO14 |\nGPIO12 | HSPI-MISO |\nGPIO13 |\nVCC | Alimentaiton 3v3 |\nCS0 | sélection de puce |\nMISO | sortie esclave et entrée hôte |\nGPIO9 |\nGPIO10 |\nMOSI | sortie hôte et entrée esclave |\nSCLK | horloge | Caractéristiques du relais\nSwitching capacity available by 10A in spite of small size design for highdensity P.C. board mounting technique.\nUL,CUL,TUV recognized.\nSelection of plastic material for high temperature and better chemical solution performance.\nSealed types available.\nSimple relay magnetic circuit to meet low cost of mass production."},{"uuid":"68a07aea-8f12-4b6a-802a-03af83a09ad8","slug":"adaptateur-usb-vers-esp-01-activer-le-mode-programmation","title":"Adaptateur USB vers ESP-01 : activer le mode programmation","category":"Électronique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2020-12-13 07:44","created_at":"2020-12-13 07:44:45","updated_at":"2026-05-13 18:21:06","tags":[],"plain":"Présentation\r\n\r\nL'adaptateur USB vers ESP-01 avec puce CH340 permet de connecter facilement un module ESP-01 (basé sur le microcontrôleur ESP8266) au port USB d'un ordinateur. Il intègre également un régulateur de tension 3,3 V, indispensable pour alimenter correctement l'ESP-01.\r\n\r\nCet adaptateur sert à deux usages principaux :\r\ndialoguer avec l'ESP-01 via des commandes AT (commandes Hayes) afin de récupérer des informations ou de piloter le module ;\r\ntéléverser un firmware personnalisé sur l'ESP8266, par exemple depuis l'IDE Arduino.\r\nLien d'achat : adaptateur USB vers ESP-01 avec puce CH340\r\n\r\nLe problème : passer en mode programmation\r\n\r\nPar défaut, l'ESP-01 démarre en mode UART (communication série), qui convient pour échanger des commandes AT mais ne permet pas de flasher un nouveau firmware. Pour téléverser un programme, il faut basculer le module en mode FLASH (également appelé mode programmation).\r\n\r\nCette bascule n'est pas logicielle : elle se fait électriquement, en forçant la broche GPIO0 à la masse (GND) au moment du démarrage du module.\r\n\r\nDe nombreux adaptateurs USB vers ESP-01 d'entrée de gamme ne prévoient pas de bouton ou de switch pour cette opération. Sans modification, toute tentative de téléversement échoue avec une erreur de ce type dans l'IDE Arduino :\r\n\r\n\r\n\r\n\r\n\r\nLe message clé est : n'a pas réussi à mettre le module en mode flash et abandonne après plusieurs tentatives.\r\n\r\nLa solution : modifier l'adaptateur\r\n\r\nPour rendre l'adaptateur compatible avec le mode programmation, il suffit d'ajouter un moyen de relier GPIO0 à GND à la demande. Rappel du brochage de l'ESP-01 :\r\n\r\n\r\n\r\nMatériel nécessaire\r\nun fer à souder et de l'étain ;\r\ndeux fils fins ;\r\nune barrette de deux broches au pas de 2,54 mm ;\r\nun jumper ;\r\néventuellement un pistolet à colle pour rigidifier l'ensemble.\r\n\r\nProcédure\r\n\r\n1. Souder un premier fil sur la broche GPIO0 (côté adaptateur).\r\n2. Souder un second fil sur une broche GND (côté adaptateur).\r\n3. Relier l'autre extrémité de chaque fil à une broche de la barrette, de manière à pouvoir court-circuiter GPIO0 et GND en plaçant simplement un jumper.\r\n4. Fixer la barrette avec une goutte de colle chaude pour éviter que les fils ne tirent sur les soudures.\r\n\r\n\r\n\r\nUtilisation\r\nPour téléverser un programme : placer le jumper (GPIO0 relié à GND), insérer l'adaptateur dans le port USB, puis lancer le téléversement depuis l'IDE Arduino.\r\nPour utiliser le module normalement (commandes AT ou exécution du firmware) : retirer le jumper, puis débrancher et rebrancher l'adaptateur pour redémarrer l'ESP-01 dans son mode standard.\r\n\r\n\r\n\r\nÀ retenir\r\n\r\nLe téléversement d'un nouveau firmware écrase le code précédemment chargé, y compris le firmware AT d'origine. Pour retrouver les commandes AT après avoir flashé un programme personnalisé, il faudra reflasher un firmware AT officiel d'Espressif.\r\n```"}]