Bill describes how a whiffletree was used in early calculating devices to do mechanical digital to analog conversion. He shows briefly the device used in an IBM Selectric Typewriter.

Transcript Many early computers used purely mechanical digital-to-analogue converters because of course they didn't have a reliable electronic way to do the conversion. Some were based on a device called a "whiffletree" or sometimes a "whippletree." This is one from an IBM Selectric typewriter, a purely electro-mechanical device, as opposed to an electronic one.

The selectric whiffle tree encodes some seven bits of information, but to see how one works let's look at the simpliest converter: One that encodes two bits of information.

A whiffletree consists of rigid metal bars which are joined with pivots. What it does is the following: It converts a uniform pull on the vertical yellow tabs to four different position of this blue bar. At the end of the blue bar might be a print head, for example, that has four different characters on it.

The key idea here is that you use the same magnitude of "pull" on the tabs everytime: That's the digital part either you have an impluse or you don't! Let's look in detail at how this moves the blue bar to four different heights. That'll take two bits of information.

For that you need to place the blue bar such that its one-third of the horizontal bar's length from the left, and obviously two-thirds from the right.

The first bit is obvious: Its just zero, zero. You don't move the print head at all. That's position zero.

To encode bits 0 1 you keep this pivot fixed and pull this tab with a stroke of length S, say, you move the blue bar a distance of one-third S. You can determine that from using similar triangles. We'll call the distance the blue bar moved "d". That's position one.

To encode bits 1 0 keep the right pivot fixed and pull on the left tab. You can again find the distance that blue bar moved again using similar triangles. Its two-thirds of the stroke length S, or in our notation 2d. We'll call that position two.

To encode bits 1 1 pull both tabs a distance S and you move the blue bar by S units. In our notation that three times "d". And that's the position three.

So now you can see how we convert the binary impulse to the tabs - either nothing or a pull of length S - to a regular motion of the blue bar in steps of distances d.