Cortron (ITW) 55-500216
Posted: 10 Aug 2020, 05:36
This Cortron keyboard was part of a CPT 8000 series word processor from the end of 1979.
It has full-height magnetic valve switches. The key caps were pretty dirty, but the switches themselves are still quite smooth after forty years. Most caps are double-shot, except, for some reason, the MOVE key; perhaps it was a replacement. The PCB, 80-551646, is rev A. The later CPT 8500 used rev C. XMIT got one of them from elecplus a few years ago (scroll down to second from the end). That one has beige keys but otherwise the same layout, except fewer blank keys, which might be replacements here. It also has a beige case, 1.5 inches shorter and made of aluminum. So it weighs maybe half as much. It did, no doubt, look a lot more professional in an office, though. I have a line on one of those and suspect that this conversion effort will work for it, too.
Some of the noticeable things about the keyboard layout and legends may mostly be that it came from an early dedicated word processor.
The PCB has a keyed 26-pin socketed IDC header. This keyboard just has a 26-conductor ribbon cable. But that may not be original and it may have had a DB-25 like the newer model appears to. The strain relief does need a flat cable, though. Only 20 of the pins are actually connected. Tracing the circuit they are:
Fortunately, 28-pin MOS with data and power connections to the specific pins sounds just like the Cortron variant of the Xerox Diablo keyboard. There the chip is called an MM5873. That is also the manufacturer's part number given in HP catalogs for their part 1820-1849, with a vendor of ITW. I don't actually know what HP keyboard that is; the 2645A that has the same switches has its own control logic.
The final confirmation that 80-551276 is MM5873 comes from kfazz's Diablo work where it can be seen in one of their photos, zoomed in here: The Diablo Model 1610/1620 Maintenance Manual is amazingly detailed, even for the time and even compared to the likes of DEC, HP, and IBM. Not only does it have schematics, it even has a drawing showing the conventions for the other drawings. It includes simplfied versions of the data sheets for every chip, leaving out what would be important when designing with it, but keeping what is needed to understand the logic. One of these is for the MM5873.
With power sorted out, I built the converter. In order to work out the signal details, I wired them all up: But it could probably be simpler. I connected the flip-flop logic that monitors key state to D0 to allow for the possibility of handling key press via interrupt. But, in the end, that made the NKRO behavior unnecessarily hard. So, treat the contiguous eight pins 4,17,5,18,6,19,7,20 as a single 8-bit byte read at once, with 7 bits of code and the high bit make vs. break. Of the two inputs to the keyboard, 22 needs to be high and 23 needs to be low. I suspect this is some sort of reset / busy setup, but didn't trace out the remaining details of the circuit. I did try leaving them at high-Z and it only worked for one and a half key presses, so some handshake was wrong.
Unlike the earlier HP effort that did the 12V power separately, this adapter board drives the boost converter off USB power. Together with the Teensy and keyboard TTL, it draws about 315mA total and QMK configures for 500, so that should be fine.
In putting together a default QMK layout, I ignored more of the existing legends than usual to give something more useful.
It is more than 2 ft. long. The case is steel, so the whole weighs 9.5 lbs.It has full-height magnetic valve switches. The key caps were pretty dirty, but the switches themselves are still quite smooth after forty years. Most caps are double-shot, except, for some reason, the MOVE key; perhaps it was a replacement. The PCB, 80-551646, is rev A. The later CPT 8500 used rev C. XMIT got one of them from elecplus a few years ago (scroll down to second from the end). That one has beige keys but otherwise the same layout, except fewer blank keys, which might be replacements here. It also has a beige case, 1.5 inches shorter and made of aluminum. So it weighs maybe half as much. It did, no doubt, look a lot more professional in an office, though. I have a line on one of those and suspect that this conversion effort will work for it, too.
Some of the noticeable things about the keyboard layout and legends may mostly be that it came from an early dedicated word processor.
- There are several distinct areas of special function keys.
- One of the keys has 5 symbols on it, another has 4 symbols; in both cases ! is one of them!
- Another couple keys have 3 symbols.
- The quote key legends are curly-quotes.
- The main typewriter section is tilted back an additional 1.5°.
The PCB has a keyed 26-pin socketed IDC header. This keyboard just has a 26-conductor ribbon cable. But that may not be original and it may have had a DB-25 like the newer model appears to. The strain relief does need a flat cable, though. Only 20 of the pins are actually connected. Tracing the circuit they are:
- ground (5 pins).
- +5V (2 pins).
- some other power (2 pins).
- output from the controller (7 pins).
- 2 more TTL outputs.
- 2 more TTL inputs.
Fortunately, 28-pin MOS with data and power connections to the specific pins sounds just like the Cortron variant of the Xerox Diablo keyboard. There the chip is called an MM5873. That is also the manufacturer's part number given in HP catalogs for their part 1820-1849, with a vendor of ITW. I don't actually know what HP keyboard that is; the 2645A that has the same switches has its own control logic.
The final confirmation that 80-551276 is MM5873 comes from kfazz's Diablo work where it can be seen in one of their photos, zoomed in here: The Diablo Model 1610/1620 Maintenance Manual is amazingly detailed, even for the time and even compared to the likes of DEC, HP, and IBM. Not only does it have schematics, it even has a drawing showing the conventions for the other drawings. It includes simplfied versions of the data sheets for every chip, leaving out what would be important when designing with it, but keeping what is needed to understand the logic. One of these is for the MM5873.
With power sorted out, I built the converter. In order to work out the signal details, I wired them all up: But it could probably be simpler. I connected the flip-flop logic that monitors key state to D0 to allow for the possibility of handling key press via interrupt. But, in the end, that made the NKRO behavior unnecessarily hard. So, treat the contiguous eight pins 4,17,5,18,6,19,7,20 as a single 8-bit byte read at once, with 7 bits of code and the high bit make vs. break. Of the two inputs to the keyboard, 22 needs to be high and 23 needs to be low. I suspect this is some sort of reset / busy setup, but didn't trace out the remaining details of the circuit. I did try leaving them at high-Z and it only worked for one and a half key presses, so some handshake was wrong.
Unlike the earlier HP effort that did the 12V power separately, this adapter board drives the boost converter off USB power. Together with the Teensy and keyboard TTL, it draws about 315mA total and QMK configures for 500, so that should be fine.
In putting together a default QMK layout, I ignored more of the existing legends than usual to give something more useful.