Digi-Comp II is a mechanical computer invented by John Thomas Godfrey and manufactured by Education Science Research (E.S.R., Inc.) in the late 60's. As can be seen in the pictures above, the device consists of a frame (about 14 by 28 inches) propped up at an angle. Computations are performed by balls rolling down channels on the top of and inside the platform through gates. Some gates are fixed switches that merely redirect the ball down a particular channel while others are flip-flops that both redirect the ball and change the state of the flip-flop in the process.
Intended as an aid for teaching computer concepts, the Digi-Comp II can count, perform basic arithmetic, and obtain either the "1's" or '2's" complement of a number. The device can be run in auto mode where the balls are released automatically after each step of an operation until the operation is complete, or in manual mode where the user initiates each step.
There are many very good online references for the Digi-Comp II. Here are a few to get you started:
While the Digi-Comp II is not fully programmable, an earlier offering by E.S.R., the Digi-Comp I, used an assortment of plastic slides, tubes, and bent metal wires to solve simple logic problems. An excellent reproduction of this device was created by Mark Ziemer. In addition Mark has created a very cool virtual Digi-Comp II application. Check them out:
Along with the STL files and instructions for this project, you will find a PDF of the manual that came with the original Digi-Comp II. I brought this file to a local copy center and had them print me the spiral bound booklet you can see above and I'm really happy with the results. Also there is a PDF of the parts and assembly instructions that you will need to complete this Instructable.
This offering is a full size working replica of that Digi-Comp II from 5 decades ago. I have tried to make it as authentic as possible based on the images and technologies that I have available to me. The original top and inside decks for instance were vacuformed plastic attached to pieces of masonite board, and the flip-flops and switches were injection molded. In my replica the decks and pieces are all 3D printed. Also I do not have an original Digi-Comp II to work from. I am indebted again to Jaap Scherphuis (he did the original video you can link to above) for his invaluable assistance in providing me with good quality images. Finally I did modify the design of some of the flip-flops (that are not visible when operating the device) to improve their reliability.
I have created a few videos of my Digi-Comp II Replica in action:
If you are not interested in making a Digi-Comp II from scratch, Evil Mad Scientists sells a beautiful kit version made from plywood. Check it out at Digi-Comp II: First Edition.
I have not seen an original Digi-Comp II available in any of the "vintage" markets for quite a long time, and when they do appear they sell for many hundreds of dollars. As with my other projects Think-a-Dot and The Amazing Dr. Nim my goal in creating this replica is to help raise awareness for this great device and honor the creativity of it's inventor John Thomas Godfrey.
I did not design the Digi-Comp II, I just did the modelling. The real design work happened back in the 60's. Everything I did was modeled using Fusion 360.
Step 1: Print the Parts
There are a fair number of them.
Print Resolution: .2 mm
Infill: 20% for the top and bottom "decks" and 100% for pretty much everything else.
Filament: AMZ3D PLA in Red, White, and Black
Notes: All parts were printed with PLA at .2 mm with no supports unless specified otherwise below. Use the pictures above to determine the colors or choose your own. To create a Digi-Comp II you will need to print the following parts:
- 33 Bearing
- 1 Bottom Deck - There is an STL with the whole Bottom Deck if your print bed is large enough. I have also provided two addition files where the Bottom Deck has been split into two pieces.
- 1 Bottom Deck Support (optional) - If you do print the deck in two pieces you will need to print a Bottom Deck Support to join them back together. Note: It was reported that there were issues slicing this file on Simplify3D so a repaired version was uploaded.
- 14 Individual Display Panels. You can print these all at once if you want. I paused the print at the 2.2 mm mark to switch colors from white to black to highlight the numbers.
- 1 Display 01 Memory 1
- 1 Display 01 Memory 2
- 1 Display 01 Memory 4
- 1 Display 01 Memory 8
- 1 Display 0101 MQ 1
- 1 Display 0101 MQ 2
- 1 Display 0101 MQ 4
- 1 Display 10 Accumulator 1
- 1 Display 10 Accumulator 2
- 1 Display 10 Accumulator 4
- 1 Display 10 Accumulator 8
- 1 Display 10 Accumulator 16
- 1 Display 10 Accumulator 32
- 1 Display 10 Accumulator 64
Step 2: Get the Additional Materials You Will Need
In addition to the printed parts you will need the following:
- 1 - 2 ft by 4 ft sheet of 1/4 inch plywood.
- 1 - 8 ft length of 1 inch x 2 inch lumber (3/4 by 1 1/2 inch actual).
- 13 - 7.25 mm steel balls (7 mm or 9/32 inch will do). These are not required but I have found that when used they improve the reliability of the machine. I got these by mistake when I ordered 6 mm balls so I don't know how hard they are to source. If anyone ends up getting a size between say 6 mm and 7.25 mm let me know and I will post additional versions of the STL files for the parts that use them.
- 1 - 3 ft length of 3/8 inch wood dowel.
- About 12 ft of 1.2 mm (3/64 inch) piano (music) wire.
- 4 - 1/8 inch by 1 1/4 inch bolts with 8 nuts.
- 4 - Number 6 by 3/4 inch wood screws.
- Some 1 inch finishing nails or brads.
- A dozen or so 1/2 inch steel balls. This version of Digi-Comp II has been optimized to work with 1/2 inch steel balls,
Step 3: Build the Base
Digi-Comp II is constructed on and in a wooden box or base approximately 14 by 28 inches in size. Start by cutting the 2 foot by 4 foot piece of 1/4 inch plywood as follows
- 2 - 2 inch by 48 inch strips from the long side of the board. These will be used to create a nice edge for the base.
- 1 - 13.85 inch by 28 inch piece from the rest of the plywood. This supports the main "decks" of the device.
Use the 1 1/2 by 3/4 inch lumber to create a 13.85 by 28 inch "frame" for the board you just cut. When done this frame should be 13.85 by 28 inches by 1 1/2 inches tall. Attach the plywood piece to the frame.
Assemble the Top Deck pieces on top of the base that you just built but don't glue them down just yet. I used masking tape to hold them together and to the base. Be sure that you get the pieces in the right spots. You can use the last picture above as a reference. When the pieces are secure, use a pencil to outline all of the openings from the Top Deck onto the plywood. Don't forget the four small holes that will be used to attach the lower deck.
Remove the Top Deck pieces. It's now time to cut out the areas that were just marked. I used a 5/8 inch bit to drill out all of the half circle and full circle parts plus the ends of the ball return slot. It's OK if the holes are a little bigger than the marked areas. The four small holes were drilled with a 1/8 inch bit. Finally a jig saw was used to clear out the rest of the ball return area. Lay the Top Deck pieces back on and make sure that the holes you just made line up with the openings in the deck. Use a file to remove any wood that sticks into the deck opening spaces.
When I was finished I gave the top a light sanding and painted it white. This was not strictly necessary but I noticed that the wood grain showed through the Top Deck pieces a bit since the bottom layer is so thin. You can see the finished basic base box in the first picture above.
Next I painted the 2 inch plywood strips that were cut above in a dark blue. Both sides and the top edge of the strips were given a couple of coats of paint. When dry I used these to frame the box. These should end up sticking about 1/4 inch above the top of the box forming a nice lip all around as in the third picture above. The second picture above shows a corner from the back of the base with the top and frame attached.
Finally the Top Deck pieces are glued onto the finished base. Before gluing them down be sure that all the holes align perfectly. When you are done, the base should look something like the last picture above. Note that in this picture I have already added some of the pieces and the feet to the base, but you hopefully get the idea.
Step 4: Bend Some Wire
This might be the hardest part of the build. The various pivoting pieces on a Digi-Comp II are attached to the Top Deck with small springs. You can see an example of one above along with the Spring Template that you will find among the STL files. In all you need 33 of these! The template is based on the original Digi-Comp II spring. You will notice that I did a square top rather than rounded, which was much easier to do and does not make any difference in the operation of the device.
Use the 1.2 mm piano wire for these. What greatly helped me was being able to use a wire bending jig that I put together when I built Mark Ziemer's Digi-Comp I replica (see the second photo above). It was based on the one shown in this video: DIY 3D Printed Steel Wire Bender Tool. The STL files for the jig and base are included below.
In addition you will need to bend an Actuator Wire. This is used to connect the Start Switch to the Release Balance. The dimensions are shown above in the last picture (which is obviously not to scale). My suggestion would be to do all the bends except the last 50 mm one and leave a little extra wire in the process. When you get to the point of connecting the Actuator Wire, attach the wire to the Release Balance then measure the precise distance to your Start Switch.
Step 5: Prepare the Bottom Deck
If you printed the Bottom Deck in two parts, then you have to use the Bottom Deck Support to join them back together as in the first picture above of the bottom. I used some ultra gel super glue which worked well. When joined the top of the Bottom Deck should look like the second picture.
When you print the Return Guide you will also print a return guide holder and a return guide holder tab. Push the end of the return guide holder through the slot in the Bottom Deck from the top and secure it with the return guide holder tab as shown on the bottom. See the last two images above.
Step 6: Assemble Your Digi-Comp II
A few final preparations:
- Press a 7.25 mm steel ball into each of the Flip Flop With Display Accumulator Register pieces.
- Press a 7.25 mm steel ball into each of the Flip Flop No Display Bottom pieces.
- Add the Start Switch Pieces to the Start Switch as in picture two above.
You should now have everything in place to assemble your Digi-Comp II. You can mostly just follow the Parts List and Assembly Instructions from the original unit which you will find above. Any differences from these steps will be listed below.
Step 4 Changes
Paragraph 4: The way that I built the frame does not allow the Release Balance to be installed directly onto the Release Wheel shaft as per the original instructions. Instead I have designed a Release Wheel Lever that attaches to the Release Wheel's shaft. A slightly redesigned Release Balance is attached to another new part, the Release Balance Holder, which is glued to the underside of the Top Deck (with center about 59 mm from the inside right edge of the frame and 74 mm from the inside top edge of the frame.). The Release Balance is held in place with a piece of wire or pin pushed through a hole in the Release Balance Holder shaft. The Release Wheel Lever is then connected to the Release Balance with a Release Lever Joiner part. The Actuator Wire is connected to the Release Balance in the same way as the instructions state. It sounds complicated but is actually pretty straight forward and works pretty well. See the first picture above.
Step 5 Changes
Skip this section. The Return Guide will be installed when the Bottom Deck has been attached.
Step 6 Changes
Skip this section. It's for an older version of Digi-Comp II.
Step 7 Changes
I used an extra nut (not too tight) to loosely hold the Spacers onto the Top Deck. This makes it much easier to slip on the Bottom Deck. So to be clear Spacer, nut, Lower Deck and then another nut. Skip the last part about the Return Guide for now.
Step 8 Changes
Rather than make a hook for the Start Switch side of the Actuator Wire, I just pushed the straight wire up through the small hole in the Start Switch. Then I put a small bend in the wire to keep it in place. See the third picture above.
Step 9 Changes
Ignore this section. Instead install the two Leg Holders onto the inside of the frame with wood screws. The distance between the top edge of the holder and the inside top edge of the frame should be about 40 mm. Be sure that hole in the holder slopes down towards the bottom of the base. See picture four above.
Step 10 Changes
Cut two 330 mm lengths from the 3/8 inch dowel for legs. Connect the two Foot Balls to the Foot Sockets the attach them to the dowel pieces you just cut. Attach the legs to the Leg Holders that you screwed to the frame as in image five.
Step 11 Changes
Before you start this section you should now be able to slide the Return Guide through the return slot on the Top Deck down and under the flap of the return guide holder attached to the Bottom deck. The front edge of the Return Guide should sit on the bottom edge of the return slot. See picture six. You can use a little two sided tape to secure the Return Guide to the front edge if you want.
Step 7: Finishing Touches
If you are going for the "authentic" look you can add the Top Deck labels. Use the pictures above for guidance and carefully cut the labels out of the printed Labels "sheet" and glue them to the appropriate spots on the deck. You can also add the New Operations Check List and command summary. I printed the attached Word document on a transparency sheet, cut it out, and glued it to the deck.
I used some blue enamel model paint to highlight the Digi-Comp II label on the Top Deck. I think it looks great.
Step 8: Fine Tuning
Probably because my home made springs are not as uniform as the ones that came with the original Digi-Comp II I found that I had to tweak them a bit to get things to work properly. Let's call the side of the spring that goes through the hole in the pieces and holds them in place the "pivot", and the other side the "stopper". If the stopper is too close to the pivot, the piece will not be able to twist to the left or right as far as it needs in order to operate properly. On the other hand if they are too far apart the stopper will rub against the front flat part of the bearing hole preventing free and easy movement of the part. (As an aside this is actually a desirable characteristic for all of the switches except the T-1 to T-6 Accumulator Mode switches so I have them "tuned" this way accordingly.) With a little practice though you will be able to adjust the springs to the proper "Goldilocks Zone" .
Another tip, you should also make sure that Digi-Comp II is placed on a level surface. It's quite susceptible to uneven surfaces.
Step 9: Final Thoughts
When I was a kid I got a Digi-Comp I for Christmas. Now I'm not saying that it was the only reason I went into computer programming as a career but it was certainly one of them. That original device was lost to the ravages of time, but thanks to Mark Ziemer I now have an almost perfect replica. I have wanted to own a Digi-Comp II for some time now. Mark inspired me to take matters into my own hands and I have to tell you that building my own Digi-Comp II was very very satisfying.
Step 10: Updates
March 2, 2019
Uploaded a replacement for the accumulator flip flop that does not require a steel ball:
DCII Flip Flop With Display Accumulator Register No Ball.stl
Second Prize in the