The uTerm2-S (micro Term2 Stand-alone) is an easy to build multi-emulation RS232 terminal using an ESP32-Wroom-32 module and the great FabGL library (http://www.fabglib.org). More, using an ESP32 gives the opportunity to use the uTerm2-S in a lot of different ways easily using the Arduino IDE with the ESP32 core.

These the main specs of uTerm2-S:

  • RS232 serial port;
  • VGA output;
  • "transparent" port for a serial-USB adapter (as in the uTerm-S);
  • secondary serial port for ESP32 programming using a serial-USB adapter;
  • RTS/CTS support between the RS232 and the "transparent" port (as in the uTerm-S);
  • on board power supply;
  • colors, graphics and sounds capabilities (FabGL library);
  • multi language keyboard support (FabGL library);
  • various terminal emulations (FabGL library);
  • PS/2 connectors for keyboard and mouse;
  • on board amplifier for an external speaker.

In the following image a uTerm2-S (previous PCB revision) connected to a common PC speaker:

This one is the final board:


The uTerm2-S has a "transparent" port for an USB-serial adapter (as in the uTerm-S), so you can e.g. use XMODEM to exchange files with a PC (running a terminal emulator that supports XMODEM file transfer) while the uTerm2-S is in use.

Both the "mixed" power supply scenarios (USB-serial adapter not powered from USB but uTerm2-S powered and vice-versa) are managed by the HW, so you don't need to worry about it.

In the following photo a serial-USB adapter is connected with a cable to the transparent COM-USB2 (J3) port:

This allows to use two keyboards and two monitors in the "same" time (one keyboard and monitor attached directly to the uTerm2-S, and another keyboard and monitor of the terminal emulator on a PC connected with the serial-USB).

Please note that the COM-USB2 (J3) port supports the RTS/CTS HW handshaking, so both RTS/CTS signals are needed on the serial-USB adapter.

In the following image a common CP2102 based serial-USB adapter with the RTS/CTS signals connected:

The following table shows how to connect the serial-USB adapter to J3:

The signals assignment is the same of the SER-USB (J3) connector of the uTerm-S.


The PRG-USB1 (J2) connector is use to program the ESP32 using a serial-USB adapter (it is recommended to use a model that supports the default 921600 bit/s upload speed, like the CP2102 based adapters).

Both the "mixed" power supply scenarios (USB-serial adapter not powered from USB but uTerm2-S powered and vice-versa) are managed by the HW, so you don't need to worry about it.

For more information about the programming procedure see the "HOW TO PROGRAM THE ESP32" paragraph.


The SPK (J9) connector is used to attach an optional speaker (4/16 Ohm). I've used a salvaged PC speaker.


The remaining connectors are obvious. PS/2 KB (J5) and PS/2 MOUSE (J4) are for a PS/2 keyboard and an optional PS/2 mouse. Please note that many USB keyboards (and USB mouses too) have a PS/2 compatible chip inside so can be used with the well known "green adapter":

The VGA (J1) connector is for a VGA monitor, and the RS232 (J8) connector is the RS232 serial port for the Host. The maximum speed is 115200 bps (it is the maximum speed of the MAX232 RS232 driver).

The DC-IN (J2) is the power in connector. It is recommended to use a 9V 1A DC power supply.


The uTerm2-S has both the RTS/CTS signals for HW handshaking between the RS232 serial port (J8) connector (for the Host) and the COM-USB2 (J3) connector (the "transparent port" for the terminal emulation SW on a PC), so it can be used for file exchange.

To clarify the following image shows a block diagram of the serial ports of the uTerm2-S:

On the COM-USB2 (J3) side the RTS signal is used by the terminal emulation SW on a PC to put in a...

Read more »