D'un ESP32 vierge à un appareil qui envoie ses mesures sur votre téléphone, en une seule séance. Des scripts en langage clair plutôt que du C, sans chaîne d'outils, sans serveur à vous, sans reconstruction. Assez rapide pour éprouver une idée, assez simple pour un premier cours.
Premier flash depuis le navigateur par USB. Ensuite, tout passe par les airs.
R1BBIT transforme une carte ESP32 en appareil connecté fini — sans chaîne d'outils, sans serveur à vous et sans une ligne de C.
Il convient particulièrement à trois choses : amener vite un produit à sa première version qui marche, éprouver une idée avant d'y investir sérieusement, et apprendre l'électronique et la robotique — cette dernière surtout si vous partez de zéro.
Le catalogue recense du matériel que nous avons vérifié à la main, mais l'écosystème tourne sur presque n'importe quel ESP32.
Le firmware embarque un interpréteur : la carte exécute donc un simple fichier texte au lieu d’un binaire compilé. Ses 298 commandes couvrent broches, capteurs, écrans, son, caméra et réseau — pas de C, pas de chaîne de compilation, pas de compilation.
Écrivez dans le navigateur avec l’autocomplétion pour chaque commande et une vérification qui repère les erreurs pendant la frappe. Un assistant peut écrire ou réparer le script pour vous, et une galerie d’exemples prêts vous épargne la page blanche. Même le tout premier flash se fait ici, par un câble USB.
Les cartes s’y connectent d’elles-mêmes par un canal chiffré. Les relevés sont conservés et tracés en graphique, les nouveaux scripts et firmwares arrivent par les airs, et chaque appareil dispose d’une console et d’un explorateur de fichiers que vous ouvrez d’où vous voulez.
Une valeur publiée par la carte devient une tuile sur votre téléphone ; bougez-y un curseur et la carte réagit. L’application porte aussi l’éditeur, la console, la documentation et le même assistant — et elle peut vous alerter quand quelque chose cloche.
CONFIG
PSRAM_SIZE 8
PSRAM_TYPE OCTAL
I2C_SDA 16
I2C_SCL 15
SPI_MOSI 11
SPI_MISO 13
SPI_CLK 12
DISPLAY_DRIVER ILI9341
DISPLAY_CS 10
DISPLAY_DC 46
DISPLAY_BL 45
DISPLAY_WIDTH 320
DISPLAY_HEIGHT 240
TOUCH_DRIVER FT6x36
TOUCH_INT 17
END_CONFIG
DISPLAY_INIT
DISPLAY_WIDGET(1, "label", 20, 24, 280, 36)
DISPLAY_WIDGET(2, "arc", 90, 76, 140, 140)
VAR T, F
VAR A[1]
DS1820_INIT(A, 1000)
VARS_PUBLISH(T, F)
WHILE(1)
T = A[0]
F = T * 9 / 5 + 32 ' to Fahrenheit
UI_TEXT(1, "Temperature " + T + " C")
UI_VALUE(2, T)
IF T > 30 THEN SEND_NOTIFY("Greenhouse", "Too hot: " + T)
PAUSE 1000
WEND
Le flasheur web écrit le firmware depuis le navigateur par USB. Pas de chaîne de compilation, pas de pilotes à chercher.
Dans l’IDE web ou dans l’application mobile — avec autocomplétion, indications de paramètres à même la ligne et une vérification des types d’arguments pendant la frappe.
Appuyez sur Run et le script est sur la carte en quelques secondes : par les airs, sur une liaison chiffrée, sans câble. Il peut aussi venir d'une carte SD ou de la console. La carte le conserve en flash, et AUTOSTART le relance au prochain démarrage.
On le voit maintenant travailler : les mesures arrivent sur le tableau de bord et sur votre téléphone environ une fois par seconde, et le terminal affiche tout ce que le script écrit. Quelque chose cloche ? Corrigez la ligne et renvoyez-la. Pendant ce temps la carte gagne de nouvelles commandes, car les mises à jour du firmware arrivent elles aussi par les airs.
Si vous êtes venu à l'ESP32 par l'IDE Arduino, vous connaissez le prix de chaque changement : recompiler, brancher le câble, reflasher, et recommencer jusqu'à ce que la logique tienne. Blynk et Arduino Cloud vous donnent un tableau de bord et un cloud, mais la logique en dessous reste du C++ qu'il faut reconstruire et téléverser à chaque modification. R1BBIT vous laisse le contrôle et supprime la reconstruction : la logique est un script texte que la carte lit, et le tableau de bord n'est que les variables qu'elle publie.
Votre programme est un fichier texte que la carte lit et exécute. Changez une ligne dans le navigateur, envoyez-la à la carte, et elle prend effet — le firmware, lui, ne change jamais. Même le câblage est décrit en texte : changer d’écran ou déplacer un capteur sur d’autres broches est une modification, pas une nouvelle compilation.
Avec l’IDE Arduino, chaque changement est un cycle de recompilation et de reflashage par câble.
Il n’y a rien à installer ni à héberger. Les appareils se connectent à cloud.r1bbit.com d’origine, la télémétrie atterrit dans une base de séries temporelles et se trace toute seule, et chaque appareil reçoit un terminal à distance et un gestionnaire de fichiers. Besoin de données venues d’internet ? HTTP_GET les récupère directement depuis la carte — sans intermédiaire.
Avec Blynk ou Arduino Cloud le tableau de bord est prêt, mais le sketch derrière reste du C++ que vous reconstruisez et téléversez à chaque changement.
Décrivez ce que l’appareil doit faire et l’assistant intégré écrit le R1BBIT-BASIC correspondant. Il voit le script que vous avez déjà : il peut donc l’étendre, vous expliquer une commande ou traquer l’erreur que vous ne trouvez pas. Il vit aussi bien dans l’IDE web que dans l’application mobile.
Un agent conversationnel généraliste invente allègrement des commandes que ce langage n’a jamais eues.
27 types de widgets s’affichent sur l’écran de l’appareil : graphiques, jauges, curseurs, et même des tuiles OpenStreetMap. Publiez une variable et elle devient une tuile dans l’application mobile ; bougez le curseur là-bas et ON_VAR se déclenche sur la carte. Une notification tient en une commande.
En pratique, c'est une seule étape : ajoutez un widget dans l'application et désignez une variable — l'appareil s'y abonne tout seul et commence à envoyer les données.
L’interpréteur est isolé du firmware. Une erreur d’exécution arrête le script ; la carte garde sa connexion et accepte le correctif par les airs.
Jusqu’à 15 tâches de fond en plus de la boucle principale, avec variables partagées et ordonnanceur coopératif — sans code RTOS.
Ajoutez un module SIM et la carte garde vivantes la télémétrie, le terminal et la livraison des scripts quand le wifi tombe.
Lire du MP3 et de la musique de tracker, enregistrer, calculer une FFT, diffuser une caméra vers un navigateur ou vers une autre carte.
16 chapitres, chaque commande avec ses arguments et un exemple, en anglais, russe, espagnol, français et allemand.
Une galerie officielle de modèles dans l’IDE et un forum où l’on partage scripts et câblages.
Le travail embarqué est rarement du seul code. Il y a des fichiers à faire monter sur la carte, des images que l’écran sache vraiment lire, des polices qui doivent tenir dans la flash — et beaucoup de choses qui feraient mieux de ne jamais y atterrir. Tout cela vit dans le même onglet que l’éditeur : pas d’utilitaires à part, pas de va-et-vient de cartes SD.
Ouvrez la fenêtre des fichiers de l’appareil et vous regardez la flash d’une carte qui peut se trouver dans un autre bâtiment. Parcourez-la, glissez un fichier dans la fenêtre pour l’envoyer, rapatriez-en un autre, renommez, supprimez, créez des dossiers — et enregistrez le script que vous êtes en train d’écrire directement sur l’appareil. La jauge d’espace libre montre ce qui restera avant que vous n’y poussiez une grosse police ou un son.
Une carte a moins d’un mégaoctet de flash : une seule photo en avale la moitié. Laissez donc les médias dans le nuage : envoyez le fichier une fois, donnez-lui un nom court et écrivez ce nom précédé d’un @. La carte va le chercher quand le script le demande, à la taille demandée, et ne conserve rien.
Ouvrez une image, recadrez-la, peignez dessus, choisissez la profondeur de couleur que veut l’écran — et emportez le résultat soit en tableau collé dans votre script, soit en fichier envoyé directement à la carte. Le compteur du bas vous dit d’avance ce que cela coûtera en octets.
Chargez n’importe quelle TTF, choisissez les plages de caractères à conserver et retouchez à la main, pixel par pixel, le glyphe récalcitrant. La ligne du bas compte la mémoire occupée — et prévient quand l’essentiel n’est que du vide, la raison habituelle pour laquelle une police ne rentre pas.
Réglez la zone de travail à la taille de votre écran, puis glissez-y étiquettes, boutons, curseurs, jauges, graphiques et listes et alignez-les sur une grille. Un bouton, et vous obtenez le script qui dessine exactement cet écran — et il relit un script existant, si bien qu’une mise en page peut être reprise plus tard.
Les modules de tracker se jouent aussi bien dans le navigateur que sur la carte. Ouvrez-en un et vous avez la grille de motifs avec chaque note et chaque effet, la liste des canaux et tous les échantillons — modifiez-le ici et ce même fichier se joue depuis votre script.
Un clip devient une bande d’images que vous modifiez une par une : dessiner sur l’une, la dupliquer, découper un passage. Puis le réduire à ce qu’un petit écran supporte : noir et blanc sur un bit avec tramage, ou couleur compressée.
Déposez un morceau et vous voyez la forme d’onde : sélectionner un passage, le couper, ne garder que l’utile. Choisissez ensuite le débit, et la ligne du dessous vous annonce le prix à l’avance : un morceau de deux minutes et demie est passé de 15 Mo à 1,3, assez petit pour tenir sur la carte.
Ce que vous fabriquez ici part droit sur la carte — ou reste sur le serveur, où un script le retrouve par son nom.
L'application mobile n'est pas une télécommande ajoutée à la fin : c'est le même flux de travail que le navigateur. Composez le tableau de bord, écrivez et modifiez des scripts, déplacez des fichiers vers la carte et retour, ouvrez un terminal, suivez les valeurs en direct, lisez la documentation et interrogez l'assistant. Connectez-vous et tous les appareils de votre compte sont déjà là.
Éditeur
Widgets
Terminal L’audio et la vidéo sur un microcontrôleur, cela veut d’ordinaire dire des codecs, des tampons et une semaine de fiches techniques. Ici ce sont des commandes. La radio, un flux de caméra, un canal de talkie-walkie entre cartes et téléphones : chacun tient en quelques lignes, et le nuage porte le trafic.
Pointez la commande vers un fichier de la flash, vers un fichier gardé sur le serveur ou directement vers une station de radio en ligne : la carte décode et joue. Elle peut aussi vous dire ce qui passe en ce moment, car elle lit les informations de piste de la station.
VAR title$
PLAY_AUDIO("https://mangoradio.stream.laut.fm/mangoradio")
WHILE 1
AUDIO_TITLE(title$)
PRINT "Now playing: " + title$
PAUSE 5000
WEND
Mettez plusieurs cartes dans le même salon et elles s’entendent. Maintenez pour parler, relâchez pour écouter. Des téléphones peuvent rejoindre ce même salon : un appareil et une personne se retrouvent alors sur un seul canal — pratique pour un atelier, un portail, une serre au fond du terrain.
CONFIG
IN1 4
IN1_PULL UP
END_CONFIG
JOIN_AUDIO_ROOM("myteam", 16)
WHILE 1
IF IN1 = 0 THEN PTT(1)
IF IN1 = 1 THEN PTT(0)
PAUSE 50
WEND
Ouvrez un salon vidéo et la caméra passe en direct. Regardez-la dans l’application mobile ou dans un navigateur, et une deuxième carte munie d’un écran peut rejoindre ce même salon en spectatrice — une sonnette qui s’affiche elle-même sur le panneau de la cuisine, sans serveur à vous au milieu.
CAM_INIT
CAM_RESOLUTION(320, 240)
START_VIDEO_ROOM("frontdoor", 10)
// on the board with the screen:
// JOIN_VIDEO_ROOM("frontdoor")
La voix et la vidéo empruntent un canal à faible latence, avec repli automatique s’il est bloqué. Le son apporte aussi la lecture de notes et de mélodies, les modules de tracker, l’enregistrement en WAV et MP3 et un analyseur de spectre en direct.
Toutes les commandes de son et de vidéoLe firmware se compile pour six cibles : ESP32-S3, ESP32-P4, ESP32-C6, ESP32-C3, l’ESP32 classique et le S3 sans PSRAM. Les cartes ci-dessous sont celles que nous avons vérifiées nous-mêmes. Apportez une carte de développement de la même famille et elle aura tout autant son propre bloc CONFIG.
La plateforme de référence : les nouveautés y arrivent en premier
The big-screen one
Wi-Fi 6 dans un tout petit format
The smallest and cheapest
Se compile aussi pour l’ESP32 classique (D0WD) et l’ESP32-S3 sans PSRAM : même langage, même nuage, moins de périphériques.
L'écosystème est prêt dès aujourd'hui pour un usage commercial. Construisez un appareil sur un ESP32 : le même firmware, le même cloud et les mêmes applications qui font tourner la première carte sur votre bureau en feront tourner cent sur le terrain. Rien n'est à réécrire le jour où le projet cesse d'être un loisir.
R1BBIT tourne sur des modules ESP32 standard que les distributeurs vendent en quantité. Passer d'une unité à mille est une décision d'achat, pas une refonte, et le même script tourne sur chacune d'elles.
Un script corrigé ou un nouveau firmware part par les airs vers toutes les cartes à la fois. Personne ne se déplace sur site avec un portable et un câble.
Chaque appareil écrit ses mesures dans le cloud, conservées par appareil et prêtes à être tracées des mois en arrière. Aucun backend à écrire, aucune base à administrer.
Les applications iOS et Android sont publiées et prêtes. Un appareil appartient au compte de son propriétaire et ses widgets y apparaissent d'eux-mêmes : personne ne construit une seconde application.
L'appareil est rattaché à un compte, et tout ce qu'il échange avec le cloud — télémétrie, commandes, scripts et firmware — passe par une liaison chiffrée.
Le catalogue recense du matériel vérifié à la main, mais le firmware se compile pour six cibles ESP32 : une carte de votre conception rejoint donc le même écosystème.
Statistiques d'installations frigorifiques et de chambres froides, chauffage et climatisation de bâtiments, surveillance d'atelier et de serre — la même pile est derrière tout cela.
R1BBIT pour les entreprisesLa première journée avec un microcontrôleur passe surtout dans ce qui n’est pas de la programmation : installer un environnement, chercher des pilotes, choisir la carte dans un menu, attendre la compilation. R1BBIT supprime cette journée. Un navigateur, une carte bon marché et un câble USB — et la classe écrit de la logique dans la première moitié du cours, pas dans la troisième.
CONFIG
OUT1 2
END_CONFIG
WHILE 1
OUT1 1
PAUSE 500
OUT1 0
PAUSE 500
WEND
CONFIG
I2C_SCL 7
I2C_SDA 6
END_CONFIG
VAR T, H
SI7021_INIT(T, H, 2000)
WHILE 1
PRINT "temp " + T + " hum " + H
PAUSE 2000
WEND
CONFIG
I2C_SCL 7
I2C_SDA 6
END_CONFIG
VAR T, H
SI7021_INIT(T, H, 2000)
VARS_PUBLISH(T, H)
WHILE 1
IF T > 27 THEN
SEND_NOTIFY("Too warm", STR$(T) + " C")
ENDIF
PAUSE 60000
WEND
Chaque script ici est le programme entier : pas de fichier de configuration caché, pas de projet à préparer.
Tout se passe dans un navigateur : sur un poste de l’établissement sans droits d’administrateur, sur un portable, même sur une tablette. Rien à télécharger, aucune licence, aucune version qui ne marche que sur une machine de la salle.
Les commandes disent ce qu’elles font : DHT_INIT, PRINT, PAUSE, IF … THEN. Un élève lit une ligne et la comprend, si bien que le cours peut porter sur les boucles et les conditions plutôt que sur les points-virgules et les accolades.
Le script tourne dans un interpréteur isolé. Une ligne fautive l’arrête et écrit pourquoi ; la carte continue de fonctionner et accepte le correctif une seconde plus tard. Pas de matériel condamné, pas de cours perdu.
Les plus petites puces compatibles coûtent quelques dollars, et une carte avec un capteur est déjà un projet qui fonctionne. Un jeu pour toute une classe ne demande pas de subvention.
Pas de droits d’administrateur, pas de licences et aucune image de salle à entretenir.
La documentation existe en anglais, russe, espagnol, français et allemand.
Une carte rejoint le cloud une seule fois, et cette activation apporte trois mois de Starter avec elle. Ensuite vous choisissez une formule ou restez en Free : la carte fonctionne dans les deux cas.
Payé une fois par carte, pas tous les mois. L'activation rattache la carte à votre compte et ouvre trois mois de la formule Starter : l'éditeur, le cloud, les applications mobiles et l'assistant, tout y est.
Gratuit
$6.99 / mois
ou $69.99 par an
$19.99 / mois
ou $199 par an
Les prix s'entendent par compte, en dollars américains, et viennent directement de notre système de facturation. Payer à l'année coûte moins que douze mensualités. Free ne demande aucune carte bancaire.
Ouvrez le nuage, lisez la documentation ou posez la question au forum : la première carte prend une soirée, pas un week-end.
IDE web, galerie de modèles, tableaux de bord et un terminal vers chaque carte — dans le navigateur.
Ouvrir le nuage16 chapitres, chaque commande avec ses arguments et un exemple, en cinq langues.
Lire la documentationPosez une question ou partagez un script ou un schéma de câblage sur le forum.
Rejoindre le forum