Tuesday, October 31, 2023

Adjusted backspace function on 1053, built testbed to check out the printer under power

BACKSPACE FUNCTION ADJUSTMENTS

The way that backspace works on the Selectric is to implement a second rack just below the escapement rack - this one also with teeth but slanted in the other direction. A spring loaded pawl from the carrier will engage in the rack but just pops out of one spot and into the next as the carrier does its normal rightward spacing. When the rack itself is slid backwards, it grabs the pawl and pushes the carrier backwards. The escapement pawl will pop out of its rack and enter the previous column's position, completing the backspace operation. 

There are only two adjustments for the backspace mechanism, one of which sets up the proper play in the system while the second limits the maximum movement of the backspace rack. If the limit is too large, the carrier might hop more than one column back. If the play is too tight, wear can develop on the mechanism during normal forward movement of the carrier. I adjusted both of these. The main difficulty in making these adjustments is limited visibility, with the backspace pawl hidden below the escapement pawl, the tab pawl/latch and the tab gang clear bracket. 

TESTBED SET UP TO ENSURE THAT FUNCTIONS WORK PROPERLY WITH THE MOTOR

So far my adjustments have been tested by manually cranking the main shaft of the typewriter. Some operations such as backspace don't work well with manual cranking; the need the extra momentum given by the rapid rotation of the shaft under motor power. Other functions appear to work properly with me pushing on a solenoid armature using a screwdriver. The most accurate test is to switch on the motor of the 1053 and to drive the functions using the solenoids and front panel pushbuttons. 

The solenoid is powered by 48V DC and one end is pulled to ground to cause the solenoid to trip. These activations should be relatively short, less than the time of one print cycle. Since the typewriter can operate at a maximum of 15.5 characters per second, this indicates around 60 milliseconds per cycle is consume. 

I decided to fire the solenoids for about half that, just to ensure that I don't request more than on space or character to print by holding the activation too long. To do this, I set up a testbed I can use to selectively fire solenoids during this phase of the testing. I will make use of a 48V power supply and a relay to switch the 48V feed to the typewriter on for only 30 milliseconds at a time. 

I set up a 555 timer with a button to produce the single 30 ms pulse, inverted it to match the particular relay board I have, and used that to control the duration of solenoid activation. This means that I need only connect a line to ground on the desired solenoid connection to the typewriter and push my button to request that function. 

I will begin with the operations that I feel are in the best shape - space, tab, index, backspace and carrier return. I will also test the upshift/downshift which spins the ball to the upper or lower case side, and test the color selection solenoids that would cause the red or black half of the ribbon to be struck by the typeball. 

I still don't have the ball rotation getting fully to the +5 and -5 positions, so I will not be powering any character typing until I think the issue is sorted out, just to be safe. 

Saturday, October 28, 2023

Oops on 1053 adjustment but fixed several others plus read another two boxes of 1620 cards for a different collector

MY ERROR WHEN I ADJUSTED THE PRINT ESCAPEMENT CAM

In a previous post, I found a cam on the filter shaft whose position appeared to be seriously out of phase. During a print cycle, the machine rotates a cam which trips the escapement mechanism to move the carrier one column to the right. It must happen after the printing has completed, thus the timing of the cam is important. 

A filter shaft is geared to turn at the same time as the shaft for the carrier, both of which are turned by the main operational shaft when the print clutch has been tripped. The carrier shaft will lock the ball in its tilt and rotate position, swing it forward with appropriate velocity and return it. This shaft also lifts the ribbon so that it is in between the type ball and the paper on the platen. The filter shaft is used to release the keyboard on typewriters, as well as triggering the print escapement.

The challenge in following the maintenance documentation is the enormous variety in selectric mechanisms, even when it is a print only device like the 1053 on the IBM 1130 console. The 1053 is also used as part of the 1052 operator console for a S/360 mainframe, but its implementation is very different. Other 1053 are used as output log printers on mainframe systems, having their own implementations.

As one example of the variety of implementations, just considering the print only devices, consider the tab function. The 1053 on the IBM 1130 does have tab settings and a tab movement function, but the other print only 1053 such as the mainframe models do not include any tab oriented hardware. 

Because of this, the diagrams and procedures are not highly specific to the model you are repairing and as  a result mistakes are easy to make. I saw a 1053 document that showed the print escapement cam at the side of the machine on the far end of the filter shaft. I have a cam on the side and that is what I adjusted. 

Well, it turns out that the print escapement cam is inside, not as far along the filter shaft, while the cam I was adjusting provides a function that is not used on other selectric models. The outside cam is a lock which stops the shift mechanism from rotating the ball between upper case and lower case sides, during a print cycle. Thus the low point of the cam is when the interlock is in place, freezing the shift mechanism. On the print escapement cam, the low point of the cam is when it is not driving an escapement. 

Thus, at the time that a print cycle is not happening, the idle time, the escapement cam should be at its low point so as to not trigger movement, while the shift interlock cam should be at its high point to release the interlock permitting the operator to shift back and forth between UC and LC. I corrected the adjustment for shift interlock, undoing my error.

WORKING ON OTHER 1053 ADJUSTMENTS

I also got the index (move down a line) and carrier return mechanisms to trigger properly. There are five functions that can be triggered, releasing a clutch on the operational shaft allowing motor power to drive the function. These are space, tab, carrier return, index and backspace. The 1130's console has three buttons on the front which can trigger the tab, space and CR functions.

In addition, five solenoids are implemented to trigger each of the five functions. The only way to move the paper up is to trigger index with the solenoid; similarly only the solenoid can trigger a backspace to move one column to the left of the current position. 

I verified that all of these solenoids are triggering the clutches to drive the function. I adjusted most of them to work properly. I am still fine tuning the backspace and the space functions while the remainder are in good shape already. 

ANOTHER PACKAGE, ANOTHER QUICK SESSION READING CARDS

Another collector had mailed two boxes of punched cards to me containing various historical programs for the IBM 1620 computer. It only took a fraction of an hour to unbox these and read all 4000 cards into separate files for each logical deck. 

Thursday, October 26, 2023

Reading and archiving a box of cards for an IBM 1620

ALWAYS AVAILABLE TO READ PUNCHED CARD DECKS FOR OTHERS

I have two Documation card readers with interfaces that allows me to read punched cards and create PC files with the contents. My best one reads at 1000 cards per minute, which means that even with reloading the hopper it takes about three minutes to read an entire box (2000 cards are in a box). I built an interface into the reader with a USB cable that plugs into other computers. Programs on the computer can issue a read command and collect the 12 rows x 80 columns of data as the card is read. 

Reader processing card decks to a capture program on PC

I read the decks twice and digitally compare the contents to check for errors that might have occurred during reading. I also ask the collector or other expert on the computer system to work with the digitized deck to check for the very unlikely chance that the same error happens with the same card in the deck on both runs through the reader. 

Because computer systems often use multiple encodings on punched cards, I read all decks in a lossless binary format that records the holes in all twelve rows for each card column, rather than converting to the Hollerith characters that are the most common encoding. 

For example, the IBM 1130 does use Hollerith for most cards, but it has several binary formats that can be employed. In addition, data cards for applications are free to set up any encoding they wish, thus a card may intermix Hollerith characters in some columns with other encodings in different columns. 

One method uses twelve rows of one column plus four of the second column for a single 16 bit binary word, then continues with the remaining eight bits in the second column plus the first eight rows of the third column for a second 1130 word. Finally, the last four rows of the third column and all twelve rows of the fourth column are combined to form the third 1130 word. This uses four columns per three 1130 words. Another format uses two columns per 1130 word, wasting four rows of the pair thus is a less dense storage format.  

By recording the cards in the lossless format digitally, the recipient is free to interpret any column of any card as justified. Once can interpret as Hollerith and then store an ASCII equivalent character in a file. Some of the glyphs used with IBM systems don't exist in ASCII but there are Unicode representations that can be used, as long as the programs that manipulate the files are Unicode capable. On the 1130, for instance, IBM uses the cents sign and a logical not character, which do not exist in ASCII. Record, group and word marks are other glyphs that were used in older IBM systems which do not exist in ASCII. 

IBM 1620 ENTHUSIAST HAD DECKS INCLUDING SNOBOL AND ALGOL

A box arrived with decks which included the Algol and the Snobol languages for the 1620 system. These cards mostly had sequence numbers in the last columns of each card which serves as yet another validation of correct sequencing and accurate reading. We did discovers a few sections that were misplaced in the box, for example a 42 card program that was stuck in the middle of another longer deck, but that could be corrected digitally. 

BOXES FROM ANOTHER COLLECTOR COMING NEXT WEEK

A different collector is sending me two boxes, which contain quite a few decks of various sizes. When those arrive I will read them and send them back to the collector. Often the digitized files are also shared with other enthusiasts allowing them to run the newly captures programs on simulated computers or their own restored mainframes. 

Wednesday, October 25, 2023

1053 has many adjustments quite far from correct, working through each section of the machine

PRINT ESCAPEMENT CAM VERY FAR OUT OF TIME

There is a cam that rotates for each print cycle, so that at the end of typing a character on the paper, the carrier will advance one column. The cam should have been adjusted so that the linkage is at the low point on the cam when not printing - this ensures the correct timing between typing a character and spacing afterwards. 

When I looked at the machine, the cam was almost halfway out of phase, pulling on the escapement link while at rest. This would space while the typeball was flying, producing smeared and improperly spaced characters on the paper. I rotated the cam to its proper setting, thus achieving the proper spacing at the end of each print cycle.

Rest position at low point of the escapement cam

OPERATIONAL CAM LINK TO ACTIVATE TAB INCORRECT

When the tab button is pressed, it releases a clutch on the main shaft which spins the clutch one half turn. The clutch pulls on a turnbuckle link which rotates the tab bar. The bar should latch the escapement lever out of the escapement rack to start the carrier moving to the right. However, if the bar isn't rotated enough then the mechanism does not latch. The symptom is a short movement but not sustained tab movement. 

Since the carrier was only moving a couple of columns regardless of the tab settings, I began checking the mechanism that rotates the tab bar. This is spring loaded to sit at a stop position and be rotated when the link pulls. I saw that the spring was unable to pull the mechanism all the way up to the stop position and the result was inadequate rotation of the tab bar.

I realized that the turnbuckle link was way too short. Once I adjusted it, starting a tab operation fully latches the escapement and the carrier moves to the right until it encounters a tab disk in the set position, which releases the escapement latch. 

Spring pulls tab lever fully up to the stop position

Turnbuckle link that was lengthened

SPACE ESCAPEMENT JUMPING MULTIPLE COLUMNS

The 1053 has two different mechanisms that activate the same escapement bar. One is driven by the print cycle cam as discussed above, while the other is activated when the clutch on the main shaft is triggered to drive a space operation. The Space button on the front panel and the space solenoid both use this second escapement method.

Unfortunately, the carrier moves about three columns every time this is activated, rather than the single column that occurs with the print escapement. I had to diagnose the cause for this - obviously some adjustment - and fix it. 

Monday, October 23, 2023

Rotate spring tension set correctly, tab setting sliders loosened as I continue to work on the 1053 console printer

ROTATE SPRING TENSION CORRECTED

I managed to find a solution to the conflict between lights, my eyes and the tools, so that I could see and maneuver the rotate spring and its detent. I relieved tension on the spring and then carefully added it back in until I got to the desired range of rotate tape tension. 

The tension is measured by setting up the machine with the type element (ball) on the lower case side, commanding a character with a -5 rotation and hand cranking this until the rotate pulley on the right is just about to hit a stop pad that limits the pulley lever arm travel. With this condition set up, an IBM spring scale pushes against the pulley lever arm and measures the force required to move the arm outwards. 

This force is the target spring tension of 1 7/8 to 2 1/2 pounds. I found a setting that produced 2 1/4 pounds of force, right in the desired range. To verify this is good, we also check at +5 rotate character from the upper case side of the ball.

Tripping a solenoid on the side of the machine causes the pulley lever arm to move outwards to the right, which pulls the ball around so that the upper case side faces the platen and paper. The +5 rotate character was triggered and hand cranked to the point where I could again measure the force on the pulley lever arm. We still had 2 1/4 pounds of force, confirming that the rotate tension setting is correct. 

TAB SETTING SLIDER CORROSION

The tab setting sliders are discs that fit inside slits on the long tab cylinder, one slit per column that the carrier can reach. The disc rotates so that the two projections which stick outside of the tab cylinder diameter are either rotated backwards to the rear of the typewriter or partly forward. The forward position puts a projection right in line with the escapement mechanism on the carrier. The carrier strikes the projection and releases the latched tab condition allowing the escapement pawl to enter the rack and stop the carrier at this position. 

Quite a bit of corrosion has occurred inside the slits and on the faces of the discs, which froze some in place and made them all very hard to rotate. Using my clock oil and patiently moving each one back and forth many times, I got most of them to move freely. I still have a few that are stiff but with time and more manipulation I expect them to all work properly.

I verified the gang clear function, where as the carrier is pulled right to left during a carrier return operation, if the Tab Clear lever is activated simultaneously, a wedge on the front of the carrier will force up any tab discs that are rotated into the 'set' position. This clears all tabs in one operation, instead of requiring the user to repetitively tab to each set position and then move the Tab Clear lever. 

ADJUSTING STOPS ON WHIFFLETREE LINKAGES

IBM implemented a mechanism called Whiffletree Linkage to select the amount of movement of the tilt and the rotate tapes required to move the ball to print the intended character  The heart of this mechanism is different lengths from pivot points to the activation levers for each 'bit' of selection. 

Tilt is easier to explain since it has only four possible positions. A horizontal bar has two levers dangling from its ends. One is twice as far from the horizontal bar pivot as the other lever. Thus, pulling down on the far lever produces one unit of movement, pulling down on the nearer lever creates exactly twice as much movement of the tape, and pulling both down adds together the movement to pull the tape three times as much as the far lever alone. 

https://www.youtube.com/watch?v=G_SC7oWL78A

Rotate requires five positions in one direction and five positions in the other plus no rotation, thus eleven possible rotary positions of the ball. The mechanism has a negative rotation link which reverses the direction of the movement plus four levers to select one of the six positions in a direction from no movement to rotating five positions. 

As the typewriter sits right now, it rotates the ball less than one character position so that a +5 or -5 character request only produces a movement to the +4 or -4 character on the actual ball. I will be working through the adjustments that must be made, in the proper sequence, to cause the ball to rotate properly.

The first sets of adjustments are setting the rotate spring tension and setting the left side rotate pulley lever to be exactly vertical when the ball is set to the zero rotation position. Immediately afterwards, I had to deal with the failure of the vertically hanging levers from the Whiffletree to restore themselves under the bail that will pull the levers which select the amount of tilt or rotate movement. 

I don't know if the improper position of the levers is part of the inadequate rotation of the ball but the adjustment needs to be made so that they do restore. When a lever is selected by the solenoid, it is pulled away from the bail so that that lever is NOT pulled down. It should restore under the bail so that the next request for a character where the solenoid is not driven should have the lever pulled down. Failure to restore may result in mis-selection of print characters at speed, thus this must be corrected.

Metal tabs above the top pivot of the vertical levers are bent downwards until the bottom end of the lever will restore under the bail. These are called stops. There is no direct way to reach and bend those tabs while the Whiffletree mechanism is in place, but I don't want to disassemble everything. I will figure out a method to adjust the stops and do it. 

CR DRUM SLIPPING AND RELEASING SOME CORD TENSION

I noticed that at the end of the day today, the transport pulley has moved outwards away from the scribed line, indicating insufficient tab cord tension. It seems obvious that the CR drum screws are not holding the drum on the shaft sufficiently, I was worried about the amount of torque I had to apply last time and it still didn't hold. 

My guess is that sludge is in the threads of the drum hole and on the screws. I will try to clean them out thoroughly and reinstall the drum. I may have to use some Loctite Threadlocker to hold them in place so they don't loosen up on their own, but only when I am certain that the screws are holding the drum firmly to the shaft. 


Sunday, October 22, 2023

Tab and carrier return cords installed at proper tension

DRUM ADJUSTED UNTIL THE TRANSPORT PULLEY POSITION WAS AT LINE

It took a few more iterations than I expected, in part because the drum would slip if I didn't really tighten the screws down quite firmly. It felt as if I was on the edge of material failure on the screw when I attained the final tightness that left the transport pulley at the target position .

Left edge of slider right on scribed line

THE TAB POSITION SLIDERS WERE GUMMED SOLIDLY IN PLACE

Tab positions are controlled by a long cylinder running from left to right behind the carrier rails, with a rotating slider for each of the columns across the page. Moving the slider in one direction allowed the carrier to sail past it unimpeded during a tab operation, while placing the slider in the other direction would trip a latch on the carrier to stop the movement at this column. 

Pushing the Tab Set or Tab Clear button on a typewriter (an up/down toggle switch on the 1053), causes the slider at the current column position to be moved to either the set or the clear position. As a convenience, when doing a carrier return, if the Tab Clear is held down then the carrier resets the sliders on all columns as it returns past them. 

These sliders were stuck in place by solidified lubricants, requiring me to flush them out with clock oil and work the sliders back and forth until they moved freely. With that done, the tab operation could work as intended, moving the carrier right to the next column that had its slider set. 

Tab sliders move to set or clear positions

ESCAPEMENT MECHANISM CHECKED FOR PROPER OPERATION

The rear of the carrier has a set of levers that are connected in a complex way. Two of them have pawls that engage in the teeth of their associated racks.  Another will force both of the pawls out during the carrier return and the tab movements. 

The space rack is what holds the carrier at its current column against the pressure of the mainspring and tab cord seeking to pull it rightward. The escapement lever can pivot its pawl out of the rack, the carrier begins moving, and then a spring pulls the pawl back into the next tooth of the rack. This moves the carrier a single column to the right. 

This lever is moved by a long bar running just behind the carrier, which pivots during the end of the a character print cycle to cause a one column advance. It is also pivoted by the operation of one of the two operation clutches, when the space button is pushed on the front of the 1053 or when the space solenoid is activated. The button or solenoid trips a clutch, rotating a cam one half rotation during which the cam moves levers that, in the case of a space function, pivots that bar that moves the escapement lever.

A second rack is offset a bit from the first and has pawls on the backspace lever that insert into the rack. If the backspace solenoid is activated, it trips the same clutch as was used for space, but the cam moves levers that engage the backspace pawl and drive the carrier back one column. The escapement pawl pops out of its rack and into the tooth one position behind. 

Finally, the escapement and backspace pawls are held out of the teeth of their racks during the long movement operations, tab or return. Another pivoting bar behind the carrier moves those levers out of the way. In the case of a tab operation, whose distance is determined only the the sliders that are in the set position, some levers and springs hold the pawls locked out of the teeth but when a set slider strikes a small projection on the carrier it releases the pawls to lock the carrier at that position. 

The escapement and backspace pawls plus tab latch levers

Some success with tab and carrier return cord installation

USING THE NEW METHOD OF ROTATING THE CARRIER RETURN DRUM A BIT

With the carrier return function engaged so that the drum shaft won't turn on its own, the two screws holding the CR drum to the shaft are loosened and the drum rotated enough to add a bit less than a half an inch to the net cord length. The cord would then fit over the spring loaded pulley (transport pulley) and the pulley sits at the scribed line  on the assembly to indicate proper tension. 

LOOSENED AND THEN REMOVED SCREWS BUT COULDN'T BUDGE DRUM

I loosened the two screws but the drum wouldn't turn on the shaft with hand pressure. I backed out the screws further and eventually they came fully out of the drum yet it wouldn't budge. 

Drum with screws removed

Removed screws

TOOK APART DONOR MACHINE TO CHECK THE SHAFT FOR FLAT SPOTS

The from (tab) drum uses a single setscrew that tightens against a flat spot on the common shaft, but the presence of two screws on the CR drum suggested it did not have a flat spot. However, with no movement of the drum, I considered the possibility that my speculation was wrong. 

I therefore removed the entire shaft and drum assembly from the parts donor Selectric I had acquired and got the drum off to examine the shaft. The drum didn't slide off but when I used vise grips to turn it relative to the shaft, I began to turn. Apparently it was just grime that had hardened to stop the drum from turning. 

Studying shaft from donor typewriter

USING TOOLS TO START THE CR DRUM ROTATING

Once I was comfortable that this should and would rotate freely around the shaft, I carefully applied some tools to the metal hub of the CR drum and worked on moving the drum. I did get it to move, slowly at first and then with less pressure as I increased the distance it had moved. 

This allowed me to move the carrier and even up the pressure on the tab and CR cords. The cord could then be pulled over the transport (spring loaded) pulley with the assembly just about at the scribed line. I tried moving the carrier in both carrier return and tab directions with hand cranking and it appeared to be working correctly. Clearly this method is the key to getting everything perfect.

LENGTH OF CORDS AND TENSION IS NOT PERFECT YET

Because I hadn't replaced and tightened the screws while I was checking the cord tension and positioning, the force of movement rotated the CR drum a bit more resulting in the transport pulley sitting too far out from the frame. There is not quite enough tension now.

Cord is a bit too loose

All this means, however, is that I have to move the CR drum back in the other direction, tighten down the screws and then verify the tension. It may need a bit of iteration but I am certain to get the tension just right using the new method. That will be my next task when I return to the workshop, then I can move on to setting the rotate spring to its proper tension.