Introduction: Mostly 3D Printed Rotary Switch

About: A retired software developer, living in Waterloo, Ontario, Canada, who appreciates having the time to make whatever the heck he damn well feels like!

I am currently working on a replica of the Minivac 601, an electro-mechanical computer from 1961 (see the Wikipedia entry for details). For this project I require a rotary switch with the following characteristics:

  • 1P16T
  • Continuous Rotation
  • Non-Shorting
  • Panel Mount
  • Motorized

This last requirement is the kicker. Without having to drive the switch via a motor, a fair number of parts meet the remaining criteria. However I was unable to see how any of them could be easily motorized. Some are physically too small, and most require a fair amount of torque to switch between positions.

So I came up with the following 3D printable design that uses reed switches and magnets.

Step 1: Print the Parts

I printed the parts with the following settings:

Print Resolution: .2 mm

Infill: 20%

Filament: AMZ3D PLA

Notes: No supports

To make the basic rotary switch you need the following parts:

  • RS Body
  • RS Knob (optional)
  • RS Magnet Mount
  • RS Rotor Gasket (optional)
  • RS Rotor

Step 2: Obtain the Other Hardware

In addition to the printed parts you will need the following:

  • 16 Reed Switches - Digi-Key part number 2010-1087-ND
  • 18 Disk Magnets - 6 mm (diameter) x 3 mm (height)

Step 3: Add the Reed Switches to the Body

    Start by inserting the reed switches into the slots around the RS Body. The pins for the switches should pass easily through the holes from the inside to the outside of the body, and can be carefully bent from the outside to keep the switch in place. I tried cheaper glass encased reed switches for my first prototype and found them to be inconsistent when operating the switch

    Step 4: Populate the Magnet Mount

    Insert 16 disk magnets into the RS Magnet Mount. Be sure that the polarity of all 16 magnets is the same. You can use a bit of glue to hold them in if they don't grab sufficiently on their own. They should be flush with the top of the RS Magnet Mount when inserted.

    Step 5: Add the Rotor Magnets

    Insert the 2 remaining disk magnets into the RS Rotor. It's very important that the polarity of the magnet that will be on the bottom of the RS Rotor disk is the opposite of the polarity of the magnets secured in the RS Magnet Mount. In other words they should attract! Note that in the picture above the RS Rotor is upside down to show both the reed actuator magnet on the side of the disk and the one that will "lock" the rotor into one of sixteen positions.

    Step 6: Install the Magnet Mount in the Body

    Carefully slide the RS Magnet Mount to the bottom of the RS Body making sure that the small tab on the edge of the RS Magnet Mount is inserted into a grove on the inside bottom of the RS Body (below a reed switch) first and that the magnets are facing up. This will ensure the the magnets are lined up properly with the switches.

    Step 7: Add the Rotor Gasket

    Add the RS Rotor Gasket into the RS Body now. I think that it helps the switch rotate more easily.

    Step 8: Add the Knob

    For testing purposes you can temporarily attach the RS Knob centered onto the RS Rotor with two sided tape. Note that the point on the knob should align with the magnet on the side of the RS Rotor.

    Step 9: Insert the Rotor Into the Body

    Carefully slide the RS Rotor into the RS Body. The magnet on the RS Rotor disk should be facing down. As you slowly turn the knob you should be able to feel the switch snap to the 16 magnetic "detents". There is even a satisfying click as the magnets come together.

    Step 10: Testing

    Connect a multimeter to the leads of each reed switch. When the arrow is pointing at the connected reed switch the multimeter should indicate that the circuit is closed. Conversely if not pointed at the connected reed switch it should show an open circuit.

    Step 11: Final Thoughts

    So the switch is now ready for the next part of my Minivac 601 project. I'll be running a 4 mm shaft through the RS Rotor. One end of the shaft will come up from the bottom of the Decimal Input-Output panel seen above and be attached to the RS Knob for manual input. The other end will be attached to a low speed high torque motor via a couple of gears for automatic manipulation.

    I'd be very surprised if anyone actually needed a rotary switch exactly like the one I have described here (unless of course they end up building a Minivac 601). I do hope however that the ideas outlined here will be generally useful for anyone with a similar need.

    Step 12: Updates

    May 18, 2019

    As can be seen in the pictures above, the rotary switch has been added to the Decimal Input-Output panel for manual mode only. The motor to automatically drive the rotor is yet to be installed which is why the shaft is sticking up (down?) so far. I have posted new RS Rotor and RS Knob STL files that have a set screw incorporated (I used 3mm x 8mm screws) to attach them to the shaft (which is just a 1/8 inch welding rod):

    • RS Knob With Set Screw.stl
    • RS Rotor With Set Screw.stl

    It works great! I'm very happy with the result. More to come.