IBM 029 keypunch keyboard repair and conversion

listofoptions

11 Jun 2019, 05:53

ok so this will be my first really long and drawn out post on this forum, been lurking and poking in various topics every now and again.
right so with that out of the way:

a little over a year ago i snagged one of these bad boys:
Image

mighty dirty too, there was a mat or a felt of hair (thankfully no arsenic)
Image

so first off i had to take it down to the core components. which are these? here's a diagram from righto (ken sherriff's blog)
Image

to start off i removed all the keys, cleaned them, removed the keystem alignment plate and sanded it and spray painted it as well. i also removed the permutation bails (to gain access to the permutation bars), and alignment comb for the permutation bars. here is the plate below the keystem alignment plate that was so badly rusted
Image
the rods shown are the latch pull bars, and keystem cams. these have a hook at the end that catches into the latching mechanism in the circled bit of the diagram. to align the latch pull bars, you need a hook, and you have to catch the bit of bent metal at the back of the latch bar and pull it onto the small notch in the latch, and in front of the permutation bar. (the bit in the circled detail in the mechanism schematic). each switch latch pull bar has to be aligned by an alignment comb and alignment spring (these are the u and c shaped bits on the top of the pull bar). the keystem alignment plate is installed on top a plate that also has the permutation bar alignment plate bolted into it. I probably didnt need to remove the permutation alignment comb, but i didnt really know how to realign the pull bars into the correct place until after i had removed it. but either way the latch pull bars get misaligned when the alignment comb and spring are removed (they are attached to the keystem alignment plate).
here are the misaligned latch pull bars
Image

and here are the permutation bars with the permutation bar alignment comb removed
Image

the above image doesnt show the process of putting the key stems themselves back into the cam of the latch pull bar. you have to pull on the latch pull bar from behind while inserting the keystem, to align the cam with its slot. the spring is held by a bit of floss through the hole at the bottom of the stem. you pull on the pull bar and move the stem up and down until it falls into place. super tedious. then once the stem is in place with the cam, you hold down the stem, realign the pull bar into its notch; and insert a bit of metal into the bottom hole.
Image
then you thread a bit of 50lb test fishing wire (HEY! its all i had!) through the stem hole, to make sure its held down. that fishing wire prevents the switch from literally just dicking off!

so after a great bit of shenanigans, and another set of hands (all those springs at the top of the permutation bars are exceptionally strong! you have to push them down, and align the permutation bars through the comb at the top at the same time, its super frustrating!)
Image
the sharp eyed will notice a small long bent gusset at the top of the permutation bar alignment comb, that has to be tuned to have a 0.005 inch space between it and the permutation bars. you definitely need gauge slips (i forget the word).

to install the permutation bails again, you just move one of the permutation contactors out of the way (they're held on my two screws at the top and bottom of the gusset that holds the contactors onto the frame) and insert the bails in order from bottom to top Image

Image
after installing the bails you need to bend and adjust the contactors so that the have the proper clearance. this is the set of gauge slips (i forget the word) that i used.
Image
if i recall correctly the space is 0.025 inches (aka 25 mil or 25 thou).
here's one side tuned, and I'm bending the contacts on the other side to get it consistent
Image
i also liberally cleaned with a bit of 4k grit sandpaper and some deoxit all the permutation contactors, as well as latch contacts (those are the contacts at the very bottom of the mechanism). the latch contacts also had a similar specification for median distance between contacts when open.

each switch also has rubber bumpers on it, and its stabilizers to prevent it from over traveling the cam out of the keystem. to install the caps, you need another bit of bent metal to keep the keytem from camming out and away from the latch pull bar cam,
Image
you then push the cap onto the stem and PRESTO! you're done! with cleaning at least.....



so this begs the question ....how the flying ()*#&$)(*&#$%^%!@#(*)$ does this thing work? ..... oh boy.......these are the connectors
Image
these are called SMS connectors, and where used on the IBM 7030 and later on the 1401 https://en.wikipedia.org/wiki/IBM_Stan ... lar_System
so i need an SMS socket, but more on that later.

so how does this thing work? well initially when the user presses a key this pulls on the cam attached to the latch pull bar, this pulls on part of the permutation mechanism, simultaneously pulling the permutation bar down (each key, save a few have a permutation bar associated to them), and pulling on the latch mechanism. when the latch is pulled forward (towards the user) by the latch pull bar its pulled into a track of flat metal discs called interposer discs. the distance between the discs is such that only one latch can be placed between them at a time (exceptions are that some switches can be used while others are down) this prevents more than one key roll over. when a permutation bar is pulled down, a latch contact is pressed, and some of the tabs on the permutation bails have tabs corresponding to a notch on that particular bar. the tabs get caught in this notch, rotate the bar upwards, completing a circuit on certain permutation contactors.

ok so thats how the mechanism works mechanically however, electrically its a bit busier.

so i still haven't covered how the latch gets undone. that's right to type on this keyboard the computer has to enable you to type after every keypress. the way that's done is the keypunch (yeah i know i called it computer, and that's stretching things a bit, but you can program the dang thing, and I'm sure its Turing complete so sue me!) allows a voltage of 48v at just under an amp to flow through the bail restoring magnets, this in turn causes the restoring bail to kick upwards and knock the latches and permutation bars up and out of the interposer block, breaking the latch contact and permutation contact circuits.
so what does the output of the thing look like? well believe it or not, it outputs Hollerith code! well mostly anyway.

here's the schematics for the alpha-numeric (IBM being well IBM called it the alphameric portion) portion of the keyboard.
Image

the way you read the arrow-ed tag, is by looking at the schematic page number its column and its row. for example look at the first arrow, remember the A04B bit for now, that will come back when we deal with SMS; but for now we're just gonna use it to help us in finding wires, it reads (12 int, sect 1A) we look at our page and see at the top we are in section 4, and over on the left we see we are in row A. going back a page (in the manual) we look for section 1, row A, 12 int and low and behold we see an arrow that says A04B
Image
following that wire backwards we see there's a switch that says 12 next to it. that refers to the hole positions in a punched card (borrowing from this site http://homepage.divms.uiowa.edu/~jones/cards/codes.html)

Code: Select all

029  &-0123456789ABCDEFGHIJKLMNOPQR/STUVWXYZ:#@'="¢.<(+|!$*);¬ ,%_>?
IBME ¹-0123456789ABCDEFGHIJKLMNOPQR/STUVWXYZ:#²'="].<(+|[$*);¬³,%_>?
EBCD &-0123456789ABCDEFGHIJKLMNOPQR/STUVWXYZ:#@'="[.<(+|]$*);^\,%_>?
     ________________________________________________________________
    /&-0123456789ABCDEFGHIJKLMNOPQR/STUVWXYZb#@'>V?.¤[<§!$*];^±,%v\¶
12 / O           OOOOOOOOO                        OOOOOO
11|   O                   OOOOOOOOO                     OOOOOO
 0|    O                           OOOOOOOOO                  OOOOOO
 1|     O        O        O        O
 2|      O        O        O        O       O     O     O     O
 3|       O        O        O        O       O     O     O     O
 4|        O        O        O        O       O     O     O     O
 5|         O        O        O        O       O     O     O     O
 6|          O        O        O        O       O     O     O     O
 7|           O        O        O        O       O     O     O     O
 8|            O        O        O        O OOOOOOOOOOOOOOOOOOOOOOOO
 9|             O        O        O        O
  |__________________________________________________________________
if you are really observant you should notice that there's no way to directly make an 8 punch! its the only punch position that is composed of two portions of the switch matrix, we need to out controller to look at A02F, and A04R; but i haven't told you what those mean yet have i?

Image

Image

so the A in A02F refers to the card in column A, at row 2, who's pin is enumerated F. we don't use the first code, that specifies module, as in the 029, there's only one module

so now that that's out of the way, we can begin tracing the rest of the switches on the keyboard, and its front panel. I'll spare you the details, and just pass along the final converter schematic. the manual can be gotten online, but if you cant find it give me a DM and I'll send you a link from my dropbox! in case you're wondering everything to the left of the plugs in the schematic is the keyboard side of the connector, that doesn't really exist in the PCB. I have not yet finished building my test converter, i need to solder it up, and program it.

oh and incase you're wondering this thing can be really really confusing :D
Image

OH and just one really quick asside: I have tested my machine at a local cmputer museum, by swapping out their keyboard for mine. at first we couldnt get the thing to print in alphabetic vs numeric, but then we realised that some of the microswitches under the keyboard where not in the right place. after fixing that it worked quite well! i even punched some cards on my own keyboard!
Attachments
converter.pdf
(66.71 KiB) Downloaded 229 times

listofoptions

11 Jun 2019, 05:57

oh and the converter is available (untested!) on my github at https://github.com/listofoptions/IBM-02 ... -converter

User avatar
Monster-Toys

11 Jun 2019, 09:57

:shock: This is super cool 8-)

andrewjoy

13 Jun 2019, 15:18

Very impressive work mate!

Old IBM documentation is just outstanding! Some of it is so good i am convinced you could build the machine just from the books.

If only that was still done today!

User avatar
snacksthecat
✶✶✶✶

13 Jun 2019, 16:45

Punch card keyboards are the new beamspring! Get 'em while they're hot!

Seriously though, this is some really impressive work. I only had time to skim right now but I'll be reading this on the train ride home today for sure.

listofoptions

13 Jun 2019, 20:33

snacksthecat wrote:
13 Jun 2019, 16:45
Punch card keyboards are the new beamspring! Get 'em while they're hot!

Seriously though, this is some really impressive work. I only had time to skim right now but I'll be reading this on the train ride home today for sure.

cool! let me know if you found anything confusing!

listofoptions

28 Jun 2019, 23:49

ok so some updates, i did manage to get a converter made, and tested, but i had the footprint for the power supply wrong; and managed to wire the fly-back diode wrong (well and the pads of the fly-back might have been too close, but i didn't see any sparking), so had to bodge a crap-load, and ended up frying the power supply and the teensy 2.0++ i was using as the controller. ive updated the controller schematic with these fixes, and had engicoder review the board for me as a reassurance. hoping this is the final proto run, getting enough for 5 controllers; so if you have one of these boards and a sms card block you'll be set, but without it its much harder. that being said, i think I'm one of 3 people on this forum that have a 029 keyboard :P

listofoptions

02 Dec 2019, 16:15

sorry to bump and old thread, but ive almost got the converter built, just need the time to finish it, and program it. in other news i know have a IBM 129! here's some images from the ebay listing!

Image
i have to admit the buttons and dials and toggle switches look pretty hot on this board
Image
Image
the mechanism looks really really similar to that of the 029, so this should be a "quick" restoration
Image
yup older than me by only 18 years! perspective! thats buddy cop movies to layne staley!
Image
the connectors are very very different, its gonna be super hard it seems to find a block like the one i found for the 029
Image
Last edited by listofoptions on 02 Dec 2019, 16:21, edited 1 time in total.

User avatar
snacksthecat
✶✶✶✶

02 Dec 2019, 16:17

I wish I would have nominated this for DTA but it only occurred to me after nominations were closed.

listofoptions

02 Dec 2019, 16:22

woops forgot to put the .jpg in the link otherwise what is mime encoding for right?

User avatar
JP!

02 Dec 2019, 16:27

Whoa this is amazing!

listofoptions

07 Jan 2020, 19:46

forgot to upload stuff when i last cleaned the 129, need to get back to it, its been a bit since i posted anything at all. this is about a month ago now.

so this is the underside of the 129 Image
its pretty much identical to the 029, sans the bails and bail contacts
Imagethis is after unscrewing the keyboard and removing the wiring harness from the keyboard (glad i took pics of what went where and kept the switches attached) i ended up bathing the whole thing in lacquer thinner and scrubbing it with a toothbrush.
Imageso i removed the fishing line holding the keys in place I lifted the key and stem up and out of the way of the bell crank thankfully the rats nets of floof in the keyboard held on to the springs for me. much dusting and cursing and gloves where had to avoid any contagions diseases (probably dead anyway) . did i mention that i flooded the thing in lacquer thinner? because i really did. didn't think to take pics of the cleaned assembly, but i can assure its a LOT better.

User avatar
JP!

18 Jan 2020, 06:30

I'm joining the club as well. :) Hopefully I can begin to understand how these work :o

I can already smell the cigarette smoke from here.
IMG_6200.JPG
IMG_6200.JPG (774.84 KiB) Viewed 6249 times
IMG_6201.JPG
IMG_6201.JPG (898.82 KiB) Viewed 6249 times

John Doe

18 Jan 2020, 08:23

JP! wrote:
18 Jan 2020, 06:30
I'm joining the club as well. :) Hopefully I can begin to understand how these work :o

I can already smell the cigarette smoke from here.
IMG_6200.JPG

IMG_6201.JPG
Nice find, JP!

Is that another one at the left of the pic?

Post Reply

Return to “Workshop”