DEC LK01-R ASCII keyboard


01 Dec 2019, 22:41

Having just done (most of) a VT100 converter, I was looking around at other Digital boards. It occurred to me that while the VT100 is a boring, if historically important, keyboard with an interesting communications protocol, the LK01 is an interesting keyboard with a boring, if historically important, communications protocol.

I have an LK01-R that looks like it might not ever have been actually installed in a terminal.
lk01-ascii-kbd.jpg (384.74 KiB) Viewed 741 times
The LK01 is the main keyboard for the VT05 and the LA32. It's actually not all that good a keyboard to type on.

What's interesting is that there were two versions of this keyboard. The first, from Control Devices, uses capacitive switches (with, I believe, a little RC circuit driving a transistor for each switch). These proved unreliable and were replaced by the Stackpole grid above. (The older board can be seen in the Terminals Wiki page.) Most of the board stayed the same. I believe that -R may indicate the board was intended as a field upgrade to existing equipment.

Even more interesting is that this family of boards has what I think is an SMC LSI chip to do the scanning control and character ROM. Look at all that gold! It doesn't appear to do the full ASCII translation. Rather, it goes from the matrix to a base character. And then some TTL does bit-paired shifting: clear bits 6 & 7 for CTRL and toggle bit 6 or 5 depending on whether 7 is set for SHIFT. Notice, for instance, how the parens are on 8 and 9 not 9 and 0. That slider switch is a further shift inhibitor.

As I said, the communications protocol is trivial. When a strobe bit goes, read 7 bits of parallel (data high) ASCII character.

Even still, I thought I would make it work with USB for a real typing test. As a serial port rather than a keyboard, since it's just a stream of ASCII characters. Turns out I already did the same protocol for a Micro Switch SW serial ASCII keyboard (much nicer to type on). Only difference is that the strobe trigger is now rising edge instead of falling.

So, a little refactoring and I had this board up and running.
micro-switch-ascii.jpg (453.02 KiB) Viewed 615 times
Now, I believe that Micro Switch board was intended for use in hobbyist computers of the late '70s. (I came upon it much later, but there was some paperwork from some shop in the Valley back then.) Perhaps even for an original Apple, which didn't come with a keyboard and worked with any ASCII encoded keyboard with positive DATA outputs. The STROBE could work either way. It had -12V available for CMOS, which the Micro Switch needed. The SMC chip needs -12V, too, but the DEC board has a voltage converter on it.

Which raises a question to which a quick internet search didn't turn up any positive answers. Did anybody back then ever take the keyboard from a broken DEC terminal for use in their hobbyist computer?
Last edited by MMcM on 07 Dec 2019, 01:59, edited 1 time in total.

User avatar
[ XMIT ]

02 Dec 2019, 17:24

Super cool! Playing devil's advocate here: how common would a dead DEC VT05 terminal have been back in the '70s? I'm guessing the VT05 was fairly pricey and that many were repaired when they failed.

Using RC drivers to transistors is an interesting, if perhaps power hungry, way to do capsense. Some Hall effect boards do something similar: use the output of the sensor (through a Schmitt trigger) to drive a FET.

A friend who programmed on PDPs and VAXen back in the day said that the RS-232 protocol had one fun feature: the possibility of long cable lengths. This made it easy to have the terminal in one room and the (loud, hot) system somewhere else.


08 Dec 2019, 05:14

Again up to some simple bit operations, this is the same trivial protocol used in the Consul 262.3, a Soviet-era Hall Effect keyboard.

A bit more refactoring and that's working too. And I get to delete a now redundant repository with a similar converter!
consul-262-3.jpg (497.47 KiB) Viewed 608 times
This is essentially the same board as Haata's and another that was being hawked here a few months ago.

Despite the Cyrillic legends, it sends the ASCII character on the key; it's up to the software to do some kind of codepage thing.
The arrow and numpad keys send single bytes with the high bit on, which I guess might almost make a keyboard (rather than serial) driver justified.

Post Reply

Return to “Workshop”