Tiny Wearable 8-bit VT100 Console

Arduino Uno-powered terminal emulator on a tiny 1"x1" TFT screen

Similar projects worth following
** See version 2:

I decided to build a VT100-compatible terminal emulator (it's the command-line console window but in hardware, like in the old days) using modern parts like the Arduino and make it as tiny as I can: imagine a wearable wrist device for badass cyberpunk hackers! The screen is a one-inch-square TFT based on the ILI9163C chipset - maybe too tiny.

This project also involves nontrivial programming effort - a VT100 command parser and renderer to drive the screen; I've been trying to keep the code tidy, clear and extensible. Plus, I wanted to try fun techniques like sub-pixel rendering to show more text on screen: currently, the 128 pixel width manages to display up to 64 characters across (2 pixels per character!).

The TinTTY hardware setup is simple:

  • Arduino Uno
  • TFT screen (1in x 1in ILI9163C), connected via SPI
  • USB Host Shield, connected via SPI
  • cheap mini 2.4GHz wireless USB keyboard

The input device, by its nature, cannot be too miniature, otherwise it becomes too annoying to type! However, everything else should basically fit onto some sort of wearable wristband or inside a cute tin container. The separate wireless keyboard helps keep the hardware tidy and self-contained.

Stretch goals:

  • explore different keyboard connection approaches
  • Lego enclosure?
  • wearable form factor?
  • glasses mount?

All the code is open source, and I plan to keep the core reusable parser and display portions separate and reusable for different hardware/input combinations.

View all 7 project logs

Enjoy this project?



James Newton wrote 10/27/2017 at 03:57 point

Nice work! I wonder how this would look as a head mounted display... 

  Are you sure? yes | no

Nick Matantsev wrote 10/29/2017 at 18:33 point

Yeah, that would complete the cyberpunk hacker ideal :)

  Are you sure? yes | no

Le Roux Bodenstein wrote 10/24/2017 at 13:02 point

Have you tried connecting this directly to MicroPython yet? An all-microcontroller computing environment..

  Are you sure? yes | no

Nick Matantsev wrote 10/29/2017 at 18:31 point

So far I haven't considered other integrations - gotta get a "happy path" demo going first and then I will plan how to package it better for open-source.

  Are you sure? yes | no

Bartosz wrote 09/26/2017 at 12:16 point

Do You remember z88?

I would like:

1. dedicated keyboard , similar basic on zx spectrum, instruction : ls, awk, ruby perl etc.

2. 80x5 lines and graphics (similar z88)

  Are you sure? yes | no

Nick Matantsev wrote 10/29/2017 at 18:30 point

Thanks for the suggestion! My plans keep changing as I go - I might not even add a traditional keyboard after all...

  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