Geac 8340

MMcM

20 Dec 2020, 21:49

A library's worth of Geac 8000 series Public Enquiry Terminal (PET) keyboards showed up on eBay recently for a reasonable price.
Geac-case.jpg
Geac-case.jpg (480.21 KiB) Viewed 1719 times
I suspect that they are all the same model, but the one I snagged is 8340-01.
Geac-back.jpg
Geac-back.jpg (301.07 KiB) Viewed 1719 times
The keys are strikingly orange, so this must have been near a sunny window for decades. The red SEND key still manages to stand out.

The switches are Hi-Tek grid, with the expected fraction of broken corners.
Geac-top.jpg
Geac-top.jpg (1.23 MiB) Viewed 1719 times
The PCB has some 74-series TTL, but no computing elements.
Geac-bottom.jpg
Geac-bottom.jpg (1.08 MiB) Viewed 1719 times
Instead, the terminal needs to scan the matrix somewhat directly. In another post there was some interest in the details of how this works, so here goes.

Two input signals control the serial-to-parallel shift register U3 (74LS164).

The last bit into the SR (QA) selects one of two demultiplexers U1 and U2 (74LS156), roughly the left and ride sides of the keyboard.

The previous three bits (QB, QC, QD) are the select lines for both demuxes.

These four bits drive exactly one column in the matrix low and the rest high.

The first bit (QH) into the SR is not connected, but must be accounted for in serial loading.

The next three bits (QE, QF, QG) are the select lines for the multiplexer U4 (74LS251). They read one row of the matrix.

The output signal is the inverting output of the mux (W). It is high if the switch is closed at the selected position. The clock line also drives the mux's gate, so the output is hi-Z when not active. A pull-up resistor is therefore inappropriate; a pull-down resistor could be added, but isn't really necessary, provided the keyboard is always plugged in.

The choice of key codes and the row and column designations are arbitrary, provided that all 128 patterns are checked. The scheme here gives codes that (roughly) correspond to the physical layout of keys.

The remaining output gives the state of the jumper J2, which has a pull-up. Maybe this selected a French layout or something?

Any four GPIOs can be used. A quick QMK prototype uses the first Arduino ones.
Geac-converter-1.jpg
Geac-converter-1.jpg (315.24 KiB) Viewed 1719 times
I chose an A-Star Micro here because the power pins are less in the way of the USB connector for this bare-bones converter. A Teensy or even Pro Micro would work fine.

With this scanning arrangement, every clock pulse reads the state of some key. I enumerated the key codes in the most straightforward way. This old TTL can still handle a clock faster than an ATMega32U4's 16MHz, so there's no performance issue. But it's presumably possible to devise a more clever CS undergrad quiz kind of de Bruijn sequence algorithm that accounts for the intermediate states and the fact that the eighth bit shifted out doesn't matter to visit all 128 keys in fewer than 1024 clock cycles.
Last edited by MMcM on 21 Dec 2020, 19:17, edited 1 time in total.

catlady195

21 Dec 2020, 00:08

I haven't even gotten around to cleaning all the keycaps and you've already figured out the entire keyboard and how to convert it... I swear you're way too smart
I guess I'll be ordering two teensys now, one for your tandy conversion and one for this.

Rayndalf

24 Dec 2020, 12:36

I'm so relieved I wasn't the only one who bought one of these. My board and keycaps could use some retrobriting, but it's great to see the conversion is so straightforward. I wish more boards used the RJ12 cable (6 wires, not 4), they're still used for telephone data(?) lines, so they're cheap and fairly easy to find. Anything beats "mystery serial" connectors which would need an uncommon female connector to avoid hardwiring the converter.

The threading in the top shell on mine had several cracks, so I reinforced the outsides with JB weld. I probably should have used the clear epoxy for plastic, but I went with the original (because it smells better less bad :lol:)

I'm curious what information you've been able to find about the Geac terminals, I've found mention of a OLIS in reference to library systems.

I found a picture of a similar terminal (a similar but larger keyboard) referred to as Chester. The keyboard is absolutely massive next to the monitor.
https://www.library.rochester.edu/about ... u-met-alma
Attachments
GEAC-Chester2 TT.jpg
GEAC-Chester2 TT.jpg (27.77 KiB) Viewed 1588 times

User avatar
kps

25 Dec 2020, 21:58

MMcM wrote:
20 Dec 2020, 21:49
Geac
Now that's a name I've not heard in a long time.

I remember thinking these were the coolest thing ever:
geac_terminal_1977.jpg
geac_terminal_1977.jpg (77.46 KiB) Viewed 1534 times

jsheradin

26 Dec 2020, 00:13

Hey I grabbed one of those too!

If it's any use, here's some pics of the bare PCB on mine:
Image
Image
Image

Ignore the pen marks on the back. I was going to try adding diodes to make it NKRO/USB but I'm probably going to just draw up a custom PCB.

Rayndalf

26 Dec 2020, 00:44

jsheradin wrote:
26 Dec 2020, 00:13
I was going to try adding diodes to make it NKRO/USB but I'm probably going to just draw up a custom PCB.
I'm glad that despite only 13 of these coming up for sale there is so much interest in converting them. From what I've heard it took years for certain beamsprings to get converted, but this random library terminal board (with stackpole switches no less) has been cracked wide open remarkably quickly.

If you do make a new PCB I'd be very interested in buying one. Do check the fit of the F keys, on mine the alpha block fits perfectly, but one of the F key rows almost drags the side of the case.

Rayndalf

26 Dec 2020, 11:39

I messaged the seller in hopes of finding more information about Geac terminals, and apparently have some larger Geac keyboards as well. Hopefully they come up for sale soon, the sublegends are pretty unique.
Attachments
s-l1600.jpg
s-l1600.jpg (284.7 KiB) Viewed 1448 times

User avatar
Polecat

27 Dec 2020, 00:22


jsheradin

29 Dec 2020, 22:06

I scanned and counted pixels on the case, switch grid, and PCB and everything seems to be standard 19.05mm/u. The right F row was spaced a little funky on the PCB at only ~0.94u. I rounded it up so it should better match the case. The arrow key column wasn't a clean fraction of a U in distance from the rest of the keys so I just went with what I could best measure it as on the PCB.

I'm gonna check the fit before adding traces and stuff but the measurements should be pretty spot on. I just need to figure out how to get KiCAD to output something that I can throw at a 3D printer :/

Image

Rayndalf

29 Dec 2020, 23:40

jsheradin wrote:
29 Dec 2020, 22:06
I scanned and counted pixels on the case, switch grid, and PCB and everything seems to be standard 19.05mm/u. The right F row was spaced a little funky on the PCB at only ~0.94u. I rounded it up so it should better match the case.
Glad I wasn't the only one with a misaligned F row :lol:

I'd love to buy one of these PCBs. Either from you if you end up with extras, or from JLCPCB if you share the files.

Is it possible to export the PCB as a DXF and extrude that into a model you could print? The final thickness will depend on what manufacturers offer, but as long as the diodes are cut flush it should fit as well as the original, right?

jsheradin

30 Dec 2020, 01:44

I'll definitely make the files available once I finish them. I think the minimum order quantity is 5 so I'll definitely have some extras!

I'm able to get the layers plotted to DXF and extrude but there doesn't seem to be an easy way to do that for the drill map. I'm probably just going to print the Cu mask layer. It's not as precise since all the holes are the size of the entire pad but should be enough for a sanity check.

The stock PCB is just standard 1.6mm available at any PCB shop. Going the next step up in thickness is ~4x the price on JLCPCB. Not worth the marginal added stiffness imo.

There should be plenty of room on the backside of the PCB for diodes since the board mounts to standoffs. The bottom of the switch grid has a convenient channel around each switch so there should be room for the diode legs to stick through the top a bit.

jsheradin

01 Jan 2021, 23:13

Well the sanity check passed! The PCB won't be perfect but there's enough wiggle room that alignment can be made to look good. I finished up the PCB and ordered a set of 5 (the minimum); they should be here in about a week.

Here's the KiCad project and the gerbers that I sent out: https://github.com/jsheradin/geac8340-01 I'll throw whatever FW I end up using in that repo at some point too.

Side note, these keycaps bounced back really well on my sous vide retrobrite setup with the following:
~8% peroxide at 120F for ~96 hours on all keys
~8% peroxide at 135F for an additional 15 hours on all keys but the spacebar
I didn't do anything to the red key since it looks pretty alright to me.
Spoiler:
Image
Image
Image

jsheradin

12 Jan 2021, 02:12

Update on the PCB:

Got 5 in the mail from JLCPCB today. There's about 4mm that needs messaging around where the case screws in but other than that they seem like they fit fine.
Spoiler:
Image
Image
See the messaged areas at the top
Image
Used Hasu's hybrid diode footprint so you can use either TH or SMD
Image
Teensy gets soldered in and the cable runs out of the case
Looks like stackpoles can't be disassembled once they're soldered so I'm going to get to cleaning the switches before I get it fully together and test.

jsheradin

12 Jan 2021, 18:24

I tore down the switches and ran them through an ultrasonic cleaner before I soldered everything in place. Threw on a quick QMK map and it works great! Switches are surprisingly smooth given their reputation. I got lucky with my board in that very few of the stems were cracked. I just put those on the F keys for now but I will probably try the collar fix at some point.

Eye candy:
Spoiler:
Image
Image
I have a couple extra PCBs, PM me if you're interested. I'll just sell them at my break even cost.

I hereby dedicate the PCB design to public domain so feel free to modify the design or print your own.

Rayndalf

13 Jan 2021, 04:20

jsheradin wrote:
12 Jan 2021, 18:24
I tore down the switches and ran them through an ultrasonic cleaner before I soldered everything in place. Threw on a quick QMK map and it works great! Switches are surprisingly smooth given their reputation. I got lucky with my board in that very few of the stems were cracked. I just put those on the F keys for now but I will probably try the collar fix at some point.

Eye candy:
Spoiler:
Image
Image
I have a couple extra PCBs, PM me if you're interested. I'll just sell them at my break even cost.

I hereby dedicate the PCB design to public domain so feel free to modify the design or print your own.
Glad to see this thing works. Did you retrobrite the case at all?

8% peroxide seemed to work really on the keycaps. How did you heat them for 4 days?

jsheradin

13 Jan 2021, 04:37

I haven't done the case yet but I'll get around to it once I can find a plastic bag big enough. I used a sous vide cooker and a plastic storage container wrapped in towels.

Rayndalf

22 Jan 2021, 10:23

The diodes were simple enough, but how did you open the switches without damaging anything? I can't even seperate the individual switches that formed the right column.
Attachments
20210122_031512.jpg
20210122_031512.jpg (2.47 MiB) Viewed 807 times

jsheradin

23 Jan 2021, 19:07

Rayndalf wrote:
22 Jan 2021, 10:23
The diodes were simple enough, but how did you open the switches without damaging anything? I can't even seperate the individual switches that formed the right column.
I left the 'waffle' assembly together and just pulled the sliders. There's two little clips on the bottom that hold in each one. I used some small needle-nose pliers to squeeze them together and they popped right out.

Here's a pic before I ran everything through an ultrasonic cleaner. That's as far as I tore it down.

Image

Rayndalf

05 Mar 2021, 03:22

jsheradin wrote:
23 Jan 2021, 19:07
Rayndalf wrote:
22 Jan 2021, 10:23
The diodes were simple enough, but how did you open the switches without damaging anything? I can't even seperate the individual switches that formed the right column.
I left the 'waffle' assembly together and just pulled the sliders. There's two little clips on the bottom that hold in each one. I used some small needle-nose pliers to squeeze them together and they popped right out.

Here's a pic before I ran everything through an ultrasonic cleaner. That's as far as I tore it down.

Image
The switches came apart without a hitch, but I'm still out of microcontrollers.
Do I need a Teensy or would a promicro work as well? I've realized I have 10+ boards that need convertors of various kinds so if I can buy a bulk pack of promicros that would save me quite a bit of money.

jsheradin

05 Mar 2021, 14:45

Rayndalf wrote:
05 Mar 2021, 03:22
Spoiler:
jsheradin wrote:
23 Jan 2021, 19:07
Rayndalf wrote:
22 Jan 2021, 10:23
The diodes were simple enough, but how did you open the switches without damaging anything? I can't even seperate the individual switches that formed the right column.
I left the 'waffle' assembly together and just pulled the sliders. There's two little clips on the bottom that hold in each one. I used some small needle-nose pliers to squeeze them together and they popped right out.

Here's a pic before I ran everything through an ultrasonic cleaner. That's as far as I tore it down.

Image
The switches came apart without a hitch, but I'm still out of microcontrollers.
Do I need a Teensy or would a promicro work as well? I've realized I have 10+ boards that need convertors of various kinds so if I can buy a bulk pack of promicros that would save me quite a bit of money.
The PCB layout will only fit a Teensy 2.0 but a Pro Micro will work just fine if you are willing to do some creative wiring/jumpers.

Post Reply

Return to “Workshop”