Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Hack && Tell 2017-10-17 - Tiny Wearable VT100 Console

Hack && Tell 2017-10-17 - Tiny Wearable VT100 Console

TinTTY is an Arduino Uno based terminal emulator project. This presentation gives a brief overview of the motivation behind the effort, current progress so far and some implementation details.

Nick Matantsev

October 17, 2017
Tweet

More Decks by Nick Matantsev

Other Decks in How-to & DIY

Transcript

  1. About Me - Nick Matantsev (@line_ctrl on Twitter) - full-stack

    developer (@unframework on GitHub) - currently front-end web dev - independent contractor (see beamworks.io) - balancing work with wacky hobbies - retro hardware - electronics and Arduino - learning Mandarin! (不很好) @line_ctrl
  2. Command Prompt - most folks in tech have used commandline

    / shell / terminal prompt - grid of text characters, ASCII - handy low-level access on every OS - universal UI? maybe! - just remember, it’s :q! to exit @line_ctrl
  3. Olden Days - not just a handy terminal window, but

    the only user interface! - bulky appliance on someone’s desk - actual computer with disk drive is elsewhere, in a dedicated data center - “thin client” using serial wire connection - still used to this day @line_ctrl
  4. Let’s Make it Wearable! - who needs Apple Watch? -

    text interface is surprisingly versatile - useful for hacking into the Matrix on the go - finally get to put my Arduino Minis into a real project @line_ctrl
  5. How it Works - data in, data out - very

    little internal logic - VT and ANSI commands - move cursor - set text colour @line_ctrl Arduino Uno Mainframe (Linux / Unix / GLaDOS) Text and Esc-command parsing Input keycode to ASCII translation LCD display (ILI9163C TFT) USB wireless keyboard Serial UART
  6. Showing Stuff on Screen - the LCD TFT display has

    a tiny controller chip with a pixel buffer - 1” by 1” square, ILI9163C, purchased at Creatron - accepts commands over serial SPI hardware bus - example: “put pixel data in address 1234” - Adafruit GFX library adds helper functions like “draw rectangle at X,Y” @line_ctrl
  7. Keyboard Input - can’t be too small! - USB connection

    for versatility - portable wireless keyboard - Arduino USB host shield takes a lot of memory! - might bring out to secondary MCU @line_ctrl
  8. Almost Wearable? - not quite yet - parser code needed

    some attention - need to find a small form-factor USB shield - but it works! (first video) @line_ctrl
  9. More Text Density - sub-pixel rendering increases density by 3x

    - yep, 2 pixels per character! - more in my blog posts @line_ctrl
  10. Next Steps - proper wearable prototype! - glasses mount? -

    something something Lego? - open-source code (already online, needs cleanup) @line_ctrl
  11. More Pics/Posts on Twitter and Medium! • Follow on Twitter

    and Medium: @line_ctrl • Arduino devlog stories and pictures ... also, cough, check out beamworks.io if you need web dev help! (React, WordPress) @line_ctrl