pulpLab est un environnement de programmation pour cartes électroniques, dans le navigateur. Vous écrivez en MicroPython ou en C++ Arduino, vous envoyez le programme sur un ESP32, un Raspberry Pi Pico ou un Arduino par USB, et vous suivez la console, le moniteur série et les courbes en direct. Sans carte, des cartes virtuelles permettent d'essayer.
Premiers pas
- Ouvrez pulpLab. À la première ouverture, un exemple s'affiche tout seul pour voir à quoi ressemble pulpLab : le projet Station météo ESP32, exécuté sur une carte virtuelle (aucune carte à brancher), ses courbes de température, d'humidité et de lumière dans le Traceur. Commencer à zéro ou Supprimer l'exemple l'enlève d'un clic, et Fichier › Revoir l'exemple le rouvre, comme le bouton Lancer sur la carte virtuelle de l'accueil. Rien n'en est enregistré tant que vous ne le modifiez pas. L'accueil indique si votre navigateur sait parler aux cartes USB (Chrome ou Edge sur ordinateur) et si le relais de compilation est actif (il est nécessaire au C++ Arduino).
- Choisissez Nouveau projet MicroPython, Nouveau croquis Arduino ou un des Exemples (clignoter la LED, lire un capteur, servomoteur, Wi-Fi ESP32, NeoPixel, bouton et interruption, station météo).
- Réglez la Carte visée dans la barre du haut, puis cliquez Connecter : Carte USB… ouvre le choix du port, ou choisissez une carte virtuelle (ESP32, Pico, Uno, Mega). pulpLab reconnaît la plupart des cartes dès qu'elles sont branchées. Les cartes prévues sont les ESP32 (DevKit, S3, C3), les Raspberry Pi Pico (Pico, Pico W, Pico 2), les Arduino Uno, Nano et Mega 2560, la STM32 Nucleo-64 (compilation seulement) et la Pyboard.
- En MicroPython, Exécuter (F5) lance le programme sans l'écrire sur la carte ; Envoyer sur la carte (Ctrl+U) y copie les fichiers, le programme principal devenant
main.py, lancé à chaque mise sous tension. En Arduino, Vérifier (Ctrl+R) compile et Téléverser (Ctrl+U) compile puis écrit le programme. - Suivez la sortie dans les onglets Console, Moniteur, Traceur et Problèmes. Une erreur est soulignée dans l'éditeur, à la bonne ligne.
Tâches courantes
Comment installer MicroPython sur ma carte ?
Connectez la carte, ouvrez le menu ⋯ (Plus d'actions) de la barre du haut, puis Installer MicroPython…. Choisissez la carte et la source : MicroPython officiel (téléchargé depuis micropython.org seulement après votre accord), Fichier de l'ordinateur ou, pour la carte virtuelle, Image d'essai. Cochez Effacer toute la mémoire flash avant pour une première installation, confirmez, puis Écrire dans la flash. Pour un Raspberry Pi Pico, mettez la carte en mode BOOTSEL et choisissez son lecteur « RPI-RP2 » : le fichier .uf2 y est copié. Si le relais de compilation n'est pas lancé, téléchargez vous-même le fichier de votre carte sur micropython.org, puis choisissez-le dans la fenêtre. Pour une carte sans MicroPython (Arduino), la même entrée du menu s'appelle Écrire un micrologiciel….
Comment compiler du C++ Arduino ?
Le C++ Arduino doit être compilé avant d'être téléversé, ce que le navigateur ne fait pas seul : pulpLab s'appuie sur un relais de compilation lancé sur votre ordinateur, avec le compilateur Arduino installé. Sans relais, l'édition, le moniteur, le traceur et tout MicroPython fonctionnent, mais Vérifier et Téléverser affichent la marche à suivre. Tout est expliqué dans pulpLab et la compilation. Vous pouvez aussi compiler ailleurs et téléverser le fichier obtenu.
Comment téléverser un fichier compilé ailleurs ?
Menu ⋯ › Téléverser un fichier (.bin, .uf2, .hex)…, ou glissez le fichier sur la fenêtre. pulpLab contrôle le fichier avant d'écrire : .hex pour les Arduino AVR (Uno, Nano, Mega), .bin pour les ESP32 (avec l'adresse d'écriture), .uf2 pour les cartes à lecteur USB comme le Pico.
Comment utiliser le moniteur série ?
Onglet Moniteur : choisissez le Débit (115 200 bauds par défaut) et la Fin de ligne, tapez le texte à envoyer. Horodatage, Défilement automatique, la recherche dans la sortie et Exporter en texte facilitent l'analyse.
Comment tracer des courbes ?
Faites écrire des nombres par la carte, une ligne par mesure : 12 34 ou temp:21.5 hum:48. L'onglet Traceur affiche une courbe par série ; cliquez une série pour la masquer, réglez la fenêtre, mettez en Pause ou Exportez en CSV.
Comment organiser les fichiers de mon projet ?
Le panneau Fichiers du projet (barre de gauche) permet de créer un Nouveau fichier, d'Importer des fichiers, de renommer, de supprimer, et de Définir comme programme principal (l'étoile) le fichier qui démarre en premier. Une loupe Rechercher dans le projet cherche dans tous les fichiers. Un fichier peut aussi être glissé sur la fenêtre.
Comment redémarrer ou déconnecter la carte ?
Dans le menu ⋯ : Redémarrage doux (Ctrl+D, MicroPython : main.py repart), Redémarrer la carte et Déconnecter. Le Panneau de la carte (à droite) montre la carte reconnue, la version de MicroPython, l'état du Wi-Fi, les servos et, sur Arduino, la mémoire de programme utilisée ; un encadré rappelle la tension de la carte (5 V ou 3,3 V).
Comment gérer les fichiers de la carte ?
Avec MicroPython, le panneau Fichiers de la carte liste le contenu de la carte (Lire les fichiers de la carte). Vous pouvez y créer un dossier, exécuter un fichier, le télécharger sur l'ordinateur, le supprimer (définitivement, après confirmation) ou Envoyer des fichiers sur la carte.
Comment tester sans carte ?
Dans Connecter, choisissez une carte virtuelle. L'ESP32 et le Pico virtuels exécutent MicroPython avec leurs broches, voyants, NeoPixel, servos, Wi-Fi simulé et un Environnement simulé réglable (température, humidité, lumière, potentiomètre, distance, pression). L'Uno et la Mega virtuelles simulent seulement le chargeur de démarrage : le téléversement est vérifié de bout en bout, mais le programme n'est pas exécuté.
Comment reprendre le brochage d'une carte de pulpCircuit ?
Ouvrez ou glissez le fichier .pboard exporté par pulpCircuit : pulpLab génère pins.h (Arduino) ou pins.py (MicroPython) avec une constante par signal du schéma. Sans projet ouvert, un nouveau projet est créé pour le microcontrôleur de la carte.
Comment piloter une machine GRBL ?
L'onglet GRBL sert aux graveuses laser, fraiseuses ou traceurs sous GRBL (115 200 bauds) : état, origine, déverrouillage, pause, reprise, arrêt d'urgence, commandes, et Envoyer un fichier G-code ligne par ligne. Gardez l'arrêt d'urgence à portée de main ; pour préparer un travail laser, voyez aussi pulpCase.
Formats pris en charge
| Format | Ouverture | Enregistrement | Remarques |
|---|---|---|---|
| pulpLab (.plab) | Oui | Oui | Projet complet ; c'est une archive ZIP que vous pouvez décompresser pour récupérer vos fichiers. |
| Croquis Arduino (.ino), .h, .cpp, .c | Oui | Dans le .plab | Un fichier ouvert seul crée un projet. |
| MicroPython (.py) | Oui | Dans le .plab | Idem. |
| Programme de pulpRobot (.psketch) | Oui | Non | Ouvert comme nouveau projet. |
| Carte de pulpCircuit (.pboard) | Oui | Non | Génère pins.h ou pins.py. |
| Micrologiciels .hex, .bin, .uf2 | Oui (à téléverser) | Non | Contrôlés avant écriture. |
| Sortie du moniteur | Non | Oui (texte) | Exporter en texte. |
| Données du traceur | Non | Oui (CSV) | Exporter en CSV. |
| G-code (.gcode, .nc, .gc, .ngc, .tap) | Oui (envoi GRBL) | Non | Onglet GRBL. |
Limites connues :
- La compilation C++ passe par le relais de compilation et le compilateur Arduino installés sur votre ordinateur ; elle n'a pas lieu dans le navigateur.
- Le port série n'existe que dans Chrome ou Edge sur ordinateur ; la copie d'un .uf2 sur le lecteur BOOTSEL le demande aussi.
- STM32 Nucleo : compilation seulement, pas de téléversement depuis pulpLab. Pyboard : MicroPython par le port série, sans installation de micrologiciel.
- L'Arduino virtuelle n'exécute pas le code ; la carte MicroPython virtuelle reproduit les principaux modules, pas la vitesse ni le temps réel exact.
- Les fichiers d'un projet ne se téléchargent pas un par un : enregistrez le .plab et décompressez-le pour récupérer vos
.inoou.py.
Raccourcis clavier
| Raccourci | Action |
|---|---|
| F5 | Exécuter (MicroPython) ; Téléverser (Arduino) |
| Maj+F5 | Arrêter le programme |
| Ctrl+U | Envoyer sur la carte (MicroPython) ; Téléverser (Arduino) |
| Ctrl+R | Vérifier (compiler, Arduino) |
| Ctrl+S / Ctrl+Maj+S | Enregistrer / Enregistrer sous (.plab) |
| Ctrl+O | Ouvrir |
| Ctrl+F | Éditeur : rechercher dans le fichier |
| Ctrl+Z / Ctrl+Y | Éditeur : annuler / rétablir |
| Ctrl+/ | Éditeur : commenter ou décommenter la ligne |
| Ctrl+Espace | Éditeur : proposer une complétion |
| Tab | Éditeur : indenter |
| Entrée | Console : envoyer la commande (Maj+Entrée : nouvelle ligne) |
| ↑ / ↓ | Console : historique des commandes |
| Ctrl+C | Console : interrompre le programme (sans texte sélectionné) |
| Ctrl+D | Console : redémarrage doux |
Sur Mac, Cmd remplace Ctrl, sauf dans la console où Ctrl+C et Ctrl+D restent sur Ctrl. Ctrl+J ouvre pulpAssist.
L'IA dans pulpLab
pulpLab n'utilise pas de modèle d'IA. Si vous avez configuré pulpAssist, l'assistant peut lire le projet ouvert (fichiers, carte visée, erreurs, dernière sortie de la carte) et proposer de lire ou modifier des fichiers du projet, toujours après votre confirmation et en une étape annulable. Après une erreur de compilation ou d'exécution, le bouton Expliquer lui transmet le message pour une explication simple et une correction proposée.
L'assistant n'envoie jamais de code à la carte et ne téléverse rien : l'exécution et le téléversement restent un clic de votre part. Les fichiers et messages qu'il lit partent vers le service configuré pour l'assistant. Relisez toujours le code proposé avant de le lancer sur une vraie carte.
FAQ et dépannage
Ma carte n'apparaît pas dans la liste des ports.
Utilisez Chrome ou Edge sur ordinateur, essayez un autre câble (certains ne font que charger) et fermez les autres logiciels qui utilisent le port (IDE Arduino, terminal série). Sous Windows, une carte à puce CH340 ou CP210x peut demander son pilote.
« La carte ne répond pas » pendant le téléversement.
Vérifiez le port, la Carte visée et le câble. Sur un ancien Arduino Nano, choisissez « Arduino Nano (old bootloader) ». Sur certains ESP32, maintenez le bouton BOOT au début de l'écriture.
« Relais de compilation non lancé ».
Le C++ Arduino ne peut pas être compilé sans le relais de compilation. Suivez pulpLab et la compilation, ou travaillez en MicroPython, qui n'en a pas besoin.
Mon programme repart à chaque branchement.
C'est le rôle de main.py : Envoyer sur la carte remplace les fichiers de la carte et le programme principal démarre à chaque mise sous tension. Pour un simple essai, utilisez Exécuter.
Rien ne s'affiche dans le traceur.
La carte doit écrire des nombres séparés par des espaces, ou des paires nom:valeur, une ligne par mesure, au débit choisi dans le moniteur.
Où sont mes projets ?
Sur cet appareil, dans l'espace réservé au navigateur (Projets récents sur l'accueil), avec un brouillon de secours ; vider les données du navigateur les efface. Fichier › Enregistrer crée un .plab sur le disque. Voir documents et sauvegardes.
pulpLab fonctionne-t-il hors connexion ?
Oui une fois chargé : édition, MicroPython, cartes virtuelles, moniteur et traceur. Le téléchargement de MicroPython demande une connexion, et le compilateur Arduino doit avoir reçu au préalable le support de vos cartes.