I need an absolute rotary encoder to monitor the position of a 2 inch shaft.

  • I have access to the end of the shaft
  • Hunting for a starting position may be very difficult, as the machine is very heavy and can't be moved by hand - this may mean I need a absolute encoder.
  • I would like to monitor the shaft position with a fairly high amount of precision - perhaps within 5° rotary position.

I am looking for a fairly inexpensive solution that can connect to an Arduino or LabJack micro-controller. There are several products on Mauser similar to this one:

enter image description here

These are all meant to be mounted on much smaller sized motors/shafts, however. There are several incremental rotary encoders for larger sized shafts (up to 5/8"), but I imagine finding the exact shaft position may be difficult with these incremental encoders. I don't know how practical it will be to use such a small sized product with a 2" shaft - I can have the end of the shaft cut down to a smaller size.

There is also a selection of more expensive products such as this one, which are absolute encoders:

enter image description here

Should I just find a way to mount the small-sized encoder on my big 2" shaft? I don't necessarily need a pass through encoder; the encoder can also be mounted on the end of the shaft. If necessary I will have to go for the expensive larger sized pass-through device.

  • \$\begingroup\$ (Reluctantly) voting to close because this question asks for a specific product recommendation, which is against group guidelines. FWIW, I feel your pain. Hollow-shaft encoders tend to be inexpensive if you're in a world where you're building $50000 (or more) machines, not if you're tossing something together with Arduinos. \$\endgroup\$
    – TimWescott
    Mar 26 at 23:17
  • 2
    \$\begingroup\$ Since you have a processor in the mix -- do you need an absolute encoder? If you can rotate the shaft on start-up, then you can use a relative encoder and a precise index. Asking "what's an inexpensive approach to finding a shaft's position" may be a better place to start given the community guidelines against product recommendations. If you do edit your question so it's within guidelines, be sure to tell us how large the shaft is, whether you can seek an index, if you have access to the end of the shaft at all, and -- most importantly -- what sort of precision you really need. \$\endgroup\$
    – TimWescott
    Mar 26 at 23:19
  • \$\begingroup\$ Thanks for the pointers, I will edit my post! \$\endgroup\$ Mar 26 at 23:39
  • 2
    \$\begingroup\$ Please include the resolution and accuracy required in the body of your question. have access to the end of [a 2 inch] shaft invites to print a more elaborate version of rotary encoder on an adhesive label. \$\endgroup\$
    – greybeard
    Mar 27 at 1:39
  • 2
    \$\begingroup\$ This may or may not be a stupid position, but couldn't you have a small reduction gear train on the end of the shaft that you have access to (say, 4 to 1) and then use the cheap sensor to read out the angle mod 4, and then persistently store the quadrant you're in? Depending on tolerances this might increase absolute accuracy too. \$\endgroup\$
    – Landak
    Mar 27 at 9:37

2 Answers 2


2" shaft encoders of any kind are expensive just because the applications that involve them tend to involve more forces and so the encoders are just built in much heavier casings if anything else.

Even our CNC mill which only cost $35k (below the $50k mentioned by Tim) uses incremental encoders on the leadscrews. On power up it slowly moves to index the encoder and uses limit switches past the maximum working range of travel to tell it that it has gone too far, before it reaches the mechanical stops.

Look at magnetic encoders ICs rather than turning down the end of the or using a coupler to accommodate an encoder that supports a smaller shaft diameter. You can get magnetic encoder ICs that operate with an external magnet. Then you get a diametrically polarized magnet and stick it on the end of the shaft. Then you don't need to turn down anything and magnetic encoders inherently provide absolute positioning.

  • 3
    \$\begingroup\$ Indeed, magnetic encoders work fine down to about +-1° accuracy. One thing of note is that sticking a diametric magnet directly on the end of a steel shaft short-circuits the magnetic field, so for best performance it needs some kind of plastic/aluminum/brass holder for the magnet. \$\endgroup\$
    – jpa
    Mar 27 at 8:27
  • 1
    \$\begingroup\$ @user253751 This is what "using a coupler to accommodate an encoder that supports a smaller shaft diameter" means. \$\endgroup\$
    – DKNguyen
    Mar 27 at 14:24

Just a quick note to say that you can quite easily couple one shaft onto another with a rotary collar. Your 2" shaft is designed for transmitting high torques and so anything to do with it is quite expensive. Depending on space requirements, you may find that a person with a lathe can make a friction fit + set screw coupler from a 2" hole to a much smaller post, suitable for mounting into a smaller, cheaper, absolute rotary encoder (like your 5/8" ones mentioned above). The whole thing could be suspended from the end of the shaft. Alternatively, you could use a reduction gearbox but again anything at that size is expensive because it is built, frankly, to take abuse.

McMaster Carr sell items that give you an idea of what I am talking about, but honestly a competent machinist will be able to make this for you very, very quickly – you're lucky in that you don't need it to deal with any load whatsoever.

A brief visual illustration is this – just imagine a smaller rod sticking out the other end, connected to a cheaper absolute encoder:

set screw coupler


Not the answer you're looking for? Browse other questions tagged or ask your own question.