Universal Retro keyboard

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Vintage keyboard

Post by dave » Wed Dec 11, 2019 7:57 pm

gekaufman wrote:
Wed Jun 26, 2019 7:38 pm

Now we need a case design. Perhaps a matching faceplate thru Front Panel Express?
BTW, I've also been working some case designs as well. I have a wedge-shaped case that works for Superboard II, Apple I, and other single board machines. I posted on it a while back.

I've made some refinements since then, and have a the SBII case, a similar Apple I case, and derived "Open" Apple I case that showcases the main PCB. Once they have been painted/finished, I'll put all the design files on Github as well. The main issue is that I don't have much time for these side projects, so they go slowly, with occasional small sprints of progress.

Dave

BillO
Posts: 154
Joined: Tue Jul 08, 2014 4:03 pm
Location: Canada
Contact:

Re: Universal Retro keyboard

Post by BillO » Thu Dec 12, 2019 1:27 am

I love the keyboard Dave, and when they are available I'll be interested in acquiring one. Are you implementing roll-over on the keyboard itself, or will that be up to the host?

Here is a retro terminal I recently put together as a an example of the concept of modular design (may need some explanation). More for home-brew computing, but may find a place in the OSI world.
HexTerm_3.jpg
HexTerm_3.jpg (177.6 KiB) Viewed 1285 times
Box stock Superboard II Rev. B
KLyball replica 600D, replica 610 & KLyball Data Separator
OMS SBME and SBME+ memory cards
KLyball memory card

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Retro keyboard

Post by dave » Thu Dec 12, 2019 1:11 pm

Bill, the hex terminal is awesome. I can think of a lot of uses for it.

So far I have two adapter boards for the keyboard. One is a regular OSI interface (right now, just the basics, like a 542, without the B or C features), and the other is an ASCII interface, which is really a generalized keyscanner/encoder board that could also be used for other key matrices, such as all those old Radio Shack ones on Ebay, or to emulate HP HIL keyboards, etc. The encoder interface is the one that implements the N-key rollover.

Jeff
Posts: 348
Joined: Fri Mar 07, 2014 4:44 am
Location: British Columbia, Canada

Re: Universal Retro keyboard

Post by Jeff » Thu Feb 13, 2020 4:03 am

Does each key need a diode?

/J
Image

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Retro keyboard

Post by dave » Thu Feb 13, 2020 6:54 pm

Jeff wrote:
Thu Feb 13, 2020 4:03 am
Does each key need a diode?

Pretty much yes, sorry :-| Technically, they are optional, but are needed to provide N-key rollover and avoid "ghosting". You could use shorting jumpers instead, but for the same amount of soldering, you may as well use the diodes. In the future, I can make a version of the keyboard without any diodes, for those who don't want them.

Note that there is a bank of 16 diodes (one per possible row) on the encoder board which should not be installed. There are thin shorting jumpers across their footprints, so no need to manually jumper those diodes. For keyboards without the per-key diodes, then these jumpers can be cut and the diodes installed, to prevent shorting the outputs of the 74LS138's with multiple simultaneously pressed keys.

Good luck,

Dave.

Jeff
Posts: 348
Joined: Fri Mar 07, 2014 4:44 am
Location: British Columbia, Canada

Re: Universal Retro keyboard

Post by Jeff » Sun Feb 16, 2020 11:51 pm

Hi Dave,

I am going to build up the keyboard for the Apple II+/I. With the availability of a Rev 7 Apple II motherboard from ReactiveMicro this week, a suitable keyboard is the only missing piece preventing one from building a "new" Apple II. So I think this project becomes very important.

Any info I need before I begin?
/Jeff
Image

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Retro keyboard

Post by dave » Mon Feb 17, 2020 11:15 am

Hi Jeff,

The version of the keyboard PCB you have was supposed to mount in an Apple II case, but I miscalculated and made the PCB too wide. The left side should be OK, but there is too much room on the right side. However, if you populate the Apple 2 keys, you should be able to use a drill and a hacksaw to make it fit in the Apple II case. Or, you could wait a week or so for me to post the latest to github and then place an order. I'm fixing it on the newest rev, and will test it out on a laser cutter first.

The nice thing is that it only takes about a week and about USD$30 to get 5 new keyboard PCBs from JLCPCB. The keycaps will transfer over, so if you can get keys on the cheap, it's not too onerous to build up a new keyboard later.

If you are OK with taking a hacksaw to this PCB, then you would do best to make your own measurements.

1) Be sure to only populate keys that match the Apple II layout. It's very similar to the OSI layout, minus the break key and adding in the power light key. You will want to install an LED on the power light key, once the key is in place.

2) Make sure you solder in the diodes on the key matrix PCB before anything else, and double check they are all facing the right direction, because it will be hard to change the diodes once the keys are all soldered in.

3) 16 of the diodes on the encoder board should not be populated, as I mentioned in the earlier post. These are the 14 diodes right next to the keyboard matrix connector, and D3 and D12.

4) I suggest not populating the Apple 1 connector, to avoid any mistakes.

5) The firmware on Github at the moment is configured for the "classic ASCII" keymap, which means the fully populated keyboard. I'm updating it now to support multiple keymaps selected by the DIP switch. The new firmware should be up soon. But if you populate the keyboard for the Apple, you may need to alter the keymap if you want all of the keys to behave correctly for an Apple layout.

6) I have already placed an order for a new keycap set that will have all the keys you need for an Apple II, OSI, or full ASCII layout, including the BELL/G, ^/N, @/P, arrow, and RESET keys. It should be about 10-12 weeks before they are ready.

Dave

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Retro keyboard

Post by dave » Thu Feb 20, 2020 2:47 pm

Latest version of the firmware with multiple keymap support is up on Github.

Jeff
Posts: 348
Joined: Fri Mar 07, 2014 4:44 am
Location: British Columbia, Canada

Re: Universal Retro keyboard

Post by Jeff » Mon Mar 09, 2020 6:28 pm

Hi Dave,

I was comparing key layouts between OSI and Apple II, and noticed that the Apple Right Arrow is in the same position as the OSI Shift Lock. Am I correct to assume that I should just install a normal switch in that location? And what about the diode for that key? It seems that there is not a place for one.


On the interface board, please confirm that R1 and R5 are 330 ohms and D3 and D12 are 1N4148's.

Please advise
/Jeff
Image

dave
Site Admin
Posts: 599
Joined: Tue Sep 09, 2008 5:24 am

Re: Universal Retro keyboard

Post by dave » Tue Mar 10, 2020 2:46 am

Jeff wrote:
Mon Mar 09, 2020 6:28 pm
I was comparing key layouts between OSI and Apple II, and noticed that the Apple Right Arrow is in the same position as the OSI Shift Lock. Am I correct to assume that I should just install a normal switch in that location?
Yes, just install a normal key. The Apple2 keymap will map it to an arrow key, and the "classic" keymap will map it to a RUBOUT key.
And what about the diode for that key? It seems that there is not a place for one.
The keyboard is designed to work with a direct OSI-compatible interface as well as an ASCII interface. The row-column organization of the keys is therefore OSI compatible, in which the BREAK key is connected to a RESET circuit, and (in my OSI interface) the SHIFTLOCK will optionally be connected to a soft-latch circuit to be able to use regular key switches and also drive an LED indicator.

Since these keys are special in the OSI interface, no diodes are include on the keyboard, and the keys are not wired into the matrix, but instead, both connections for each switch are brought directly to the interface board. The ASCII interface doesn't treat the keys as special, and simply wires those keys back into the matrix, with the diodes. So the ASCII interface sees those keys in the matrix.

On the interface board, please confirm that R1 and R5 are 330 ohms and D3 and D12 are 1N4148's.
Yes, but you could increase the value if you find the LEDs too bright. For the diodes, 1N4148 or 1N914 parts will work fine. Make sure you double-check that all the diodes are oriented correctly before you solder in the keys. The diodes will be hard to change once the whole keyboard is installed. Although you could install the diodes on the back. Then replacing them would not be too hard.

Good luck,

Dave

Post Reply