A motorized lacing system, comprising: a motor, including a motor shaft; a processor circuit; an optical encoder (210, 300, 500), comprising: a three-dimensional encoder (400, 700) defining a major axis and having a surface having a first plurality of segments (310, 406) positioned between a second plurality of segments (312, 408), the first plurality of segments having a different light reflecting characteristic than the second plurality of segments, the three-dimensional encoder secured to the motor shaft such that the turning of the motor shaft causes the three-dimensional encoder to rotate about the major axis; and an optical sensor (314, 502), positioned within optical range of the three-dimensional encoder, configured to output a signal to the processor circuit indicative of a detected one of the first and second plurality of segments; wherein the processor circuit is configured to operate the motor based, at least in part, on the signal as received from the optical sensor; and a printed circuit board on which the processor circuit and the optical sensor are positioned, wherein the optical sensor comprises a first optical sensor on a first major surface of the printed circuit board and a second optical sensor on a second major surface of the printed circuit board on an opposite side of the first major surface. a motor, including a motor shaft; a processor circuit; an optical encoder (210, 300, 500), comprising: a three-dimensional encoder (400, 700) defining a major axis and having a surface having a first plurality of segments (310, 406) positioned between a second plurality of segments (312, 408), the first plurality of segments having a different light reflecting characteristic than the second plurality of segments, the three-dimensional encoder secured to the motor shaft such that the turning of the motor shaft causes the three-dimensional encoder to rotate about the major axis; and an optical sensor (314, 502), positioned within optical range of the three-dimensional encoder, configured to output a signal to the processor circuit indicative of a detected one of the first and second plurality of segments; a three-dimensional encoder (400, 700) defining a major axis and having a surface having a first plurality of segments (310, 406) positioned between a second plurality of segments (312, 408), the first plurality of segments having a different light reflecting characteristic than the second plurality of segments, the three-dimensional encoder secured to the motor shaft such that the turning of the motor shaft causes the three-dimensional encoder to rotate about the major axis; and an optical sensor (314, 502), positioned within optical range of the three-dimensional encoder, configured to output a signal to the processor circuit indicative of a detected one of the first and second plurality of segments; wherein the processor circuit is configured to operate the motor based, at least in part, on the signal as received from the optical sensor; and a printed circuit board on which the processor circuit and the optical sensor are positioned, wherein the optical sensor comprises a first optical sensor on a first major surface of the printed circuit board and a second optical sensor on a second major surface of the printed circuit board on an opposite side of the first major surface.