I'm trying to configure a Maxon ECX BLDC motor. During the configuration step where they ask you to choose the step count for the incremental encoder there's this "information on resolution" note box that says to follow this basic rule: "As high resolution as necessary"

enter image description here

Given that the price for the sensor is the same for different step counts, why do they say this?

  • Wouldn't higher step count always be better since it provides better resolution (degrees/step) thereby allowing for finer position/speed/force control?
  • What are the disadvantages of having way higher encoder resolution than is needed?
  • \$\begingroup\$ Well, resolution requirement depends on application. Take the ruler for example, my ruler for metal work projects has as many as 64 divisions an inch, But my grandmother doing needle work needs only 8 divisions an inch. I am happy that my hobbyist BLDC motor encoder has only 6 Hall sensors or 6 A/B signals per revolution. \$\endgroup\$
    – tlfong01
    Commented Aug 27, 2020 at 2:40

2 Answers 2


Not if you are doing 6 step commutation. The extra transitions do nothing in that case since it has no use for the extra transitions.

Not to mention more pulses limits the maximum speed since the controller has a maximum rate at which encoder pulses can be handled. A 32,000 pulse encoder on a 10,000RPM motor is a 5MHz pulse train. You don't want to send that down a long wire if you don't have to and it's less noise tolerant because you can't filter the edges since they need to be fast for such high frequency pulse train.

Measuring speed by measuring time between encoder counts is also more finicky for the same number of encoder counts when your resolution is higher. Just because very small perturbations in speed are picked up and extrapolated for the entire revolution. Of course, you can measure the time between more ticks when your resolution is higher to get around this.

Also, price can certainly be more for higher resolution. Optical encoders which actually need a more intricate disc when the resolution is higher definitely cost more. A disc with only 16 slots in it is a lot easier to make than one with a few thousand.


At high resolution, the pulse frequency can become to high for controller to be able to count it. Next important thing is related to your applicaion: the working positioning interval would shrink with higher resoltution, because the counter has a limited size, i.e. 32-bit or 64-bit. This number is converted to float with single or double precision, which also has finite precision (mantissa).

It depends also on the manufacturer, how this counter value (unsigned integer) is converted to float. I have done some experiments with Siemens S7-1200 which has uses a single precision for positioning. From my calculation the position value should quickly start to loose precision, but it was shown that the position was preserved. It would mean that position increment is calculated like in small buckets and added/subtracted only when certain amount is reached with regard to actual size of the float number, or....

Defintely the positioning range becomes an issue when using high res encoder.

  • 1
    \$\begingroup\$ appart from upvoting for the good content, using floating point is a measure of last resort. Applications like precise positioning should be done in fixpoint. It will be faster and more precise. Floating point might look promising at first but if you handle all the corner cases, your code explodes and you still lose precision. \$\endgroup\$
    – schnedan
    Commented Aug 27, 2020 at 10:54
  • \$\begingroup\$ @schnedan I do fully agree with you, but I am more familiar with PLC plug&play solution, so I can't change the principles. However I am not confident to those float numbers, because it is not documented when or why it will start to skip position. If I would do my own device, I would use fixed point arithmetic, \$\endgroup\$ Commented Aug 27, 2020 at 11:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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