Arduino Nano ESP32
⚡ L’essentiel en 60 secondes
- soc_module — u-blox NORA-W106-10B module embedding an Espressif ESP32-S3 — "the first Arduino board to be based fully on an ESP32" (user manual, p.1, docs page, ESP32-S3 SoC page).
- cpu — dual-core 32-bit Xtensa LX7 @ up to 240 MHz per core; 128-bit data bus, DMA controller (user manual, pp.2, 9).
- memory — 384 kB ROM, 512 kB SRAM, 16 kB SRAM in RTC (8 kB RTC FAST + RTC SLOW, SLOW accessible by the ULP coprocessor in deep sleep), 8 MB PSRAM (octal SPI, in the NORA-W106-10B) (user manual, pp.2, 9-10).
- external_flash — 128 Mbit (16 MB) GD25B128EWIGR on QSPI, 133 MHz, up to 664 Mbit/s (user manual, p.13).
- gpu — none (MCU board).
- connectivity — Wi-Fi 4 802.11 b/g/n 2.4 GHz, up to 150 Mbit/s (HT-40; 72 Mbit/s HT-20), rated EIRP up to 10 dBm, max range 500 m; Bluetooth LE v5.0, up to 2 Mbit/s, multi-connection central/peripheral; built-in antenna (typ. radiated 20 dBm EIRP Wi-Fi / 10 dBm EIRP BLE) (user manual, pp.2, 9-10). No Ethernet, no cellular.
- Sur cette fiche : 9 tutoriels · 10 codes
L’Arduino Nano ESP32, lancée par Arduino AG en 2023, marque une étape significative dans l’histoire de la marque en étant la première carte de développement entièrement basée sur un microcontrôleur de la famille ESP32. Contrairement aux modèles précédents qui utilisaient des puces Atmel ou Microchip, cette carte intègre le module NORA-W106-10B fabriqué par u-blox, lequel encapsule la puce Espressif ESP32-S3. Cette intégration offre aux développeurs la familiarité de l’environnement Arduino tout en leur donnant accès aux puissantes capacités de connectivité sans fil et de traitement des puces Espressif. La carte conserve le format « Nano » classique, mesurant 45 × 18 mm, ce qui la rend compatible avec les breadboards standards et les boîtiers existants, tout en introduisant une connectique USB-C moderne, remplaçant les anciens connecteurs mini-USB ou micro-USB. Elle est disponible avec ou sans connecteurs pré-soudés, offrant une flexibilité selon que l’utilisateur souhaite souder lui-même les broches ou utiliser la carte telle quelle.
Au cœur de la carte se trouve le processeur Xtensa LX7, une architecture 32 bits à double cœur capable de fonctionner jusqu’à 240 MHz par cœur. Cette fréquence d’horloge, qui correspond au nombre de cycles de calcul effectués par seconde, permet une exécution rapide des instructions, idéale pour les tâches nécessitant un temps réel ou un traitement de données soutenu. La mémoire est particulièrement généreuse pour une carte de ce format : elle dispose de 512 Ko de SRAM (mémoire vive rapide) et surtout de 8 Mo de PSRAM (mémoire vive externe à haute capacité) ainsi que 16 Mo de mémoire flash externe. Cette dernière sert à stocker le code du programme et les données permanentes, une capacité bien supérieure à celle des cartes Arduino traditionnelles, permettant d’intégrer des interfaces graphiques complexes ou de grandes bases de données locales. La gestion de l’énergie est assurée par un convertisseur abaisseur de tension (buck converter) MP2322GQH, capable d’accepter une tension d’entrée (VIN) comprise entre 6 et 21 volts, tout en fournissant une tension stable de 3,3 volts aux composants. Il est crucial de noter que tous les broches d’entrée/sortie fonctionnent en logique 3,3 volts ; connecter des périphériques fonctionnant en 5 volts risque d’endommager la carte. De plus, contrairement à d’autres cartes, il n’y a pas de broche de sortie 5 volts régulée ; la tension de 5 volts n’est disponible que si la carte est alimentée via le port USB.
La connectivité sans fil est l’un des atouts majeurs de cette carte. Elle prend en charge le Wi-Fi 4 (norme 802.11 b/g/n) sur la bande des 2,4 GHz, avec des débits théoriques pouvant atteindre 150 Mbit/s, et le Bluetooth Low Energy (BLE) version 5.0, permettant des communications à faible consommation énergétique avec des smartphones ou d’autres appareils. Une antenne intégrée assure la transmission des signaux, offrant une portée typique allant jusqu’à 500 mètrès en conditions idéales. Pour les projets nécessitant une communication directe entre deux cartes sans passer par un routeur Wi-Fi, le protocole ESP-NOW est supporté, permettant l’échange de trames de données jusqu’à 250 octets. En termes d’entrées/sorties, la carte expose 14 broches numériques et 8 entrées analogiques. Les protocoles de communication courants sont disponibles sur des broches spécifiques : le bus I²C (utilisé pour connecter des capteurs ou des écrans) est par défaut sur les broches A4 et A5, tandis que le bus SPI (pour des mémoires rapides ou des écrans) utilise les broches D10 à D13. La carte inclut également un contrôleur CAN/TWAI, une norme de bus série souvent utilisée dans l’automobile, bien qu’elle soit limitée à la version classique CAN 2.0B et non à la version CAN FD plus récente.
L’environnement de développement recommandé est le paquet « Arduino ESP32 Boards » maintenu par Arduino, qui est une dérivation du noyau officiel d’Espressif. Il est impératif d’utiliser cette version spécifique plutôt que le paquet générique « esp32 » d’Espressif, car seule la version Arduino garantit l’installation correcte des pilotes sur Windows et le fonctionnement du débogage matériel. Le débogage est une fonctionnalité notable : grâce à l’interface USB-JTAG native de la puce ESP32-S3, il est possible de mettre des points d’arrêt et d’inspecter l’exécution du code directement depuis l’IDE Arduino (version 2.2.0 ou supérieure) sans avoir besoin de matériel de débogage externe. Pour les utilisateurs préférant le langage Python, la carte est officiellement prise en charge par MicroPython. Le déploiement du firmware MicroPython se fait via le mode DFU (Device Firmware Upgrade), accessible en double-cliquant rapidement sur le bouton de réinitialisation après la mise sous tension.
Malgré ses nombreuses qualités, la carte présente quelques pièges connus. Lors de la connexion au PC, le système peut détecter deux ports série distincts : un port « USB » pour le fonctionnement normal et un port « DFU » pour la récupération ou le flashage bas niveau. L’IDE Arduino doit impérativement être configuré sur le port « USB » pour téléverser des programmes ; choisir le port DFU bloquera l’envoi du code. Par ailleurs, l’effacement complet de la mémoire flash (par exemple via des outils comme esptool) peut supprimer le bootloader DFU d’usine, rendant la carte inaccessible jusqu’à ce que ce dernier soit réinstallé manuellement selon la procédure officielle. Sur Linux, des permissions spécifiques (règles udev) peuvent être nécessaires pour autoriser le débogage. Enfin, la consommation en veille profonde du seul microcontrôleur est très faible (7 microampères), mais les composants périphériques de la carte (comme les LED) augmentent cette consommation, un point à considérer pour les projets alimentés par batterie.



Schéma de brochage (pinout)


| Attr | Specs | vérifié |
|---|---|---|
soc_module | u-blox NORA-W106-10B module embedding an Espressif ESP32-S3 — "the first Arduino board to be based fully on an ESP32" (user manual, p.1, docs page, ESP32-S3 SoC page). | ✔ |
cpu | dual-core 32-bit Xtensa LX7 @ up to 240 MHz per core; 128-bit data bus, DMA controller (user manual, pp.2, 9). | ✔ |
memory | 384 kB ROM, 512 kB SRAM, 16 kB SRAM in RTC (8 kB RTC FAST + RTC SLOW, SLOW accessible by the ULP coprocessor in deep sleep), 8 MB PSRAM (octal SPI, in the NORA-W106-10B) (user manual, pp.2, 9-10). | ✔ |
external_flash | 128 Mbit (16 MB) GD25B128EWIGR on QSPI, 133 MHz, up to 664 Mbit/s (user manual, p.13). | ✔ |
gpu | none (MCU board). | ? non vérifié |
connectivity | Wi-Fi 4 802.11 b/g/n 2.4 GHz, up to 150 Mbit/s (HT-40; 72 Mbit/s HT-20), rated EIRP up to 10 dBm, max range 500 m; Bluetooth LE v5.0, up to 2 Mbit/s, multi-connection central/peripheral; built-in antenna (typ. radiated 20 dBm EIRP Wi-Fi / 10 dBm EIRP BLE) (user manual, pp.2, 9-10). No Ethernet, no cellular. | ✔ |
i_o_from_the_official_core_variant_arduino_nano_nora_pins_arduino_h_https_raw_githubusercontent_com_arduino_arduino_esp32_arduino_nano_esp32_variants_arduino_nano_nora_pins_arduino_h | - NUM_DIGITAL_PINS 25, NUM_ANALOG_INPUTS 8 — header exposes 14 digital (D0–D13) + 8 analog (A0–A7) (store spec table). - All pins are 3.3 V logic — "Do not connect any higher voltage devices to any of the pins" (user manual, p.14). - I²C default on A4 (SDA) / A5 (SCL) (SDA = A4, SCL = A5); GPIO-matrix assignable to most pins (pins_arduino.h, user manual, p.11). - SPI SCK D13 / CIPO(MISO) D12 / COPI(MOSI) D11 / CS D10; UART RX D0 / TX D1; I²S pins SCK D7, FS D8, SD D9 (bidir), SD_IN D10; 2× I²S controllers; CAN/TWAI (CAN 2.0B "classic", not CAN FD) on any free GPIO (pins_arduino.h, user manual, pp.12-13). - PWM: digitalPinHasPWM(p) covers every mapped GPIO < 46 in the core; the store spec table instead lists "PWM pins: 5". - LEDs: LED_BUILTIN = D13; RGB LED on LED_RED = 14, LED_GREEN = 15, LED_BLUE = 16 (store: "Built-in RGB LED pins 14-16") (pins_arduino.h, store spec table). - USB: native USB-C (ESP32-S3 USB, VID 0x2341 / PID 0x0070) (pins_arduino.h). | ✔ |
power | operating voltage 3.3 V; VIN 6–21 V (typ 7 V), USB VBUS 4.8–5.5 V; both rails stepped down by an MP2322GQH buck converter; no 5 V pin (VBUS only passes USB power through); 3.3 V pin output for externals; GPIO source 40 mA / sink 28 mA (user manual, pp.6, 13-15). | ✔ |
consumption | 7 µA deep sleep / 240 µA light sleep (ESP32-S3 SoC only — board LEDs etc. add more) (user manual, p.2). | ✔ |
temperature | ambient −40 to +105 °C (recommended operating conditions) (user manual, p.6). | ✔ |
size | 45 × 18 mm, classic Nano footprint (store spec table). | ✔ |
- Fabricant : Arduino (arduino.cc / Arduino AG), utilisant le module u-blox NORA-W106-10B (manuel utilisateur, p. 1, série u-blox NORA-W10).
- Année : 2023. Le journal des modifications du manuel utilisateur officiel indique « 08/06/2023 Release » (le manuel utilise le format JJ/MM/AAAA — son en-tête indique « Modified: 08/10/2026 », soit le 8 octobre 2026) (manuel utilisateur, journal des modifications).
- Statut : Actif / produit actuel — fiche technique modifiée pour la dernière fois le 2026-10-08, la boutique indique la carte comme disponible (manuel utilisateur, page boutique).
- Prix : 20,40 € sur la boutique officielle au moment de la récupération (locale EUR, "price":2040 dans le JSON produit) (page boutique).
- Variantes : vendue avec et sans connecteurs pré-soudés (« The Arduino Nano ESP32 (with and without headers)… » — manuel utilisateur, p. 1). Deux SKU apparaissent dans la documentation officielle : ABX00083 (manuel utilisateur) et ABX00092 (tableau des caractéristiques de la boutique).
+ Points forts
- Première carte Arduino entièrement basée sur un ESP32 avec Wi-Fi + BLE au format Nano — « the first Arduino board to be based fully on an ESP32 » (manuel utilisateur, p. 1).
- Première Nano avec USB-C (page docs).
- Débogage prêt à l'emploi, sans matériel supplémentaire (USB-JTAG de l'ESP32-S3) (page docs, tutoriel débogage).
- Prise en charge du protocole pair-à-pair ESP-NOW (trames jusqu'à 250 octets, sans AP requis) (tutoriel ESP-NOW).
- Deux mondes de programmation : core Arduino (2.x/ESP-IDF 5.1.4) et prise en charge de la carte par le MicroPython amont (page docs, carte MicroPython).
- 8 MB PSRAM + 16 MB flash — mémoire inhabituellement grande pour la classe Nano (manuel utilisateur, p. 10, 13).
- Contrôleur CAN/TWAI sur n'importe quel GPIO (bus de type automobile sur une carte maker) (manuel utilisateur, p. 13).
- Coprocesseur ULP + mémoire RTC, plancher de 7 µA en veille profonde au niveau SoC pour les conceptions sur batterie (manuel utilisateur, p. 2).
- Intégration Arduino Cloud pour tableaux de bord IoT (page docs).
− Points faibles
- Deux ports, un seul bon choix : la carte peut s'énumérer à la fois comme port "USB" et comme port "DFU" ; choisir DFU dans l'IDE bloque les téléversements — la documentation officielle indique de sélectionner le port USB (prise en main).
- Mauvais core = pas de pilotes / pas de débogage : il faut utiliser le « Arduino ESP32 Boards » package by Arduino, pas le package "esp32" d'Espressif — « For Windows users this is paramount, otherwise no drivers will be ever installed and no debugging can be performed » (tutoriel débogage).
- Permissions Linux : le débogage peut échouer avec libusb_open failed with LIBUSB_ERROR_ACCESS / esp_usb_jtag: could not find or open device ! tant que les règles udev ne sont pas installées (tutoriel débogage).
- Boucles de connexion/déconnexion USB : des utilisateurs rapportent une carte qui s'énumère à répétition et refuse les nouveaux firmwares ; la récupération impose d'entrer en bootloader DFU (forum topic 1249799).
- "No DFU capable USB device available" : après une flash effectuée avec PlatformIO ou d'autres outils, les téléversements depuis l'Arduino IDE échouent tant que la carte n'est pas remise dans le bon mode (forum topic 1251053, forum topic 1252665).
- Le port disparaît après le débogage : restaurer un sketch normal après une session de débogage IDE peut faire disparaître le port "cube" (Ubuntu, IDE 2.2.1, core 2.0.12) (forum topic 1227968).
- Craintes de brique / cartes bloquées : des fils comme "Nano ESP 32 bricked?" documentent des cartes qui cessent de répondre aux téléversements normaux et nécessitent un double-clic sur reset ou une récupération DFU (forum topic 1266537, manuel utilisateur, p. 19).
- Pas de rail 5 V : il n'y a pas de broche 5V ; VBUS ne transporte du 5 V que si la carte est alimentée par USB, et il est mort en alimentation par VIN — les shields/capteurs 5 V nécessitent une alimentation externe (manuel utilisateur, p. 13-15).
- TWAI ≠ CAN FD : le contrôleur CAN est uniquement du CAN 2.0B classic (manuel utilisateur, p. 13).
- Divergence du fork du core : le package Arduino suit la branche 2.x avec ESP-IDF v5.1.4, et Arduino avertit « functions and features may differ between versions » par rapport au core d'Espressif — les sketches/bibliothèques ciblant le core amont peuvent ne pas compiler tels quels (prise en main, tutoriel ESP-NOW).
- L'effacement complet de la puce tue le bootloader DFU : effacer toute la flash (par ex. avec esptool) supprime le bootloader DFU d'usine ; il doit être réinstallé via la procédure de support Arduino (deploy.md).
- Retour d'expérience expert expert — expert-arduino
- Après quelques semaines d'utilisation de la Nano ESP32, je confirme que c'est une bête de course pour le format Nano : 8 Mo de PSRAM et 16 Mo de flash, c'est rare. Le debug USB-JTAG natif est un vrai plus comparé aux cartes classiques. Par contre, attention aux pièges de démarrage. Si vous voyez de… — expert-arduino
- Merci pour le rappel sur les ports ! J'ai eu exactement ce souci au début, ça m'a fait perdre une heure. Un truc qui m'a aussi piégé, c'est l'absence totale de pin 5V. Comme je viens des cartes Uno/Mega, je branchais mes capteurs 5V directement en me disant que le convertisseur allait gérer. Résult… — hobbyiste-tinkering
- Je confirme le coup du brick facile si on touche au bootloader. J'ai fait une erreur en flashant avec esptool pour effacer la flash entière et j'ai perdu le bootloader DFU d'usine. La carte ne répondait plus aux commandes normales et il a fallu suivre la procédure de support Arduino pour le réinsta… — maker-codeur
Retours et projets de la communauté
- Debugging on the new Nano ESP32 forum.arduino.cc
- Arduino CLI and Nano ESP32 - Can't Upload forum.arduino.cc
- Arduino Nano ESP32 hangs, possibly HTTPClient related? forum.arduino.cc
- How do you made the double tap reset to dfu working on Arduino Nano ESP32? forum.arduino.cc
- ABX00083-datasheet.pdf datasheet
- ABX00083-full-pinout.pdf pdf
- Official board page (features, ESP32 platform notes)
- Official user manual / datasheet (SKU ABX00083, 41 pp.)
- Full pinout PDF
- Store page (price, spec table, SKU ABX00092)
- Getting started
- Debugging tutorial
- ESP-NOW tutorial
- Arduino ESP32 core fork (branch arduino_nano_esp32)
- Core variant pin map (authoritative)
- Upstream Espressif core
- MicroPython board port (config, pins, deploy)
- u-blox NORA-W10 series
- Espressif ESP32-S3 SoC
- Community forum
- Deux ports, un seul bon choix : la carte peut s'énumérer à la fois comme port "USB" et comme port "DFU" ; choisir DFU dans l'IDE bloque les téléversements — la documentation officielle indique de sélectionner le port USB (prise en main).
- Mauvais core = pas de pilotes / pas de débogage : il faut utiliser le « Arduino ESP32 Boards » package by Arduino, pas le package "esp32" d'Espressif — « For Windows users this is paramount, otherwise no drivers will be ever installed and no debugging can be performed » (tutoriel débogage).
- Permissions Linux : le débogage peut échouer avec libusb_open failed with LIBUSB_ERROR_ACCESS / esp_usb_jtag: could not find or open device ! tant que les règles udev ne sont pas installées (tutoriel débogage).
- Boucles de connexion/déconnexion USB : des utilisateurs rapportent une carte qui s'énumère à répétition et refuse les nouveaux firmwares ; la récupération impose d'entrer en bootloader DFU (forum topic 1249799).
- "No DFU capable USB device available" : après une flash effectuée avec PlatformIO ou d'autres outils, les téléversements depuis l'Arduino IDE échouent tant que la carte n'est pas remise dans le bon mode (forum topic 1251053, forum topic 1252665).
- Le port disparaît après le débogage : restaurer un sketch normal après une session de débogage IDE peut faire disparaître le port "cube" (Ubuntu, IDE 2.2.1, core 2.0.12) (forum topic 1227968).
- Craintes de brique / cartes bloquées : des fils comme "Nano ESP 32 bricked?" documentent des cartes qui cessent de répondre aux téléversements normaux et nécessitent un double-clic sur reset ou une récupération DFU (forum topic 1266537, manuel utilisateur, p. 19).
- Pas de rail 5 V : il n'y a pas de broche 5V ; VBUS ne transporte du 5 V que si la carte est alimentée par USB, et il est mort en alimentation par VIN — les shields/capteurs 5 V nécessitent une alimentation externe (manuel utilisateur, p. 13-15).
- TWAI ≠ CAN FD : le contrôleur CAN est uniquement du CAN 2.0B classic (manuel utilisateur, p. 13).
- Divergence du fork du core : le package Arduino suit la branche 2.x avec ESP-IDF v5.1.4, et Arduino avertit « functions and features may differ between versions » par rapport au core d'Espressif — les sketches/bibliothèques ciblant le core amont peuvent ne pas compiler tels quels (prise en main, tutoriel ESP-NOW).
- L'effacement complet de la puce tue le bootloader DFU : effacer toute la flash (par ex. avec esptool) supprime le bootloader DFU d'usine ; il doit être réinstallé via la procédure de support Arduino (deploy.md).
- Faire clignoter la LED embarquée et la LED RGB debutant Schéma : IMG-nano-esp32-debutant-1-nanoesp32-clignotement-led.svg — La carte Nano ESP32 avec la LED D13 et la LED RGB embarquées en évidence.
- Bouton USER et console série USB-C debutant Schéma : IMG-nano-esp32-debutant-2-nanoesp32-bouton-user-console.svg — Doigt appuyant sur le bouton USER, câble USB-C vers un PC affichant la console série.
- Lire un capteur analogique sur A0 (ADC 12 bits) debutant Schéma : IMG-nano-esp32-debutant-3-nanoesp32-capteur-analogique.svg — Potentiomètre 10 kΩ câblé entre 3V3, A0 et GND avec échelle 0-3,3 V.
- Scanner les réseaux Wi-Fi 2,4 GHz intermediaire Schéma : IMG-nano-esp32-intermediaire-1-nanoesp32-scan-wifi.svg — La carte scanne les réseaux Wi-Fi 2,4 GHz environnants avec leur puissance RSSI.
- Être un périphérique Bluetooth LE avec ArduinoBLE intermediaire Schéma : IMG-nano-esp32-intermediaire-2-nanoesp32-ble-arduino-ble.svg — Diffusion Bluetooth LE de la carte vers un smartphone exécutant nRF Connect.
- Piloter un servo avec le PWM (LEDC) intermediaire Schéma : IMG-nano-esp32-intermediaire-3-nanoesp32-pwm-servo.svg — Servo SG90 alimenté par une source 5 V externe, signal sur D9, masse commune avec la carte.
- Exposer un stockage de masse USB (TinyUSB MSC) avance Schéma : IMG-nano-esp32-avance-1-nanoesp32-tinyusb-msd.svg — La carte énumérée comme clé USB dans l'explorateur, image disque stockée dans la flash de 16 Mo.
- Deep-sleep 7 µA et réveil externe (EXT0) avance Schéma : IMG-nano-esp32-avance-2-nanoesp32-deep-sleep-ext0.svg — Carte en deep-sleep (microampères), bouton de réveil sur une broche EXT0 et minuteur de secours.
- Communication inter-cartes avec ESP-NOW avance Schéma : IMG-nano-esp32-avance-3-nanoesp32-esp-now.svg — Deux Nano ESP32 échangeant des trames ESP-NOW en direct, sans routeur intermédiaire.
Bibliothèque de code — exemples écrits pour cette carte
connexion-wifi.inoArduinopoint-acces.inoArduinoble-capteur.inoArduinoneoled-rgb.inoArduinoadc-12bits.inoArduinopreferences.inoArduinodeepsleep-minute.inoArduinoscanner-i2c.inoArduinoble_listen.pyPythonserveur-capteur.inoArduino
Exemples et dépôts trouvés en ligne
- espressif/arduino-esp32 github.com
- mirobotech/CEMC2025 github.com
- maxgerhardt/pio-nano-esp32-usb-cdc github.com
- cgoulart35/StormerESP32 github.com