Main Content

A VGA Computer Based on ESP32 and FabGL With Sound, Graphics

This a home computer with VGA, sound and optional network support based on an ESP32 microcontroller.

This tutorial is about building a 80s style home computer with BASIC interpreter on the basis of FabGL and the ESP32 microcontroller family. The system supports sound, graphics, and networking. Input device is a PS2 keyboard.

The microcontroller hardware is a board produced by TTGO with the VGA, PS2, and audio sockets already installed.It was originally designed for retro computing and running emulators of 70s and 80s operating systems. The project here showcases a BASIC interpreter that has been newly developed.

As the software setup and some of the features of the board are not completely beginner level, I have been asked to publish a tutorial on the detail. Here it is.

To build the computer you will need the following hardware components:

- TTGO ESP32 VGA board. I got mine directly from the source at Aliexpress. Prices are currently around 15 Euros.
- VGA monitor or an old TV set with VGA input and a VGA cable.
- PS2 keyboard.
- 5V power supply, preferably with 2A power output.
- Micro SD cards.
- Loudspeaker with 3.5mm AUX input

Software components needed are

- an Arduino IDE, version 1.8.15 or newer.
- the ESP32 board definitions.
- the FabGL library.

Details on these libraries and how to put it all together will be given further down in the tutorial. This is simple but a little care is required on library versions and settings.”

Link to article