Just to set the scene, this is a follow-on from a previous column I wrote about a VT100 Emulator-on-a-Chip for Arduinos Et Al.
For any younger readers who aren’t VT100-aware, the VT100 was a cathode ray tube (CRT)-based video terminal that was introduced by the Digital Equipment Corporation (DEC) way back in the mists of time we used to call 1978.

The VT100 wasn’t a computer per se – it was just an input/output device that would be connected to a host computer. Having said this, it did contain an 8-bit Intel 8080 processor that could handle special features like reverse video, invisible text (don’t ask), auto-wrap, and so forth.
The great thing about the VT100 was that it supported ANSI escape sequences that allowed you to do things like specify the x,y location of the cursor on the screen, turn reverse video on or off, make the cursor a flashing underline or a flashing block, etc.
The reason I’m waffling on about this here is that a lot of my hobby projects are based on low-power microcontrollers (MCUs), like 8-bit Arduino Nanos, Unos, and Megas running at a measly 16MHz. In many cases, I would like my projects to display text on a screen (not my PC), and a VT100 terminal would be perfect.
The problem is that, although they look great, CRT-based terminals are big, bulky, and hard to find. By comparison, liquid crystal display (LCD) devices are small, light, and ubiquitous.
So, I have an Arduino on the one hand and an LCD display on the other. What I want is a VT100 emulator that goes between them. The idea is that the Arduino could use its UART interface to output ANSI escape sequences and text. Meanwhile, the VT100 emulator would accept this textual data, pretend to be a VT100 terminal, and generate the signals required to drive the LDC display.
VT100 emulator on a chip
Initially I was wondering if we could create something ourselves, but then I ran across a project that was originally published in the July 2014 issue of Silicon Chip magazine. This little rascal, which was created by Geoff Graham, is a complete ASCII VT100-compatible terminal that is based on a single Microchip PIC MCU.
I must admit that I was completely blown away when I saw this. It’s perfect for what I want. It accepts an ASCII text stream from a UART on an Arduino or other MCU, and it outputs VGA or composite video to drive the display of your choice.
I immediately ordered a PCB and pre-programmed PIC from the magazine. At the same time, I emailed my chum, Joe Farr, in England saying, “look at this,” because Joe creates a lot of hobby projects also.
What really blew me away was when I received an email from Joe a couple of days later saying that he had redesigned the board. It seems that Joe couldn’t get Geoff’s Gerber files to load correctly in his PCB package, so he decided to start again.

Apart from anything else, this gave Joe the opportunity to change various component footprints to suit what he already had or what he could easily get hold of. In particular, the original video connector was hard to source (I recall reading this on various websites), so Joe replaced it with a later version.
Joe also made a couple of other changes. Whilst there was a low-current 3.3V regulator on board, he decided to make provision for a higher-power variant. To that end, Joe added a DC barrel connector and a bridge rectifier with smoothing capacitors and a 5V regulator. As a result, Joe’s version can be powered by a 7V to 30V AC or DC source (a heatsink will be required for the 5V regulator if the input voltage exceeds around 7V). Knowing that I prefer to use a regulated 5V supply, Joe also provided a header that allows me to push 5V straight in.
Joe also took the opportunity to add taps on the board so that the 3.3V and 5V can be easily accessed to help drive other circuits. Furthermore, he added three jumpers that allow easier selection of the RGB colour used for the VGA connector. While he was at it, Joe changed the design to make use of some surface mount components, and he also took the opportunity to reposition some of the connectors to better suit some of his future needs.
I just found a small package in my post box. When I opened it, I found a fully assembled version of Joe’s board. I just took a picture as shown below.

Joe very kindly provided the full Gerber file set that he used to build this board, and he says I can make these files available to you if you decide to make one for yourself. As soon as I get this little scamp connected to an appropriate display, I will post another blog with some more pictures.
Very cool!!! Much lighter than carrying the original around
I’m just blown away that you can do all of this — including generating the timing for the video output — using a single, low-cost PIC microcontroller.
Max
There is no mention of a keyboard (or maybe there is and you will triumphantly correct my error). At a guess it would be a PC keyboard, but what flavour?
In the photo there is something that looks suspiciously like a PS2 keyboard connector….
Hi Aubrey — Elizabeth is correct — there’s a PS/2 keyboard connector — the chip/board takes the signals from this connector and outputs them on the UART TX line — you can loop this back into the RX input, in which case the characters will be displayed on the pseudo-VT100 screen (unless you enter an escape sequence, of course).
If you do plug a keyboard into it, bear in mind that the PS/2 interface is nowhere nearly as forgiving as the USB interface. Just plugging or unplugging a PS/2 keyboard while the circuit is powered up can do some damage.
At least that was true in the old PS/2 days. Perhaps the VT100 emulator PCB is more robust.
-Rick
My, aren’t you just a little ray of sunshine? LOL
Good for those who were young when PS/2 keyboards and mice were a thing. Us older guys know about not hot plugging PS/2 but someone younger might not.
I’m starting to feel like an old fool (but where are we going to find one at thsi time of the day? LOL)
This is assuming you can still get a PS/2 keyboard…
When I first saw the PS/2 socket I thought “1000 curses” for all the old PS/2 keyboards I discarded when USB first came out — I cannot put a number on how many I let go — also, out local recycled hardware facility shut down a bit back (sad face) — but for this emulator I purchased a new PS/2 keyboard from Amazon for $11 https://www.amazon.com/gp/product/B0075W8C8S
PS2 keyboards and mice are still quite common, and you can also get little converter plugs that allow you to plug USB keyboards/mice into PS2 connectors. I always have a couple in my backpack as you never know what you will find sitting in the corner of a datacentre.
To be honest, it’s a pain in the rear end tracking anything down in the Silicon Chip Store, so here’s a link to their Programmed Micros section where you will find the pre-programmed PIC for the VT100 Emulator: http://www.siliconchip.com.au/Shop/9/2763
Did Joe’s prototype every advance to availability as a kit? I’m interested! But my “maker’s pointy hat” is not yet tall enough to go from Gerber, through parts acquisition, to fruition.
Hi Bill — I have no idea if Joe is providing these as kits, but I’ll email him and ask and one of us will get back to you via a comment here.
Hi Bill,
It was never my intention to do kits as it’s not really my design; I just updated the PCB layout to better suit the parts I could get hold of and to add a couple of additional features I wanted at the same time. I do have a spare blank PCB I can send you however. You would still have to do the parts acquisition yourself of course and some of the components are surface mount (no IC’s or anything complicated). Feel free to drop me an email at hobbyelectronics@kcsl.uk.com if you’re interested where we can exchange details and I’ll pop the blank I have in the post to you.
Regards,
Joe
Thanks very much for the reply. Sorry it took me so long to notice. (I don’t remember seeing that my comment had received a reply.)
Thank you very much for the kind offer of a board.
I found a whole kit that is another fork of Geoff’s design at: https://www.tindie.com/products/petrohi/geoffs-vt100-terminal-kit/
Although it shows as out of stock right now, apparently he restocks and emails subscribers when the kit is available. There’s now a 2.0 version of the firmware/
I’ll reply to this thread with my further adventures.
Hi Bill — you have to click the bell icon with a line through it (next to the “post comment” button) if you want to see replies (Maybe I should make that the default)