Skip to content

Repository files navigation

Logo

Minitel Blocks Studio

Minitel Blocks Studio permet de créer des programmes pour un ESP32 qui pilote un Minitel, simplement en assemblant des blocs visuels. Aucun langage de programmation n'est nécessaire : les textes, couleurs, sons, touches, variables, boucles et conditions se construisent à la souris.

Logo de Minitel Blocks Studio

Installer l'application

  1. Ouvre la page Releases du projet.
  2. Télécharge Minitel Blocks Studio Setup.
  3. Lance le fichier téléchargé et suis l'installation.
  4. Ouvre l'application depuis le menu Démarrer ou le raccourci du bureau.

L'installateur contient tout le nécessaire pour préparer et envoyer un programme vers l'ESP32. Arduino et PlatformIO ne sont pas requis.

Profiter des mises à jour

À chaque démarrage, l'application recherche discrètement une nouvelle version lorsqu'une connexion Internet est disponible.

Si une mise à jour existe, elle se télécharge en arrière-plan sans interrompre le projet en cours. Une fois prête, l'application propose de redémarrer immédiatement ou de terminer l'installation plus tard. En choisissant Redémarrer maintenant, l'application se ferme, installe la nouvelle version puis se rouvre automatiquement. Si un téléversement est en cours, choisis Plus tard et attends qu'il soit terminé. Aucun nouvel installateur n'est à rechercher manuellement.

Découvrir l'interface

L'application est organisée en trois zones :

  • à gauche, les blocs disponibles, rangés par catégorie ;
  • au centre, le programme en blocs, l'éditeur visuel de l'écran ou les fichiers du projet ;
  • à droite, le Minitel simulé, le programme généré et l'envoi vers l'ESP32.

Le bouton Exemples propose plusieurs projets prêts à modifier : découverte, menu interactif, compteur animé, clavier sonore et affiche visuelle.

Construire avec des blocs

Choisis une catégorie, puis fais glisser un bloc à l'endroit souhaité. Une ligne bleue indique exactement où il sera inséré, y compris entre deux blocs ou à l'intérieur d'une boucle.

Une suite reste attachée pendant son déplacement : le bloc tenu, les blocs placés après lui et ses contenus imbriqués se déplacent ensemble.

Chaque bloc propose des commandes pour :

  • le monter ou le descendre ;
  • le dupliquer ;
  • le supprimer ;
  • modifier directement ses textes, nombres, couleurs, variables ou conditions.

La catégorie Opérations permet aussi de travailler avec du texte : concaténer plusieurs morceaux, remplacer un passage, compter les caractères, trouver une position, ou vérifier si un texte contient, commence par ou se termine par une valeur. Ces blocs s'imbriquent entre eux et acceptent les variables Texte. Les conditions peuvent être déposées dans les blocs si, tandis que la longueur et la position s'utilisent partout où un nombre est attendu.

Dans la catégorie Avancé, le bloc régler la vitesse permet de choisir 300, 1200, 4800 ou 9600 bauds. Place-le dans la pile de démarrage à l'endroit où le changement doit avoir lieu. Le débit sélectionné apparaît aussi dans la simulation.

Le bloc détecter la vitesse peut faire ce choix automatiquement. Il interroge le Minitel avec une demande de statut, essaie plusieurs vitesses et conserve celle qui répond. Les fils RX et TX doivent tous les deux être raccordés pour recevoir la réponse du Minitel.

Sauvegarder et retrouver un projet

Le bouton Sauvegarder conserve les blocs et leur ordre, les variables, le modèle de Minitel, tous les écrans avec leurs noms et leurs éléments, les fichiers ajoutés au projet, ainsi que le modèle d'ESP32 choisi.

Le bouton Ouvrir restaure ce fichier dans l'application. Le projet précédent reste accessible avec Annuler juste après l'ouverture d'un autre projet.

Un fichier .mbs peut être déplacé sur une clé USB, envoyé à une autre personne ou conservé comme copie de sécurité.

Composer l'écran visuellement

Passe de Blocs à Écran dans la barre située au-dessus de l'espace central.

La liste Mes écrans permet de préparer plusieurs pages dans le même projet. Chaque écran peut être nommé, sélectionné, dupliqué ou supprimé. Le bouton + en crée un nouveau.

Sur l'écran sélectionné, tu peux :

  • choisir le format de ton Minitel ou définir une grille personnalisée ;
  • ajouter et déplacer du texte sur la grille ;
  • créer un cadre vide ou rempli ;
  • placer, redimensionner et recolorer les éléments ;
  • importer une image pour la transformer en mosaïque Minitel.

Pour afficher une page, ajoute le bloc dessiner l'écran depuis la catégorie Écran, puis choisis son nom dans la liste. Ce bloc peut être placé au démarrage, après l'appui sur une touche ou dans une condition pour passer facilement d'un écran à un autre.

Organiser les fichiers du projet

Passe à Fichiers dans la barre située au-dessus de l'espace central.

Tu peux créer un fichier texte, JSON, HTML, CSS ou JavaScript, mais aussi importer plusieurs fichiers depuis ton ordinateur ou les déposer directement dans la fenêtre. La recherche retrouve rapidement un nom ou un dossier.

Les fichiers texte se modifient directement dans l'application avec leurs numéros de ligne. Pour un fichier JSON, l'application vérifie le contenu et peut le remettre en forme. Les images, sons, vidéos et documents PDF disposent d'un aperçu adapté.

Chaque fichier peut être renommé, rangé avec un chemin comme images/logo.png, dupliqué, remplacé, téléchargé ou supprimé. Tous les fichiers restent inclus dans le projet lors de la sauvegarde et de l'export en .mbs.

Importer une image

Dans le mode Écran, clique sur Image, puis choisis une image sur ton ordinateur.

Selection d'une image

Une fenêtre permet de préparer le résultat avant de l'ajouter :

  • Seuil produit des formes nettes ;
  • Trame crée un motif régulier ;
  • Diffusion conserve davantage de détails ;
  • la luminosité, le contraste et le seuil ajustent le rendu ;
  • le cadrage, la taille, la couleur et l'inversion restent modifiables.

Selection d'une image

L'aperçu montre les pixels qui seront utilisés par le Minitel.

Tester avec le Minitel simulé

L'onglet Simulation permet de vérifier le résultat avant l'envoi.

  • Lancer fait tourner le programme.
  • Pas avance d'une étape.
  • Reset remet la simulation au début.
  • Tester déclenche la touche choisie dans la liste.
  • Les minuscules et majuscules sont différentes : a ne déclenche pas un bloc réglé sur A.
  • Le clavier de l'ordinateur peut être utilisé directement, avec Maj pour une majuscule, ainsi que Entrée, Retour arrière, les flèches, Tab et Suppr.
  • Les touches F1 à F9 simulent respectivement Envoi, Retour, Répétition, Guide, Annulation, Sommaire, Correction, Suite et Connexion / Fin.

Dans le bloc quand la touche, les choix sont classés par famille : lettres, chiffres, ponctuation, touches Télétel, navigation, édition, accents, symboles et combinaisons Ctrl.

La simulation suit le format choisi et affiche les écrans au moment où elle rencontre un bloc dessiner l'écran.

Tester les requêtes réseau

L'application démarre un petit serveur JSON local prêt à être utilisé dans la simulation :

  • le bloc requête GET JSON utilise http://localhost:6663/test ;
  • le bloc requête POST JSON utilise http://localhost:6663/echo ;
  • le bloc requête PUT JSON utilise aussi http://localhost:6663/echo ;
  • le bloc requête PATCH JSON utilise également http://localhost:6663/echo ;
  • le bloc requête DELETE JSON utilise également http://localhost:6663/echo.

La réponse GET contient un message, un nombre et les paramètres query reçus. Les réponses POST, PUT et PATCH renvoient également le corps JSON envoyé. La réponse DELETE confirme la ressource visée et permet de vérifier immédiatement les blocs de lecture JSON.

Pour utiliser MQTT, placez d'abord se connecter au Wi-Fi, puis se connecter au broker MQTT. Indiquez l'adresse du broker, son port et, si nécessaire, les identifiants. Le bloc publier un message MQTT envoie un texte sur le topic choisi ; vous pouvez saisir ce texte directement ou glisser une variable Texte dans l'emplacement du message. L'option de conservation demande au broker de mémoriser le dernier message. Ajoutez s'abonner au topic MQTT pour écouter un topic, puis utilisez le bloc de départ quand un message MQTT est reçu pour ranger son contenu dans une variable Texte et déclencher les blocs placés dessous. La bibliothèque MQTT est incluse automatiquement : aucune installation supplémentaire n'est demandée.

Le bloc créer un hotspot Wi-Fi transforme l'ESP32 en point d'accès. Choisissez le nom du réseau et un mot de passe d'au moins 8 caractères, ou laissez le mot de passe vide pour créer un réseau ouvert. Par défaut, les appareils connectés peuvent joindre l'ESP32 à l'adresse 192.168.4.1.

Dans Paramètres > Serveur de test, le démarrage automatique peut être désactivé et le port peut être modifié. Les nouveaux blocs réseau utilisent alors automatiquement les adresses correspondant à ce port.

Ces adresses localhost servent au simulateur sur l'ordinateur. Après téléversement, l'ESP32 doit utiliser l'adresse d'un serveur accessible depuis son réseau Wi-Fi.

Câbler l'ESP32 au Minitel

Schema de cablage

Le logiciel utilise le port série Serial2 de l'ESP32 avec les broches suivantes :

  • GPIO 16 pour recevoir les données (RX2) ;
  • GPIO 17 pour envoyer les données (TX2) ;
  • une broche GND pour la masse commune.

Le raccordement se fait avec seulement trois fils soudés, sans résistance externe :

ESP32                                  PRISE DIN DU MINITEL

GND       --------------------------   broche 2 · GND
GPIO 17   -------- TX2 ----------->    broche 1 · RX
GPIO 16   <------- RX2 ------------    broche 3 · TX

RX et TX sont donc croisés : le fil qui part du TX de l'ESP32 arrive sur le RX du Minitel, et le TX du Minitel arrive sur le RX de l'ESP32.

Ne raccorde rien aux broches 4 et 5 de la prise DIN. En particulier, ne relie aucune alimentation 3,3 V ou 5 V entre les deux appareils : seuls GND, RX et TX sont utilisés.

Envoyer sur l'ESP32

  1. Branche l'ESP32 avec un câble USB adapté aux données.
  2. Ouvre l'onglet ESP32.
  3. Choisis le modèle de carte.
  4. Le port apparaît automatiquement dès que la carte est reconnue.
  5. Clique sur Envoyer à l'ESP32.

La progression affiche successivement la connexion, la compilation et l'envoi. Selon la carte, Windows peut demander une seule fois son pilote USB.

Exporter vers Arduino

Le bouton Arduino crée un dossier Arduino complet. Il contient le programme et la bibliothèque Minitel personnalisée : aucune bibliothèque supplémentaire n'est à rechercher ou à installer.

Cet export est optionnel. Il sert uniquement à ouvrir ou modifier le programme dans Arduino IDE ; l'envoi direct depuis Minitel Blocks Studio fonctionne sans Arduino.

Raccourcis

  • Ctrl+S : sauvegarder le projet.
  • Ctrl+O : ouvrir un projet.
  • Ctrl+Z : annuler.
  • Ctrl+Y ou Ctrl+Shift+Z : rétablir.
  • Échap : annuler un déplacement ou fermer la fenêtre des exemples.
  • Dans la simulation, appuie directement sur une touche pour la tester.

En cas de problème

  • Utilise Reset si la simulation semble déjà avancée.
  • Vérifie le câble USB, le modèle de carte et le port si l'envoi échoue.
  • Vérifie le branchement entre l'ESP32 et le Minitel si l'écran reste vide.
  • Commence avec un exemple, puis modifie-le petit à petit.

Remerciements

Je remercie Nat pour son aide ainsi que pour son dépôt NathaanTFM/minitel-project, qui m'ont permis de mieux comprendre le fonctionnement du Minitel.

Licence

Minitel Blocks Studio est distribué sous licence Apache-2.0.

About

Minitel Blocks Studio est un projet visant à simplifier la programmation d’un ESP32 afin de piloter un Minitel via une liaison série.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages