Minitel ESP32 - Carte Péri-informatique Wifi / BLE

Bonjour à tous,

J’ouvre ce sujet pour discuter de ma carte de développement basée sur l’ESP32 dont vous trouverez une première description ici :

Cette carte a pour vocation de faciliter la réutilisation du minitel en mode péri-informatique, en affranchissant l’utilisateur des montages électroniques usuels pour ce type de projet. La carte est « plug-n-play », auto-alimentée et se programme avec le logiciel Arduino IDE.

Si j’ai qqs 10aines d’intéressé(e)s, je pense pouvoir faire une petite production entre 30 euros et 40 euros la carte. Et puis je publierai les sources pour ceux qui voudront la faire eux-mêmes :wink:

Donc ce fil à pour objectifs:

  • de confirmer / infirmer l’idée de faire une petite production,
  • d’avoir vos remarques sur le design, de manière à avoir la carte la plus utile possible pour la majorité

Et dans tous les cas, vos avis / questions sont bienvenues

Ce n’est pas indiqué dans la description mais la carte comporte encore qqs boulettes:

1 - Les leds témoins des ports séries ne sont pas tirés au bon niveau de tension donc elles sont tout le temps allumées au lieu de clignoter, style guirlande de noël…
2 - Le câblage du circuit d’autoboot de l’ESP32 est à revoir: il faut appuyer le poussoir de boot pour la programmation, alors qu’il est possible que cela se fasse automatiquement !

Pour ces deux premiers points, j’ai patché une carte à la main en coupant des pistes et avec quelques jumpers et tout est ok

3 - La protection du signal série côté minitel est perfectible aussi: j’avais prévu une zener, mais je ne sais pas pourquoi elle abaisse un peu la tension du signal émis par le minitel ce qui déstabilise la liaison série avec l’esp32. Pour l’instant je l’ai simplement retirée et cela fonctionne très bien.

Si vous avez des recommandations là dessus, je suis preneur !

Voila déjà le schéma électrique en cours de finalisation avec vos éventuels commentaires:

Bonjour Louis,

Projet intéressant !

Je m’engage pour 3 exemplaires à titre perso. Je transmet à mes assos favorites pour voir si plus.

1 « J'aime »

Salut Louis

[Quelques dizaines me semble ambitieux pour le moment … mais, sait-on jamais ?]

Je m’engage sur 1 pour moi, pour voir … C’est un truc que je voulais faire depuis un moment, mais ‹ pas le temps › pour ce dev ; j’avais regardé l’ESP8266 (avant que l’ESP32 ne sorte) mais c’était un peu faible.

Premier use case « tout bête » : Connecter un Minitel lambda à un serveur videotext ‹ moderne ›. Les fonctionnalités importantes à implémenter, pour moi, sont :

  • Programmation ‹ OTA › : Je ne veux pas devoir jouer avec N câbles et adaptateurs pour les MAJ
  • Doit pouvoir mécaniquement (encombrement, orientation de la DIN) se plugger sur tous les types de Minitel disposant de péri-info :
    • Les M1 Matra/Alcatel/TRT/Couleur [incluant Alcatel ABCD]
    • Les M1b Matra/Alcatel/RTIC
    • Les M2 Philips et Alcatel
    • Les M12 Philips et Alcatel
    • Les M5 [probablement le cas le plus contraignant]
    • Magis Club
  • Doit supporter des vitesses jusque 9600 (et 19200 si possible)
  • Doit être configurable ‹ en interne › (sans reprogrammation OTA) pour (suggestion : utiliser la commande ‹ Break › et non pas un poussoir sur la carte pour passer en mode configuration)
    • Le Wifi (canal, SSID, password)
    • Le serveur videotext à contacter (URI)
      • WebSockets (ping, subprotocol)
      • Telnet
    • Vitesse ‹ en service › de l’affichage [pouvoir la limiter à 1200 ou autre vitesse intermédiaire]
    • Connexion automatique ou manuelle au serveur
  • Suivi intuitif de l’état Wifi/Connexion au serveur videotext

Ca fait déjà un peu de boulot … le hard (pas regardé en détail) seul ne fait pas tout.

Hervé

1 « J'aime »

Super idée !

L’esp32 me semble tout à fait capable de supporter cette application, et c’est vraiment le but de cette carte : développer de tels projets en n’ayant qu’à se concentrer sur le soft, qui est souvent LA grosse partie du travail.

Ces temps-ci au niveau soft, je planche sur le portage d’une librairie ssh pour permettre d’établir une session distante sécurisée. Pour l’instant, je dois ré-établir la connexion à chaque commande envoyée, donc j’ai encore du travail. Ce use case fonctionne bien en bluetooth comme je montre en fin de vidéo, mais niveau sécurité c’est pas terrible.

Par contre, indépendamment du use case, un point super important que je te remercie d’évoquer, c’est la forme géométrique de la carte.
La carte actuelle a été dessiné en se basant sur le M1 Alcatel. Ce serait trop bête qu’elle ne puisse pas s’insérer à cause d’une orientation différente du port sur un autre modèle par exemple.
Je mets les dimensions sur l’image ci-dessous, et je vous invite à regarder si ça colle pour les machines que vous avez sous la main. Je ferai les verifs que je peux à mon niveau en me basant sur les documentations que je peux trouver sure le net.
L’idéal serait d’avoir la géométrie qui s’adapte à un maximum de modèles, tout en restant sur un circuit imprimé à 2 couches, pour ne pas exploser le prix.
Au pire, peut-être prévoir un petit cordon pour déporter la carte ?

dim_small

inser_small

IMG_20210911_154956

Ce serait béta … J’ai tous les modèles cités ‹ pas loin › mais il me faudra un moment pour effectuer les mesures …

Bon, alors vite fait, (et qui me confirme ce que je prévoyais) sur M5, ca ne le fait pas : la péri-info est à l’extrême gauche (vu de derrière) et, juste à côté à droite [2 ou 3 mm], l’alimentation externe.

Suggestion : rotation de 90° de la DIN vers le haut (bizarre mais why not ?) dépasserait un peu mais acceptable … à vérifier que les détrompeurs sont TOUJOURS vers le haut (il me semble)

Question : Comment lies-tu la DIN5 au PCB ? [ca n’existe pas les DIN5 mâles châssis]

==> Il faut que je me fasse une maquette : j’ai un doute pour magis-club et M1b/M2/M12 philips et à vérifier sur TRT

[Edit] TRT, c’est la mourda : la DIN est limite masquée par la poignée - je ne vois pas de solution
Telic ABCD, c’est pas top, il y a un décroché (du même ordre que M1b/M2/M12 philips) mais la DIN est inclinée à environ 45° - c’est moche dans tous les cas.

Je suis vraiment très déçu, je pensais que tout tenait dans la prise DIN :wink:

Plus sérieusement, solidariser la prise et la carte n’est peut être pas une bonne idée. Un petit bout de câble entre les deux permet tout latitude en fonction de l’environnement proche, sans oublier que « le roseau plie mais ne rompt pas ». Du coup, plutôt que de prendre une prise, tu prend un cordon DIN5 coupé en deux et ça doit simplifier.

Reste plus qu’à imprimer un petit boitier en 3D (j’ai ce qu’il faut).

2 « J'aime »

Ceci peut aussi être une solution raisonnable même si moins sexy.

Très intéressant tout ça, je vais suivre sette conversation :slight_smile:

1 « J'aime »

Excellent Louis !
Un projet qui sera un socle de référence pour mal mal d’idées (en attendant de charcuter directement dans la boite …)
Comme Hervé, je pense qu’un set de commandes AT sera très utile… bluetooth natif plutot que le WiFi, peut-être un peu overkill ?
Après, question DIN, elle peut être à 90° du circuit, avec les broches arrières soudées sur le CI (pour faire tout plat), la DIN volante (cf Christian) (pas fan des fils en tous genres, même si c’est plus souple)…
une simulation sur tout le catalogue devrait identifier LA bonne option …
Au final, j’en prendrais surement (au moins) deux fois :slight_smile:

1 « J'aime »

Hum … c’est pas vraiment le ‹ use case › que je décrivais …

  1. Bluetooth VS Wifi :
  • Pour les bricolos arduino & co, BT peut s’avérer pratique pour ‹ donner › un affichage déporté à un projet. Maintenant, l’appairage BT est toujours plus ou moins de l’ordre de la sorcellerie, et les modules HT05/HT06 font le taff à 3 sous … bref, peu/pas de valeur ajoutée à l’ESP32, d’autant qu’il existe des solutions (certes, pas toujours simples) pour disposer d’un ‹ grand › affichage sur un arduino.
    1 (digression) - Exemple de ‹ use case › arduino pour un ‹ grand › affichage rapide et couleurs (supérieur à 20col x 4lignes)
  • Perso, j’ai développé un ‹ truc/projet › avec un minimum d’électronique, inspiré d’ailleurs du Minitel pour ce qui est de l’encodage, et qui se suffit de deux pro-mini. Il s’agi(ssai)t d’un compte-tours pour du slot-car, l’idée étant d’avoir une solution stand-alone et qui permettait un affichage des temps au millième de secondes. Un premier arduino traite la présentation, le comptage et mesure très précisément les temps, l’autre effectue l’affichage en VGA couleur (le rafraichissement lui mange 100% du CPU hors VBL), les données nouvelles sont transmises en I2C et décodées du ‹ quasi-videotext › pendant la VBL.
    … La résolution est certes limitée (trentaine de colonnes, vingtaine de lignes, et 4 couleurs) mais bien supérieure à ce que peuvent fournir les afficheurs classiques, d’autant qu’on peut y accoler un grand écran pour avoir une bonne vision de loin. Un Minitel dépouillé aurait pu aussi faire l’affaire (en mieux) mais l’affichage aurait été bien moins réactif.
  1. commandes AT :
    Euh - Tu voudrais faire quoi avec ca ?

  2. question DIN :

==> Cette solution ne marche (peut être) que pour les Alcatel (hors ABCD) … les autres, ca rate car, soit le sens ou l’angle n’est pas bon, soit il y a un décroché dans le boitier qui gène

Pas fan non plus des trucs volants mais c’est certainement la solution la plus raisonnable et universelle.

Oui, les stacks BT ca tombe en marche… parfois… :wink:
Les commandes AT iraient de pair avec le BT, pour que l’ESP fasse numéroter le smartphone auquel le minitel serait accouplé…
Mais on peut rester dans le l’IP/WiFi direct, ca le fait aussi…

Et pour une prise DIN "soudée’, alors il ne reste que l’option d’un PCB tout en longueur de la largeur de la DIN … sinon , c’est le fil

Bonjour à tous,
Je suis super content de vos retours, me voila motivé :muscle:

Par rapport à la prise DIN :

Merci pour tes vérifs @hwarin

Il s’agit d’un connecteur mâle pour câble. J’ai choisi l’épaisseur du pcb pour qu’il se coince entre 4 broches. Les pads de soudure sont rectangulaires et le plus grand possible pour assurer une bonne tenue mécanique.

Ce serait formidable ! Malheureusement l’esp32 est déjà plus large que la prise DIN. Cela risque de poser problème, en particulier pour le M5.

La solution que j’envisage :

Comme il n’y a pas de solution miracle à priori, qu’est ce que vous diriez d’un cordon DIN M/F de 15cm ? Juste de quoi déporter la carte proprement.

En parallèle si j’ai la place, j’ajouterai des pads supplémentaires dédiés à la soudure d’un câble de récup’ comme suggéré par @cquest. C’est toujours une bonne idée la récup’ :wink:

Par rapport au micro-contrôleur :

Je reste sur le choix de l’ESP32 qui supporte nativement le wifi et le BLE, en plus d’être bon marché et bien documenté. C’est carrément overkill pour une application donnée, mais l’idée est de pouvoir tester un maximum d’applications !

Pour les commandes AT je suis pas sûr que ça s’applique à l’ESP32. Vous pourrez lui demander d’envoyer des commandes à d’autres appareils sans soucis, mais lui se comporte tel qu’on le programme. A la rigueur, vous pouvez programmer vos propres commandes AT si nécessaire :wink:

Par rapport au design de la carte :

J’hésite à exposer qqs broches de l’ESP32* de part et d’autre du pcb. Cela pourrait permettre d’ajouter des modules, voir de concevoir des shields / hats ajoutant une fonctionnalité donnée.
Personnellement, mes idées d’application ne me pousse pas dans cette direction, mais je suis à votre écoute :ear:

Je dois également travailler sur la protection de la liaison série avec le minitel.
A ce propos, est ce que quelqu’un a déjà rencontrer une panne liée à une éventuelle surtension venant du minitel, ou autre ? Peut-être que je cherche des problèmes là où il n’y en a pas :sweat_smile:

J’ai pas souvenir de problèmes de surtensions sur la partie série.

On utilisait par contre le plus souvent un MAX232 pour ressortir un signal série V24 standard… assurait-il cette forme de protection ?

Le demi-cordon DIN me semble le plus… souple :wink:

Moi aussi j’aime bien la récup … Mais sur le coup, méfiance

  • J’ai déjà vu des cordons DIN ‹ non standard › ou câblés en mono avec des pinoches pontées dans la prise
  • Là, il faut 4 liaisons : In/Out/Gnd/Power et la majorité des câbles sont stéréo avec une masse commune - bref, moyen

Bof là aussi, rien ne ressemble plus à un cordon DIN qu’un autre cordon DIN, et puis, elles sont parfois fragiles, couteuses et chiantes à câbler … Une seule mâle déportée de 15cm ferait bien l’affaire, et, si le côté pendouillage pose problème, on peut toujours coller le PCB (ou un boitier 3D) au double-face ou au scratch à un endroit qui ne gène pas. Si on veut éviter de souder directement sur le PCB, un bête connecteur (avec détrompeur) au pas de 2.54 et zou !

Moi non plus … Mais on était soit en +12/-12 (avec généralement des MC1488/MC1489 en face) soit en TTL 5V, pas 3.3 (ou moins) … Les MAX232 étaient pour les riches, les autres utilisaient au mieux 2 transistors et 3 résistances (je ne sais plus mais il y a 100000 schémas de câbles d’époque un peu partout) … et sur commodore, juste rien (même si j’y regarderais à deux fois aujourd’hui) !

Pour de la DIN de qualité, ne cherchez pas: Neutrik

Vous pouvez rouler dessus :wink:

J’ai fait mes câbles USB/Minitel avec ça.

1 « J'aime »

1,50€ le bout … quand même !

Je vais me débrouiller pour laisser de quoi accueillir un connecteur 2.54mm sur le même pcb, comme ça il y en a pour tout le monde :wink:

De mon point de vue, quelque soit le cordon DIN neuf / DIN récup ou Connecteur 2.54mm, il y a de quoi se planter ! Donc, si c’est compliqué de sourcer un câble bon marché qui fasse le job, je pourrais en fabriquer maison.