
Cet article datait de 2019, mais il a été actualisé en mai 2022 pour être publié dans le magazine Programmez!
Qu’est ce que c’est qu’un Minitel ?
Du début des années 1980 à la fin du service en 2012, l’ère du Minitel aura quand même duré 30 ans. Pour simplifier (pour les plus jeunes), disons que le Minitel était l’ancêtre d’internet. C’était un petit terminal en noir et blanc qui permettait d’accéder à des services payants (Annuaire, Chat, Journaux et bien sûr les fameuses messageries roses). Pour les personnes qui l’ont connu, le minitel reste un engin mythique. Alors pourquoi ne pas essayer de s’amuser en lui donnant une seconde vie ?
Choisir son Minitel
Le moins que l’on puisse dire, c’est que le Minitel est robuste. Au départ, il était prêté ou loué aux utilisateurs, il n’était donc pas du tout rentable qu’il tombe souvent en panne. Résultat, un Minitel de 35 ans qui prend la poussière au fond d’un grenier a toujours de grandes chances de s’allumer comme au 1er jour (après un petit coup de chiffon). Il y très peu de chances que nos smartphones connaissent le même destin…
Cet engin était si répandu en France qu’on le trouve encore très facilement sur internet ou dans les brocantes pour quelques dizaines d’euro seulement (assurez vous qu’il s’allume et que toutes les touches fonctionnent). Mais n’achetez pas n’importe quel modèle. Seuls les Minitels bistandards (1B et 2) peuvent être facilement transformés en terminal. Pour les reconnaître, c’est facile, ils possèdent (sur le clavier) une touche « Fnct » qui permet de changer la configuration du minitel. Mais aussi (à l’arrière), la fameuse prise DIN à 5 broches qui assurera la communication avec le Raspberry Pi.

Installation du Rasberry Pi
Pour cela, vous n’avez besoin ni d’écran, ni de clavier (ou de souris).
Préparation de la carte SD
Malheureusement, je n’ai pas réussi à faire fonctionner le Minitel avec la dernière version de Raspberry OS. Il existe certainement une solution, mais je ne la connais pas. Alors si vous la trouvez, n’hésitez pas à me contacter et je la publierai sur mon blog.
En attendant, je vous propose d’utiliser la dernière version qui fonctionne (à l’heure où j’écris ces lignes). Et si vous rencontrez quand même des difficultés, jetez un coup d’œil dans les commentaires (en bas de l’article).
Téléchargez donc la version Buster de Raspberry Pi OS Lite, que vous trouverez à l’adresse suivante : https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2021-05-28/
Décompressez le fichier zip et copiez l’image sur votre carte micro SD (le plus simple est certainement d’utiliser Raspberry Pi Imager). Cliquez sur CHOISISSEZ L’OS, puis sur Utiliser image personnalisée et sélectionnez l’image téléchargée.

Cliquez sur le petit engrenage pour activer le SSH, modifier le mot de passe et indiquer éventuellement vos paramètres WiFi.

Sélectionnez la carte SD (dans Stockage) et lancez la copie en cliquant sur ECRIRE.
Contrôle du Raspberry Pi (en SSH)
Insérez la carte dans le Raspberry Pi et allumez le.
Pour accéder au Raspberry Pi par SSH (depuis votre ordinateur), utilisez un émulateur de terminal (comme par exemple PuTTY).
Si vous connaissez l’adresse IP du Raspberry, vous pouvez l’indiquer, mais il est également possible d’indiquer le nom d’hôte : « raspberrypi » . Profitez-en pour enregistrer vos paramètres de connexion (pour la prochaine fois).

La 1ère connexion est un peu plus longue et PuTTY vous demandera certainement de valider la clé en cliquant sur « Accept« .

Par défaut le nom d’utilisateur est « pi » (et le mot de passe est celui que vous avez choisi).
Ensuite, vous pouvez mettre à jour Raspberry OS :
sudo apt update
sudo apt upgrade

Et redémarrez en tapant :
sudo reboot
Connexion du Minitel au Raspberry
Fabrication du câble
Le branchement n’est pas très compliqué, il suffit d’un transistor, de quelques résistances, mais surtout un convertisseur USB vers TTL série basé sur la puce PL2303HX.

Il est également possible d’intégrer les composants à l’intérieur du minitel et de faire seulement ressortir la prise USB à la place du câble téléphonique (désormais inutile).

Ensuite, vous pouvez brancher le minitel au Raspberry Pi.
Préparation du minitel
Le minitel est malheureusement incapable de mémoriser les informations de connexion. Il faudra donc chaque fois que vous l’allumerez, refaire la manipulation suivante :
- Fnct+Sommaire (pour que le Minitel 2 passe du mode répertoire au mode terminal)
- Fnct+T (en même temps), relâcher et A (passage en mode périphérique)
- Fnct+T, (en même temps) et E (désactivation de l’echo du terminal)
- Fnct+P, (en même temps), et 4 (connexion à 4800 bauds)
Avec le minitel 2, vous pouvez même vous connecter à 9600 bauds en tapant Fnct+P, (en même temps), et 9 (à la place de 4), mais il faudra aussi modifier les paramètres du Raspberry Pi (ci-dessous).
Test de communication
Branchez le minitel sur la prise USB du Raspberry Pi et allumez les. Connectez vous au Raspberry (avec PuTTY ou le client SSH de Windows).
Copiez ces 3 lignes en même temps dans votre client SSH :
stty -F /dev/ttyUSB0 4800 istrip cs7 parenb -parodd brkint \
ignpar icrnl ixon ixany opost onlcr cread hupcl isig icanon \
echo echoe echok
puis :
echo 'Hello World' > /dev/ttyUSB0


Nous allons maintenant tester la communication dans l’autre sens, tapez :
cat /dev/ttyUSB0
Sur le minitel, vous pouvez taper le texte que vous voulez (suivi de la touche entrée). Le texte devrait s’afficher dans le client SSH (tapez CTRL+C, pour quitter).

Pour la suite, je me suis surtout inspiré de l’excellent tuto de Maxime Vinzio : http://sta6502.blogspot.com/2016/02/utiliser-un-minitel-comme-terminal-sur.html
Téléchargez le fichier mntl.ti d’Alexandre MONTARON (http://canal.chez.com/terminfo.htm).
wget http://canal.chez.com/mntl.ti
Et compilez-le :
tic mntl.ti -o /etc/terminfo
Pour que le fichier soit utilisé par agetty, tapez :
agetty -c ttyUSB0 4800 minitel1b-80
Créez le fichier de configuration
sudo nano /etc/systemd/system/serial-getty\@.service
Copiez/Coller le texte suivant dans le fichier de configuration (clic droit) :
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published
# by the Free Software Foundation; either version 2.1 of the License,
# or (at your option) any later version.
[Unit]
Description=Serial Getty on %I
Documentation=man:agetty(8) man:systemd-getty-generator(8)
Documentation=http://0pointer.de/blog/projects/serial-console.html
BindsTo=dev-%i.device
After=dev-%i.device systemd-user-sessions.service plymouth-quit-wait.service
After=rc-local.service
# If additional gettys are spawned during boot then we should make
# sure that this is synchronized before getty.target, even though
# getty.target didn't actually pull it in.
Before=getty.target
IgnoreOnIsolate=yes
[Service]
ExecStart=-/sbin/agetty -L -i -I “\033\143” 4800 %I minitel1b-80
Type=idle
Restart=always
UtmpIdentifier=%I
TTYPath=/dev/%I
TTYReset=yes
TTYVHangup=yes
KillMode=process
IgnoreSIGPIPE=no
SendSIGHUP=yes
[Install]
WantedBy=getty.target
Enregistrez le fichier (CTRL+x, y et Entrée)
Activez le service au démarrage, copiez les lignes en même temps dans votre client SSH :
sudo ln -s /etc/systemd/system/serial-getty@.service /etc/systemd/system/getty.target.wants/serial-getty@ttyUSB0.service
Lancez le service
sudo systemctl daemon-reload
sudo systemctl start serial-getty@ttyUSB0.service
Ou redémarrez (pour vérifier qu’il se lance automatiquement)
sudo reboot
Les 2 premières lignes sont un peu bizarres (avec des gros carrés blancs) mais après avoir tapé le nom d’utilisateur (pi) et validé, l’affichage devient normal et vous disposez d’un terminal fonctionnel.

Maintenant, vous pouvez même piloter votre cafetière par Minitel…

Sources de l’article :
- http://pila.fr/wordpress/?p=361
- http://sta6502.blogspot.com/2016/02/utiliser-un-minitel-comme-terminal-sur.html
- http://xseignard.github.io/2013/05/20/plug-your-minitel-on-your-raspberry-pi/
- http://furrtek.free.fr/?a=telinux
- https://www.synergeek.fr/recycler-un-minitel/
- http://lea-linux.org/documentations/Pratique-minitel
- https://www.framboise314.fr/retour-vers-le-passe/
- https://www.raspberrypi.org/forums/viewtopic.php?t=44932
Cet article a aussi été publié dans le numéro 253 du magazine Programmez! (été 2022)

A reblogué ceci sur cyrzbibet a ajouté:
La renaissance d’un fleron de la technologie nationale !
J’aimeAimé par 1 personne
Bjr – Vous êtes bien certain d’avoir utilisé « juste » un connecteur USB « nu » dans votre montage comme l’indique votre dessin ? Il me semble qu’il faut insérer un convertisseur USB/TTL (5v ou 3.3v) pour que ça fonctionne. Ou alors, il faut utiliser les I/O prévues pour le terminal série sur le connecteur 40 pts du RasPi….
J’aimeAimé par 1 personne
Bonjour,
Vous avez tout à fait raison, ça fait quelques années que j’ai fait la modification du minitel et en reprenant mes notes, j’ai effectivement oublié ce « détail ».
Le schéma est maintenant corrigé, merci beaucoup pour votre intervention.
J’aimeJ’aime
Puisque vous semblez utiliser un Minitel 2 (et non un Minitel 1B), vous pouvez utiliser TERM=minitel2-80 (ou m2-x80 de mntl.ti) a la place… Ainsi vous aurez les filets vt100 … a voir dans mc (midnight commander) ou d’autres logiciels … Alexandre.
J’aimeAimé par 1 personne
C’est vrai que le Minitel 2 offre plus de possibilités (comme par exemple une vitesse de 9600 bauds) mais j’ai choisi de faire un tuto compatible avec le Minitels 1B.
J’aimeJ’aime
Bonjour les caractères sont différent j’ai des carrés blancs et : derrière
Normale ?
J’aimeJ’aime
Oui, j’ai la même chose (voir l’avant dernière photo). Tapez simplement l’identifiant (pi, par défaut) et validez et ensuite les caractères devraient être normaux (il demande le mot de passe etc…)
J’aimeJ’aime
le soucis c’est que même quand je me connecte tout est caractères randoms et la je sais pas d’ou ça peut provenir
J’aimeJ’aime
Vous avez peut être raté une étape, essayez de recommander le tuto depuis le début avec une version « vierge » de Raspbian, on a vite fait de se tromper et moi aussi j’ai un peu galéré avant d’arriver à avoir quelque chose qui fonctionne, sinon regardez dans les liens sités en source, vous trouvez peut être des paramètres qui correspondent mieux à votre configuration.
J’aimeJ’aime
Bonjour,
Après quelques temps de bon fonctionnement j’ai le minitel qui rencontre une problematique.
Voilà les touches envoi suite correction… ne repondent plus cependant quand je fais un caractère qu’il lui est associé elles fonctionnent mais je ne peut pas valider ou corriger. C’est un minitel 1
Quelqu’un aurait il une idée ?
J’aimeJ’aime
Bonjour Pauline,
Il y a certainement un faux contact quelque part, j’en profiterais pour ouvrir le boitier et nettoyer un peu l’intérieur, mais fait bien attention avec l’écran, il y a un risque de recevoir une très grosse décharge électrique (alors renseigne toi avant sur la procédure).
J’aimeJ’aime
le problème est disons plus problématique quand je rentre dans aucune Fonction mon clavier (minitel) fonctionne normalement quand je fait Fnct+ T ect le clavier ne correspond plus a rien est un coup il écrit et 2 secondes plus tard il écrit plus rien
J’aimeJ’aime
Vous êtes sûr que vous faites correctement les combinaisons de touches, dans l’ordre et en relâchant les boutons au bon moment, par exemple, vous appuyez sur Fnct+T (en même temps), vous relâchez et ensuite vous appuyez sur A (et ainsi de suite pour les autres séquences de touches). Autrement, le test de communication (depuis le Raspberry connecté en SSH) fonctionne ?
J’aimeJ’aime
j’aimerais vous envoyez la photo de ce que cela donne comme problème. Avez vous une adresse mail a me communiquer ?
J’aimeJ’aime
Bonjour,
Je vous ai envoyé mon adresse mail…
J’aimeJ’aime
Pour les caractères blancs il faut recompiler getty ou utiliser un prompt avec la parité paire pré-calculée
$ agetty -f /etc/issue.minitelG a prendre ici : http://canal.chez.com/issue.minitelG
Mais les symptômes correspondent plutôt a un problème de câble …
Alex. – http://canal.chez.com/term_prompt.htm
J’aimeJ’aime
bonjour Alexandre
je me casse un peu la tête sur le système, mon câble fonctionne je l’ai testé dans les deux sens, par contre des caractères blanc quand je veux utiliser en mode terminal, j’ai un prompt login je met pi mais je n’ai pas le prompt suivant de password en faisant « entree » ou autre touche, si votre fichier corrige cela comment le mettre dans le fichier @.service ? j’ai mise ça chez moi mais euh comment dire…
ExecStart=-/sbin/agetty -L -i -I « \033\143 » -f /etc/issue.minitelG %i 4800 minitel1b-80
merci
Jean-Philippe
J’aimeJ’aime
bonjour
je ne suis pas expert et n’hésitez pas à ma corriger mais on dirait qu’il y a une petite coquille dans la ligne de démarrage du service (cas câble USB)
sudo systemctl start serial-getty@ttyS2.service
il faut à mon sens écrire
sudo systemctl start serial-getty-minitel@ttyUSB0.service
amicalement
Jean-Philippe
J’aimeAimé par 1 personne
et je m’autocorrige aussi, lire « sudo systemctl start serial-getty@ttyUSB0.service 😉
J’aimeAimé par 1 personne
Bonjour Jean-Philippe,
Je ne suis pas non plus un expert en ce domaine. Comme je l’indique dans l’article je me suis surtout contenté de faire une synthèse de différents tuto pour obtenir un résultat qui fonctionne.
Mais, vous avez tout à fait raison, c’est bien une erreur. C’est certainement pour cette raison que j’ai ajouté un reboot (qui règle le problème en rendant cette ligne inutile).
Je vous remercie beaucoup pour votre vigilance et corrige cela immédiatement.
Amicalement
JC
J’aimeAimé par 1 personne
merci pour la réponse rapide JC 🙂
j’ai un souci, peut-être pas le seul à l’avoir: sur 3 minitels de récup, j’ai au démarrage l’affichage d’une sorte d’annuaire mais je n’arrive pas à faire comme sur mon minitel 1 (séquence FCT+T et A puis E puis passage en 80 col avec FCT+Pet 4)
le curseur en haut à droit ne change pas et .. je tourne en rond, help 🙂
merci
Jean-Philippe
J’aimeJ’aime
Il faut faire Fnct+Sommaire, pour passer du mode répertoire au mode terminal.
Sinon, il y aussi une procédure pour le déverrouiller, mais le mieux est de regarder dans la doc qui correspond à ton modèle de Minitel.
http://akela.eg2.fr/forum-t833-p1,notices-minitel-ou-mode-d-emploi.html
Bon courage
JC
J’aimeAimé par 1 personne
super j’ai déjà pu basculer dans le mode terminal, j’ai ces fichus carrés blanc sans retour de commande vers le Pi comme avec l’autre minitel mais je creuse… merci 🙂
J’aimeJ’aime
Les carrès blancs c’est du au fait que les getty d’aujourd’hui démarrent en 8bits sans parité et passent en 7bits parité impaire (voir paire) dès qu’il reçoit des erreurs de parité justement… Tu peux qd mm te logguer malgré les carrès blanc il disparaitront après. Le fichier issue.minitelG que je te proposais fait disparaitre les carrès blanc dès le début sauf pour le login ou c’est comme sur la photo http://canal.chez.com/term_prompt.htm ). Alex.
J’aimeJ’aime
Au passage, je vois que vous utilisez Putty…
export TERM=putty-m1 donne un rendu Minitel 1 Couleur a putty
export TERM=putty-m1b donne un rendu Minitel 1b gris (genre 80 colonnes)
export TERM=putty-m2 donne un rendu Minitel 2 vert avec les filets vt100
$ tput init <- a ne pas oublier juste après export TERM.
Alex.
PS: Tu peux aussi les retrouver ici: http://canal.chez.com/linux.ti
J’aimeJ’aime
Bonjour,
Serait-il possible d’utiliser le branchement USB-DIN pour des communications avec une carte Arduino ?
Joris.
J’aimeJ’aime
Bonjour Jean-Christophe,
J’ai relevé une petite erreur dans votre excellent tutoriel : pour passer un Minitel 2 en 9600 bauds, il faut faire Fnct P puis 9 (et pas 8 comment indiqué). J’ai trouvé l’info ici : http://minitel.cquest.org/musee/minitel/documentation-utilisateurs/Mode%20d%27emploi%20Minitel%202%20philips.pdf
J’ai vérifié sur le Minitel 2 Philips que je viens tout juste de récupérer et cela fonctionne.
Un *très* grand merci à vous pour votre tutoriel !!! J’ai pu faire revivre 2 Minitel et découvert les breadboards pour faire le petit montage électronique.
Lionel
J’aimeAimé par 1 personne
Bonjour Lionel,
Je vous remercie beaucoup pour votre vigilance, je corrige immédiatement cette erreur et je suis très content ce tuto vous ai inspiré.
J’aimeJ’aime
Bonsoir, j’ai récupéré un minitel et lorsque je l’allume et je me mais à taper sur le clavier, les touches qui se situent à gauche ne répondent pas mais celle de droite fonctionne correctement. Est-ce que quelqu’un saurait m’aider ?
J’aimeJ’aime
Bonjour, merci pour votre super tuto !
J’ai pour ma part un petit soucis :
La communication fonctionne très bien dans les 2 sens mais quand je lance le fichier cafe.py, j’ai des caractères blancs qui s’affichent sur une ligne puis le minitel (2) est bloqué. J’ai essayé avec un autre fichier python contenant juste un print (« coucou ») mais le résultat est le même…
Auriez vous une idée ?
Merci d’avance
J’aimeJ’aime
Après test, si je « sors » toute la partie code concernant l’arduino, l’affichage du coup sur le minitel fonctionne correctement. Je précise que j’ai alimenté aussi ma carte arduino en externe comme conseillé dans votre article
J’aimeJ’aime
Bonjour à tous j’ai besoin d’aide. J’ai bien réussi à faire fonctionner le minitel genial ! Oui mais voilà depuis quelques jours je n’ai plus rien sur le minitel … je n’arrive plus à avoir l’affichage annuaire… par contre quand je tape sur le minitel j’ai bien les caractère et la recherche qui s’affiche sur le pc (relié au raspberry) une personne pourrait avoir la gentillesse de m’aider ?
J’aimeJ’aime
Bonjour Pauline,
Ça ressemble plutôt à un problème matériel, il faudrait peut être essayer avec un autre minitel, si c’est la même chose…
J’aimeJ’aime
Bonjour, j’ai une erreur avec mon Minitel que je ne comprends pas. J’avais tout bien fait. Si bien que ça marchait très bien. En voulant réinstaller les commandes, la phase finale ne marche plus.
En effet, j’arrive à envoyer des messages sur le terminal du Minitel. Et a envoyer des messages au rpi avec le cat.
Néanmoins, à la dernière étape, quand je reboot avec le .service, on me demande le login. Je mets pi (ou n’importe quoi) puis entrée. Puis le curseur retourne au début de la ligne sans ne rien faire.
Une idée de où cela peut il venir ?
Très cordialement,
Calvin
J’aimeJ’aime
Bonjour Calvin,
Tu utilises bien la version Buster de Raspberry Pi OS Lite ?
Tu arrives toujours à te connecter en SSH depuis un ordinateur ?
Tu utilises bien la flèche en bas à droite (et pas la touche Envoi) ?
J’aimeJ’aime
Bonjour,
lorsque j’appuie sur fnct+sommaire, j’ai le bip décris comme une erreur de commande par le manuel du minitel. Avez vous aussi ce bip ? Je soupçonne que ce problème soit la cause de mon incapacité à faire apparaitre le « Hello world » sur le minitel.
Merci d’avance pour vos retours 🙂
J’aimeJ’aime
Bonjour,
En fait, ça dépend des modèles de Minitel. Je viens de vérifier et effectivement cette étape n’est utile qu’avec le Minitel 2 autrement ça fait un bip d’erreur avec un 1B, mais ça n’empêche pas ensuite le « Hello World »
J’aimeJ’aime
Vous avez raison. Mon problème venait du mauvais câblage de mon connecteur DIN5. Merci pour votre aide.
J’aimeJ’aime
Bonjour, je reviens vous demander de l’aide car je bloque au moment d’entrer les identifiants avec le minitel. Celui-ci affiche bien la première ligne pour entrer le nom d’utilisateur mais après avoir appuyé sur la touche entrée, il ne se passe plus rien et je ne peux plus rien faire jusqu’à ce qu’il redemande le nom. J’ai tenté d’écrire quand même le mot de passe mais rien ne se passe. J’ai aussi réinstallé l’os et refais les étapes. Tout se passe bien jusqu’à cette dernière étape qui bloque. Auriez vous une idée d’où pourrais venir le problème ?
Merci
J’aimeJ’aime
Bonjour,
J’ai rencontré ce type de problème avec les versions récentes de Raspberry OS, vous utilisez bien la version Buster de Raspberry Pi OS Lite, que je recommande dans le tuto ? https://downloads.raspberrypi.org/raspios_lite_armhf/images/raspios_lite_armhf-2021-05-28/
J’aimeJ’aime
J’ai bien utilisé cette version. J’ai refais une tentative en réinstallant l’os et en sautant la commande sudo apt upgrade mais j’ai toujours le même résultat.
J’aimeJ’aime
Alors, là je n’ai plus trop d’idées 😦
J’aimeJ’aime
Bonjour, j’ai réussi après beaucoup de tâtonnements et de recherches à régler le problème en installant la version jessie de raspbian. Cependant, cette version n’est plus supportée et ne permet pas tel quel de faire des updates ou d’installer des packages.
Pour résoudre ce soucis, il faut choisir un des liens proposé ici:
https://www.raspbian.org/RaspbianMirrors/
puis entrer dans la console:
nano /etc/apt/sources.list
Il faut mettre en commentaire la première ligne et ajouter la ligne:
deb « le lien que vous avez choisi sans les guillemets » oldoldstable main contrib non-free rpi
Je suppose qu’il y a de meilleurs manières de faire mais j’espère que ça pourra dépanner ceux qui se trouveront dans le même cas que moi.
J’aimeJ’aime
Bonjour Aoxo et merci beaucoup pour ce retour
J’aimeJ’aime