PO Box 6603

Huntsville, AL 35813, USA



Mega-Cool VT100 Emulator On-a-Chip

I just found a small package in my post box. When I opened it, I found a fully assembled PIC-based VT100 emulator board for use with my low-power microcontroller projects.

Blog Sponsors

Support My Blog

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.
DEC VT100 terminal at the Living Computer Museum (Source: Jason Scott/Wikipedia)
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.
The new layout (Source: Joe Farr)
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 Farr’s VT100 emulator board (Source: Max Maxfield)
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.

Blog Sponsors

Support My Blog

0 0 vote
Article Rating
Notify of
Newest Most Voted
Inline Feedbacks
View all comments


Very cool!!! Much lighter than carrying the original around

Aubrey Kagan

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?

Elizabeth Simon

In the photo there is something that looks suspiciously like a PS2 keyboard connector….

Rick Curl

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.

Elizabeth Simon

This is assuming you can still get a PS/2 keyboard…

Joe Farr

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.

Bill Cattey

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.

Joe Farr

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.


Bill Cattey

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.

Blog Sponsors

Buy this space!

Recent Posts

Hands Off My Brain Data! 

Is That a Pentakis Dodecahedron in Your Pocket, Or… 

Commodore 64-Based Bass Guitar 

The Great Toilet Roll Shortage of 2020 

DSP Online Conference 24-25 Sept 2020 

Can’t Afford Bagpipes? All Is Not Lost! 

Helping Engineers Become Better Communicators 

Things To Do When It Rains 

Register Now for Free IoT Central Webinar 

Mega-Cool Interactive Time Map 


Already a member? Login

Oops, forgot your password?

Please enter your username or email address.
You will receive a link to create a new password via email.

  • Name

  • Usernames cannot be changed.
  • Contact Info

  • About Yourself

  • Share a little biographical information to fill out your profile. This may be shown publicly.
  • Add or Edit GravatarYou can change your profile picture on Gravatar
  • Type your password.
  • Type your password again.

Edit Profile

You must be logged in to edit your profile.

Would love your thoughts, please comment.x