Mostly 3D Printed Binary Encoder

What a really neat project.

via megardi on instructables

An encoder converts information from one format or code to another. The device presented in this Instructable will convert the decimal numbers 0 through 9 into their binary equivalents. However, the concepts presented here can be used to create encoders for any reasonable number of items and codes (say 20 or less). Aside from a few easily obtained microswitches and screws, all of the parts for this mostly mechanical machine can be 3D printed.

Read more.