Close
0%
0%

MINITEL + ESP32

Make Minitel Great Again

Similar projects worth following
Starting from
$36.00
iodeo has 11 orders / 1reviews
Ships from France
The minitel is a french great-uncle of internet that comes back frequently in retro computing projects. This well documented old guy has a peripheral port from which we can access to screen display and keyboard input, so it can basically be used for any terminal application. The semi-graphic mode also makes GUI development possible with 240x144 resolution and 8 colors grayscale.

My past projects with minitel were always ending up as breadboard prototypes with external power supply and arduino / rpi. This kind of bulky delicate stuff is hard to take out of the garage and can dissuade software devs from working with. Well, here comes the idea.

The objective is to make a dev board:
- as generic as possible, to support the widest range of projects,
- accessible for the greatest number of people, being arduino IDE compatible with USB port
- self-powered and with a good form factor so that it can be used as a dongle plug and play

HARDWARE

As generic as possible

The ESP32 is powerfull, open source and supports Wifi & Bluetooth, making it the first choice for this project.

Accessible for the greatest number

ESP32 is affordable and compatible with Arduino IDE & micropython. USB / UART conversion based on CH340 chip is implemented so that we can program and debug with nothing but a USB-C cable.

Self-powered and Plug-n-Play

The board is powered from Minitel port (8-13v) with a buck converter based on TPS62162, so it doesn't require external power supply. It can also be powered from USB port when it needs to stay on while Minitel is shut down.

SOFTWARE

Minitel library

The communication with minitel is made using the library from Eserandour. This library is a faithfull traduction of the Minitel technical specifications, very pleasant to work with. Great thanks to him ! Some commands have been added to the library that will be posted soon.

Project examples

The source code of the demo can be found in Minitel-ESP32 repository.

You will also find sample codes to:

  • SSH remote machine like putty (Arduino code)
  • Start programming in micropython (Thonny IDE)

DEMO

  • 1 × ESP32 module
  • 1 × Buck converter
  • 1 × USB/UART converter
  • 1 × Minitel Serial converter

  • 1
    Hardware set-up

    Option 1: Using breadboard circuit

    You can use your own modules with some components as shown in breadboard cricuit below.
    NB: This circuit has no power management, so you need to be carefull with voltage levels: don't put power simultaneously from minitel and usb port.

    Option 2: Using ESP Minitel devboard

    If you don't want to bother with modules and wiring, or if you want to have a more "end product" looking for your application, you can purchase a devboard for around 46 EUR excl. shipping, depending on some options.

    Just send an email at contact@iodeo.fr for more information.

    Or you can get it on Tindie

    devboard din and jst versions
  • 2
    Get started with Arduino IDE
    1. Install software Arduino IDE
    2. Add Arduino-ESP32 core to the IDE as described here
    3. install Minitel1b library as follows
      1. download Minitel 1b library as ZIP file
      2. in Arduino IDE, go to Sketch / Include Library / Add .ZIP Library and select your ZIP file
    4. Connect your device using USB-C cable
    5. In Arduino IDE, select the corresponding serial port in Menu Tools/Port
      ! If you have difficulties with usb driver, check this sparkfun article
    6. Select ESP32 Dev Module in Tools/Board type/ESP32 Arduino

    Done!

    You can already start programming with the default settings You can also custom the board settings to set correct flash size and partitionning if needed

    As a starting point, you can run the example codes from Minitel1b library (File/Example/Minitel1b ...), by changing port to Serial2.

    #include <Minitel1B_Hard.h>
    Minitel minitel(Serial2);

    You will find more examples in Minitel-ESP32 repository

  • 3
    Get started with Thonny IDE

    This section is about programming ESP32 in micropython which can be very usefull to explore ideas quickly using interactive prompts (even wirelessly !) and to port some python applications.

    There are several ways to do it, but Thonny IDE has built-in functionnalities that makes it quick and easy.

    Here are some guidelines to get started :

    Install software on your computer

    Simply download and Install from Thonny IDE website

    Flash micropython firmware to your ESP32 device

    1. Download latest stable micropython firmware for ESP32
    2. Connect your ESP32 device to your computer via USB
    3. Open Thonny IDE
    4. In menu, Go to Tools / Options
    5. In Options window, go to Interpreter tab and click Install or update firmware
    6. Select the serial port corresponding to your ESP32
      (see Arduino section if you have difficulties)
    7. Select the firmware downloaded in step 1.
    8. Choose keep flash mode
    9. Check erase flash option
    10. Click install

    Done!

    Start using the shell

    When you open Thonny IDE, make sure it is set to run your device in micropython:

    1. Connect your ESP32 device on usb port
    2. Go to Interpreter tab of Options window (menu Tool/Options)
    3. Set the interpreter to MicroPython (ESP32)
    4. Set the serial port corresponding to your ESP32 device
    5. Click OK

    Done!

    You can already try some command in the shell, such as

    print('hello world')

    This seems nothing, but it is actually your ESP32 printing to the shell ;)

    Starting application development

    1. As a starting point you can download upynitel example from Minitel-ESP32 repo
    2. Copy folder to your computer to a known location
    3. Open Thonny IDE and navigate to this location in Files view tab
    4. To upload the files to your ESP32, simply right click on the files and click Upload to /
      You wil see it appear in MycroPython device tab
    5. Now, you need to know that on bootup, micropython devices will automatically run boot.py and then main.py where the main loop code is usually written
    6. After uploading your files, simply reboot your device to run your application

    Some Tips

    1. in Edition window, the files from your ESP32 are put in brackets [file]
    2. in File window, you can upload / download files between computer and ESP32 using right clicks. You can also delete files.
    3. in Shell window, the following shortcut are usefull
      1. CTRL+D to soft reboot your device
      2. CTRL+C to interrupt execution
        This is handy when you want to stop your main loop to regain shell interactive prompts

View all 3 instructions

Enjoy this project?

Share

Discussions

Yann Guidon / YGDES wrote 11/24/2021 at 00:13 point

Farpait :-D

  Are you sure? yes | no

Louis H wrote 11/24/2021 at 22:47 point

ci-mer ;)

  Are you sure? yes | no

Ken Yap wrote 11/25/2021 at 08:01 point

No no, if you follow the scheme, it should be Cermi ); 😉

  Are you sure? yes | no

PixJuan wrote 08/15/2021 at 13:33 point

Make Minitel great again ;-)
It would be a really nice way to access may SSH machines.

  Are you sure? yes | no

Louis H wrote 11/11/2021 at 00:13 point

I finally made it !

See https://github.com/iodeo/Minitel-ESP32 / arduino / LibSSH_Shell

  Are you sure? yes | no

PixJuan wrote 11/25/2021 at 05:18 point

Well done!

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates