ronan.pict Portrait of Ronan Gaillard

Shot on black & white film, developed and scanned by me at home.

Ronan Gaillard's Workshop

Embedded systems, retro computers and sailing, from Saint-Malo. Things I built, and how.

ALWAYS UNDER CONSTRUCTION

MiniOS : an Arduino Talking to a Minitel

15 April 2010

A DIN plug, a resistor and an Arduino Mega to bring the good old French Minitel back to life


Updates

  • [16 April 2010] This project was featured on the Arduino blog : Minitel is not dead!
  • [20 December 2013] The photos were featured on TEXT-MODE, a blog about text graphics through the ages (ASCII, PETSCII, Teletext, mosaics…)

The Minitel is the French terminal that brought online services to millions of homes long before the Internet. There are still plenty of them sleeping in attics, and they have a nice feature : a “péri-informatique” DIN socket at the back, which is just a serial port. So I plugged an Arduino into one and wrote MiniOS, a tiny OS for the Minitel.

The MiniOS boot screen

The wiring

There is not much to it : a male DIN plug wired to the second serial port of an Arduino Mega, and a 4.7 kΩ resistor. The two LEDs are only there to show what is going on.

The Arduino Mega with its prototype shield

The Minitel speaks at 1200 bauds, with 7 data bits and an even parity bit. The Arduino serial library could not do that at the time, so I set the UART register directly before starting the port :

UCSR1C = B00100100; // 7 bits + parity bit
Serial1.begin(1200);

Drawing on the screen

Once connected, the Minitel behaves like a simple terminal : you send it text, and control codes to move the cursor, clear the screen or change the font. For example ESC followed by O makes the text double size, ESC H makes it blink and ESC ] inverts the background. The whole OS is just a few functions that print screens and wait for a key :

  • a boot screen, with a blinking “Appuyez sur une touche…” (press any key)
  • a menu, quite empty I admit
  • “Fakebook”, for fun
  • the credits

The menu

3615 FACEBOOK

All the code (a single file) is in the forum thread.

What happened next

I posted it on the French Arduino forum and the Arduino blog picked it up the next day. Other people rebuilt it, ported it to the Duemilanove (replace Serial1 with Serial and UCSR1C with UCSR0C), mapped the keys of the keyboard, and even added a speaker to play music. Not bad for a menu with two entries !


◄ Newer : Arduino as a PIC Programmer
Back to the home page