Actualités · Tech

Wokwi

simuler ses montages Arduino et ESP32 sans matériel

Un banc d’essai virtuel qui tourne dans le navigateur : ce qu’il valide vraiment, et ce qu’il laisse au montage réel.

Personne écrivant du code sur un ordinateur portable posé sur un plan de travail d'électronique
Réponse rapide

Wokwi est un simulateur d’électronique qui fonctionne dans un navigateur, sans installation : on choisit une carte Arduino, ESP32, Raspberry Pi Pico ou STM32, on y branche des composants virtuels, on écrit son programme et on lance la simulation. Le code s’exécute réellement sur un microcontrôleur émulé, ce qui permet de valider une logique et un câblage. Il ne dit rien en revanche du comportement électrique réel : consommation, parasites et bruit de mesure restent l’affaire d’un montage physique.

  • Aucun lien avec le wok : il s’agit d’électronique, pas de cuisine.
  • Dans le navigateur : rien à installer, rien à commander, rien à griller.
  • Microcontrôleur émulé : le programme s’exécute vraiment, erreurs comprises.
  • Frontière nette : la logique se valide à l’écran, le physique se vérifie sur table.

Wokwi, c’est quoi — et pourquoi ce n’est pas une histoire de wok

Le nom trompe, et beaucoup de recherches arrivent ici par ricochet : Wokwi n’a rien à voir avec la poêle creuse des cuisines asiatiques, et rien à voir non plus avec le mot woke. C’est le nom d’un simulateur d’électronique qui fonctionne dans un navigateur.

Concrètement, on ouvre une page web, on choisit une carte à microcontrôleur, on y branche des composants virtuels, on écrit un programme, on appuie sur lecture. Le montage s’animera à l’écran : la LED clignote, l’écran affiche, le servomoteur tourne. Aucun composant à commander, aucun logiciel à installer, aucun risque de griller quoi que ce soit.

L’outil s’adresse à qui veut apprendre à programmer une carte électronique, tester une idée avant de sortir le fer à souder, ou faire tourner un exercice devant une classe sans distribuer trente kits. Il ne remplace pas un établi, on y reviendra, mais il retire l’obstacle du matériel au moment où cet obstacle décourage le plus.

Ce que l’outil simule concrètement

Le catalogue se répartit en trois ensembles : les cartes, les composants qu’on y relie, et les instruments qui servent à comprendre ce qui se passe.

Les cartes

Les plateformes courantes

Cartes Arduino les plus répandues, modules ESP32, Raspberry Pi Pico, cartes STM32 : les plateformes que l’on croise dans les projets amateurs et dans l’enseignement technique. Le catalogue évoluant, la liste exacte se consulte dans la documentation.

Les composants

Ce qu’on branche autour

LED, boutons, potentiomètres, capteurs de température et d’humidité, capteurs de distance, afficheurs à cristaux liquides ou à diodes organiques, matrices de LED, servomoteurs, moteurs pas à pas, cartes mémoire. Le câblage se fait à la souris, broche par broche.

Les instruments

Pour voir l’invisible

Un analyseur logique enregistre l’état des broches au fil du temps et restitue les trames échangées sur une liaison série : on lit la suite exacte des impulsions, on repère un bit de trop, un signal qui n’arrive jamais, un délai qui s’allonge.

Le point important tient en une phrase : le code s’exécute réellement sur un cœur de microcontrôleur émulé. Ce n’est pas une animation qui mime le résultat attendu. Un programme qui plante dans la simulation plante pour de vraies raisons — division par zéro, dépassement de mémoire, boucle bloquante — et un programme qui fonctionne a été exécuté instruction par instruction.

Les messages d’erreur méritent d’ailleurs qu’on s’y arrête, parce qu’ils sont la principale source d’apprentissage. Une carte ESP32 qui redémarre en boucle affiche la raison de son redémarrage ; un programme bloqué dans une attente le signale par un chien de garde qui se déclenche. Ce sont exactement les messages que l’on rencontrera sur le matériel réel, ce qui rend l’exercice transposable.

Construire un premier montage

Un premier projet suit toujours la même logique. La comprendre vaut mieux que recopier une suite de clics, parce qu’elle se réutilise sur tous les montages suivants.

  1. Choisir la carte, pas le composant

    La carte détermine tout le reste : nombre de broches, tension de fonctionnement, présence de liaison sans fil. Un projet connecté demande un module ESP32 ; un exercice de base tient sur une carte Arduino. Partir du composant conduit souvent à changer de carte en cours de route.

  2. Poser les composants avant de câbler

    Disposer les éléments à l’écran comme on les poserait sur une plaque d’essai, en gardant les distances lisibles. Un schéma encombré se déboguera mal, exactement comme un montage réel où les fils se croisent en désordre.

  3. Relier broche par broche, alimentation d’abord

    Commencer par la masse et l’alimentation, puis les signaux. Cet ordre évite l’erreur la plus courante du débutant : un composant correctement piloté mais jamais alimenté, qui ne réagit pas sans qu’on comprenne pourquoi.

  4. Écrire le programme en nommant les broches

    Déclarer les numéros de broches en tête de fichier, sous un nom parlant, plutôt que de les répandre dans le code. Quand le câblage change, une seule ligne bouge. C’est une habitude qui se prend en simulation et qui sert ensuite partout.

  5. Lancer, observer, ne pas corriger tout de suite

    Regarder ce qui se passe avant de toucher au code : la LED reste-t-elle éteinte, l’écran affiche-t-il des caractères parasites, la console signale-t-elle un redémarrage ? Le symptôme oriente la correction beaucoup plus sûrement que l’intuition.

  6. Conserver et dupliquer ce qui marche

    Un montage qui fonctionne se garde et se duplique avant d’être modifié. On avance ainsi par versions, et la copie de secours reste accessible quand l’expérimentation tourne mal.

Langages et travail depuis son éditeur

Trois façons de programmer cohabitent, et le choix dépend surtout de vos habitudes.

Le C++ façon Arduino reste la voie la plus documentée : c’est le langage des tutoriels, des bibliothèques et des forums, et tout exemple trouvé en ligne s’y transpose sans traduction. MicroPython séduit ceux qui viennent de la programmation plutôt que de l’électronique : la syntaxe est lisible, les essais sont rapides, au prix d’une exécution plus lente. Rust attire un public plus restreint, intéressé par la rigueur du langage sur des systèmes contraints.

Pour qui travaille déjà sur un projet local, une extension permet de piloter la simulation depuis son éditeur de code habituel. Le programme reste sur la machine, dans son dépôt, avec ses outils de compilation ; seule la partie affichage et exécution du montage passe par le simulateur. Le navigateur suffit tant que le projet tient dans un fichier unique ; dès qu’il se découpe en modules et se versionne, l’éditeur reprend l’avantage.

Ce que la simulation ne remplace pas

Une confusion mérite d’être levée, parce qu’elle conduit à de vraies déceptions. Simuler un microcontrôleur et simuler un circuit électrique sont deux exercices différents. Ici, c’est le premier : la logique du programme, la cohérence du câblage, l’enchaînement des signaux. Les logiciels de simulation analogique, eux, calculent des tensions, des courants et des comportements de composants — ce n’est pas le même métier, et ce ne sont pas les mêmes outils.

La question poséeLa simulation répondIl faut un montage réel
Mon programme fait-il ce que je crois ?Oui, instruction par instruction—
Ma broche est-elle la bonne ?Oui, le câblage est vérifiable—
Ma trame série est-elle correcte ?Oui, l’analyseur logique la montre—
Mon montage tiendra-t-il sur batterie ?Non, la consommation n’est pas calculéeMesure sur le montage
Ce capteur est-il assez précis ?Non, le bruit réel n’existe pasEssai avec la sonde
Pourquoi ça marche une fois sur trois ?Rarement, les parasites sont absentsDiagnostic à l’oscilloscope

Ce que la simulation ne dira donc pas : la chute de tension dans un fil trop fin, la consommation réelle d’un montage sur batterie, les parasites d’un moteur qui démarre à côté d’un capteur, le bruit de mesure d’une sonde bon marché, la résistance d’une soudure, le jeu mécanique d’un servomoteur fatigué. Autant de causes de panne bien réelles, invisibles à l’écran.

La bonne façon de s’en servir suit donc un ordre : valider la logique en simulation, puis passer au montage réel pour tout ce qui relève du monde physique. Inverser cet ordre fait perdre du temps des deux côtés.

Deux familles de simulateurs

Un simulateur de microcontrôleur exécute un programme et suit ses signaux. Un simulateur de circuit analogique calcule des tensions et des courants dans un réseau de composants. Les deux portent le mot « simulation » et ne répondent pas aux mêmes questions : choisir le mauvais outil, c’est chercher une réponse là où elle ne peut pas se trouver.

À qui cela sert vraiment

Trois profils y trouvent un intérêt net, pour des raisons différentes.

Le débutant complet, d’abord. Faire clignoter une LED, lire l’état d’un bouton sans rebond parasite, afficher une valeur sur un écran, envoyer un texte sur la console : ces gestes fondateurs se travaillent en boucle, et l’inversion de broche qui aurait fumé sur une plaque d’essai se corrige d’un glissement de souris.

Celui qui attend une livraison, ensuite. Les composants voyagent parfois plusieurs semaines. Écrire et déboguer le programme pendant ce temps évite de tout découvrir en même temps le jour où le colis arrive — et permet d’arriver au montage réel avec un code déjà propre.

L’enseignant et celui qui demande de l’aide, enfin. Un montage simulé se partage par un simple lien : la personne qui l’ouvre voit exactement le même câblage et le même code, sans avoir à reconstruire quoi que ce soit. Sur un forum, cela change la nature de la conversation — on ne discute plus d’une description approximative, mais d’un projet reproductible. En classe, cela règle la question des kits manquants et des composants cassés.

Accès libre et formule payante

L’essentiel fonctionne sans créer de compte : on peut ouvrir un exemple, le modifier, le lancer. Le compte devient utile dès qu’on veut conserver ses projets, les retrouver et les partager durablement.

Au-delà, une formule payante existe, l’abonnement Wokwi Club. Elle débloque des fonctions que les projets avancés réclament : ajouter des bibliothèques qui ne figurent pas dans le catalogue, téléverser ses propres fichiers compilés, ou simuler une connexion réseau depuis une carte ESP32. Le tarif étant susceptible de changer, mieux vaut le vérifier sur le site officiel plutôt que dans un article — y compris celui-ci.

Pour la plupart des usages d’apprentissage, la version libre suffit. La question de l’abonnement se pose quand le projet grossit, pas quand on démarre.

Wokwi est-il gratuit ?

L’essentiel s’utilise librement, sans installation et même sans compte : on ouvre un projet, on le modifie, on le lance. Le compte sert surtout à conserver et partager ses montages. Une formule payante débloque des fonctions avancées comme l’ajout de bibliothèques, le téléversement de fichiers compilés ou la connexion réseau simulée. Le tarif se vérifie sur le site officiel, il évolue.

Peut-on apprendre l’électronique uniquement en simulation ?

On peut apprendre à programmer un microcontrôleur, comprendre un câblage logique et déboguer un programme. On n’apprend pas la soudure, la mesure au multimètre, la gestion de l’alimentation ni le diagnostic d’un parasite. La simulation est une excellente première marche, pas l’escalier entier.

Quelles cartes et quels composants sont disponibles ?

Les familles les plus courantes en projet amateur et en enseignement : cartes Arduino, modules ESP32, Raspberry Pi Pico, cartes STM32. Autour, un catalogue de LED, boutons, potentiomètres, capteurs de température, de distance, afficheurs, matrices, servomoteurs et moteurs pas à pas. Le catalogue évoluant régulièrement, la liste exacte se consulte dans la documentation.

Faut-il installer un logiciel ou peut-on garder son éditeur ?

Rien à installer pour l’usage dans le navigateur. Pour un projet local, une extension permet de lancer la simulation depuis son éditeur de code habituel : le programme reste sur la machine avec ses outils, seule l’exécution du montage passe par le simulateur. C’est la configuration à privilégier dès qu’un projet dépasse le fichier unique.

La simulation reproduit-elle le comportement électrique réel ?

Non, et c’est la nuance à retenir. Simuler un microcontrôleur revient à exécuter son programme et à suivre ses signaux ; simuler un circuit revient à calculer tensions et courants, ce qui relève d’autres logiciels. Chute de tension, consommation sur batterie, parasites, bruit de capteur ou qualité d’une soudure ne se voient qu’en montage réel.

Un simulateur ne rend pas le matériel inutile : il déplace le moment où l’on en a besoin. Le fer à souder reprend la main quand les questions deviennent physiques.